CTY Auth Docs Get an API key

API Reference


Errors

Every refusal, what it means and how to recover from it.

A failed call answers with an HTTP status and a body carrying error, a stable machine-readable code, and message, a sentence meant for a human reading your logs. Branch on error, never on the wording.

The shape of a failure

JSON
{
    "error": "license_unknown",
    "message": "No license with that key."
}

Read a refusal

Paste a response body your integration got back and we will point at the row that explains it.

Every code

CodeHTTPWhat it means
missing_credentials 401 No key or secret on the request. Check both headers are actually being sent.
bad_credentials 401 The pair does not match a token, or the token was revoked. Create a new one in the panel.
seller_inactive 403 The workspace is suspended or its plan has lapsed. Nothing will work until it is active again.
token_scope 403 A token locked to one application tried a workspace-wide endpoint. Use a workspace token.
not_allowed 403 The action is refused, for example issuing keys on an application that is switched off.
plan_limit 402 The plan has no room left. The body names the limit, what it allows and what is used.
application_unknown 404 No application with that id in this workspace.
license_unknown 404 No key with that string, or it belongs to an application this token cannot see.
member_unknown 404 No member with that id.
ban_unknown 404 No ban with that id.
ban_exists 409 That value is already banned. Read the list to find the existing entry.
bans_unavailable 409 The panel has not run the database update that bans need yet.
member_is_staff 422 Owners and partners hold no balance, so credit cannot move on them.
member_is_developer 422 Developers issue keys for free and hold no balance, so credit cannot move on them.
license_not_movable 422 Lifetime keys, keys never used, and durations the application does not price cannot take a time change.
validation_failed 422 The body is malformed. The response lists the offending fields under errors.