curl "https://your-paneldns-domain.com/api/v1/licence-status" \
-H "Authorization: Bearer YOUR_TOKEN"
{
"ok": true,
"data": {
"format": 1,
"sub_status": "active",
"expires_at": null,
"current_plan": "business",
"modules_unlocked": ["whmcs-platform", "whmcs-reseller"],
"ttl_seconds": 300,
"requires_consent": false,
"consent_version_current": true,
"consent_version_accepted": "2026-04-01",
"consent_version_latest": "2026-04-01",
"consent_form_url": "https://your-paneldns-domain.com/consent"
}
}
{
"ok": true,
"data": {
"format": 1,
"sub_status": "free",
"expires_at": null,
"current_plan": "free",
"modules_unlocked": [],
"ttl_seconds": 300,
"requires_consent": true,
"consent_version_current": false,
"consent_version_accepted": null,
"consent_version_latest": "2026-04-01",
"consent_form_url": "https://your-paneldns-domain.com/consent"
}
}
Org
Licence Status
Returns the licence and plan status for your org. No scope required (any valid token).
GET
/
api
/
v1
/
licence-status
curl "https://your-paneldns-domain.com/api/v1/licence-status" \
-H "Authorization: Bearer YOUR_TOKEN"
{
"ok": true,
"data": {
"format": 1,
"sub_status": "active",
"expires_at": null,
"current_plan": "business",
"modules_unlocked": ["whmcs-platform", "whmcs-reseller"],
"ttl_seconds": 300,
"requires_consent": false,
"consent_version_current": true,
"consent_version_accepted": "2026-04-01",
"consent_version_latest": "2026-04-01",
"consent_form_url": "https://your-paneldns-domain.com/consent"
}
}
{
"ok": true,
"data": {
"format": 1,
"sub_status": "free",
"expires_at": null,
"current_plan": "free",
"modules_unlocked": [],
"ttl_seconds": 300,
"requires_consent": true,
"consent_version_current": false,
"consent_version_accepted": null,
"consent_version_latest": "2026-04-01",
"consent_form_url": "https://your-paneldns-domain.com/consent"
}
}
Returns whether your org’s licence is active and in good standing. Useful for integrations that need to gate access before making other API calls. The core fields are cached for 5 minutes server-side (
ttl_seconds); the requires_consent / consent_* fields are always computed fresh and never cached.
curl "https://your-paneldns-domain.com/api/v1/licence-status" \
-H "Authorization: Bearer YOUR_TOKEN"
{
"ok": true,
"data": {
"format": 1,
"sub_status": "active",
"expires_at": null,
"current_plan": "business",
"modules_unlocked": ["whmcs-platform", "whmcs-reseller"],
"ttl_seconds": 300,
"requires_consent": false,
"consent_version_current": true,
"consent_version_accepted": "2026-04-01",
"consent_version_latest": "2026-04-01",
"consent_form_url": "https://your-paneldns-domain.com/consent"
}
}
{
"ok": true,
"data": {
"format": 1,
"sub_status": "free",
"expires_at": null,
"current_plan": "free",
"modules_unlocked": [],
"ttl_seconds": 300,
"requires_consent": true,
"consent_version_current": false,
"consent_version_accepted": null,
"consent_version_latest": "2026-04-01",
"consent_form_url": "https://your-paneldns-domain.com/consent"
}
}
sub_status is one of free, trialing, active, past_due, cancelled. modules_unlocked is populated for active, trialing, and past_due (7-day grace, enforced by the WHMCS module, not this endpoint) — empty for free and cancelled.