Skip to content

License ​

Panel license status.

4 endpoints

GET /api/license ​

Get License

Read the panel's license state: status, days left, limits and usage.

Any admin

Response 200 Successful Response · LicenseState

Response fields
FieldTypeDescription
statusstring
lockedboolean
customerstring
expiresinteger
activatedinteger
days_leftinteger
grace_untilinteger
limitsobject
usageobject
messagestring
message_atinteger
keystring
install_idstring
last_checkinteger
last_attemptinteger
last_errorstring
has_keyboolean
json
{
  "status": "string",
  "locked": false,
  "customer": "",
  "expires": 0,
  "activated": 0,
  "days_left": 0,
  "grace_until": 0,
  "limits": {},
  "usage": {},
  "message": "",
  "message_at": 0,
  "key": "string",
  "install_id": "string",
  "last_check": 0,
  "last_attempt": 0,
  "last_error": "string",
  "has_key": false
}

Errors: 401 Unauthorized

bash
curl -X GET 'https://YOUR-PANEL/api/license' \
  -H 'Authorization: Bearer $TOKEN'

POST /api/license/activate ​

Activate

bind a license key to this server (an empty key: the one saved here again)

Sudo admin only

Request body application/json · ActivateBody

FieldTypeRequiredDescription
keystringno
json
{
  "key": ""
}

Response 200 Successful Response · LicenseState

Response fields
FieldTypeDescription
statusstring
lockedboolean
customerstring
expiresinteger
activatedinteger
days_leftinteger
grace_untilinteger
limitsobject
usageobject
messagestring
message_atinteger
keystring
install_idstring
last_checkinteger
last_attemptinteger
last_errorstring
has_keyboolean
json
{
  "status": "string",
  "locked": false,
  "customer": "",
  "expires": 0,
  "activated": 0,
  "days_left": 0,
  "grace_until": 0,
  "limits": {},
  "usage": {},
  "message": "",
  "message_at": 0,
  "key": "string",
  "install_id": "string",
  "last_check": 0,
  "last_attempt": 0,
  "last_error": "string",
  "has_key": false
}

Errors: 401 Unauthorized

bash
curl -X POST 'https://YOUR-PANEL/api/license/activate' \
  -H 'Authorization: Bearer $TOKEN' \
  -H 'Content-Type: application/json' \
  -d '{"key": ""}'

POST /api/license/check ​

Check Now

ask the license server now (after a renewal, a change of limits)

Sudo admin only

Response 200 Successful Response · LicenseState

Response fields
FieldTypeDescription
statusstring
lockedboolean
customerstring
expiresinteger
activatedinteger
days_leftinteger
grace_untilinteger
limitsobject
usageobject
messagestring
message_atinteger
keystring
install_idstring
last_checkinteger
last_attemptinteger
last_errorstring
has_keyboolean
json
{
  "status": "string",
  "locked": false,
  "customer": "",
  "expires": 0,
  "activated": 0,
  "days_left": 0,
  "grace_until": 0,
  "limits": {},
  "usage": {},
  "message": "",
  "message_at": 0,
  "key": "string",
  "install_id": "string",
  "last_check": 0,
  "last_attempt": 0,
  "last_error": "string",
  "has_key": false
}

Errors: 401 Unauthorized

bash
curl -X POST 'https://YOUR-PANEL/api/license/check' \
  -H 'Authorization: Bearer $TOKEN'

POST /api/license/dismiss-message ​

Dismiss Message

any admin can dismiss the seller's message once they've read it

Any admin

Response 200 Successful Response

Errors: 401 Unauthorized

bash
curl -X POST 'https://YOUR-PANEL/api/license/dismiss-message' \
  -H 'Authorization: Bearer $TOKEN'

Alexen v2.3.14 · 204 API endpoints