API Reference
Register
Create a new user account by redeeming a license key. Returns a session and user data on success.
Endpoint
Parameters
| Field | Description | |
|---|---|---|
| session_id | Required | Active session from a successful Init call. |
| username | Required | Desired username for the new account. |
| password | Required | Desired password for the new account. |
| key | Required | A valid, unused license key (e.g. XXXXX-XXXXX-...). Consumed on successful registration. |
| Optional | Email address to associate with the account. | |
| sid / hwid | Optional | System identifier to bind the device immediately on registration. |
Example Request
{
"session_id": "dc1ce...a3a75",
"username": "xela",
"password": "hunter2",
"key": "XXXXX-XXXXX-XXXXX-XXXXX-XXXXX",
"email": "[email protected]",
"sid": "S-1-5-21-...."
}
Responses
Account created. Returns a new session and user details.
{
"success": true,
"message": "User registered successfully",
"session_id": "hex_string",
"user": {
"username": "xela",
"email": "[email protected]",
"subscription": "Premium",
"subscription_level": 1,
"expiry_date": "2025-12-31T23:59:59Z",
"sid": "S-1-5-21-....",
"hwid": "S-1-5-21-...."
}
}
MISSING_FIELDS — One or more required fields were not sent.
{
"success": false,
"code": "MISSING_FIELDS",
"message": "Required fields are missing"
}
Session check failed. Codes: INVALID_SESSION, SESSION_EXPIRED.
{
"success": false,
"code": "SESSION_EXPIRED",
"message": "Session has expired"
}
License blocked or not eligible. Codes: LICENSE_IN_USE, LICENSE_BANNED, LICENSE_PAUSED, LICENSE_EXPIRED.
{
"success": false,
"code": "LICENSE_IN_USE",
"message": "This license key is already in use"
}
LICENSE_NOT_FOUND — No matching license key found for this app.
{
"success": false,
"code": "LICENSE_NOT_FOUND",
"message": "License key not found"
}
USERNAME_TAKEN — That username is already registered.
{
"success": false,
"code": "USERNAME_TAKEN",
"message": "Username is already taken"
}
INTERNAL — Unexpected server-side error.
{
"success": false,
"code": "INTERNAL",
"message": "An internal server error occurred"
}