Usage with JavaScript
Installation
The source code is available on and the package can be installed with :
npm install azuriom-auth
Example
import { AuthClient } from 'azuriom-auth'
async function login(email, password) {
const client = new AuthClient('https://rplands.royolands.com/ru-ru/home')
let result = await client.login(email, password)
if (result.status === 'pending' && result.requires2fa) {
const twoFactorCode = '' // IMPORTANT: Replace with the 2FA user temporary code
result = await client.login(email, password, twoFactorCode)
}
if (result.status !== 'success') {
throw 'Unexpected result: ' + JSON.stringify(result)
}
return result
}
Endpoints
Authentification
POST /authenticate
Authenticate a user with their website credentials
Request
Username or e-mail address
2FA code, should be included only if the response status
is pending
and the reason
is 2fa
Response
Returns the user with his various information, and the unique token which can be used to verify the connection or to disconnect.
{
"id": 1,
"username": "Username",
"uuid": "00000000-0000-0000-0000-000000000000",
"email_verified": true,
"money": 100.0,
"role": {
"name": "Member",
"color": "#e10d11"
},
"banned": false,
"created_at": "2020-06-29T17:39:12+00:00",
"access_token": "xxxxxxxx"
}
Verification
POST /verify
Request
Réponse
Returns the user with his various information, and the unique token which can be used to verify the connection or to disconnect.
Success response example (HTTP 2xx
):
{
"id": 1,
"username": "Username",
"uuid": "00000000-0000-0000-0000-000000000000",
"email_verified": true,
"money": 100.0,
"role": {
"name": "Member",
"color": "#e10d11"
},
"banned": false,
"created_at": "2020-06-29T17:39:12+00:00",
"access_token": "xxxxxxxx"
}
Error response example (HTTP 4xx
):
{
"status": "error",
"reason": "invalid_credentials",
"message": "Invalid credentials"
}
Logout
POST /logout
Logout the user and invalidates the access token.
Request
Response
Empty response, with 2xx
status code.