Error codes
REST API (error.type)
| HTTP | type | Meaning / fix |
|---|---|---|
| 400 | key_in_query | Send the key in the Authorization header, not the URL. |
| 400 | invalid_json | Body must be a JSON object. |
| 401 | authentication_required | Missing Authorization: Bearer sk_…. |
| 401 | invalid_api_key | Key is wrong, expired or revoked. |
| 401 | publishable_key_not_allowed | Use a secret key for the API. |
| 403 | insufficient_scope | The key lacks the scope for this endpoint. |
| 403 | application_inactive / developer_suspended | Enable the app, or contact support. |
| 404 | not_found | Unknown or unavailable resource. |
| 409 | game_not_integrated | Add the game to the application first. |
| 422 | invalid_player_id, invalid_url, invalid_events | Validation failed — see message. |
| 429 | rate_limited | Slow down; honour Retry-After. |
| 503 | platform_unavailable | Temporary maintenance. |
Embeds & SDK (error event data.code)
| code | Player sees | Fix |
|---|---|---|
insufficient_credits | "Temporarily unavailable" | Buy credits. |
domain_not_allowed | "Not enabled for this website" | Add the site's domain to the application. |
not_live | "Coming soon to this site" | Press Go live, or use the test key. |
invalid_key | "Not configured correctly" | Check the key in your embed code. |
game_unavailable / game_not_integrated | "Not available right now" | Integrate the game, or pick another. |
application_unavailable | "Currently unavailable" | Application disabled/suspended. |
embed_only | "Only on the partner's website" | Live embeds can't be opened directly. |
rate_limited, sandbox_limit | "Try again later" | Too many sessions from one network / test limit reached. |
launch_expired, launch_used, session_expired | "Reload the page" | Links and sessions expire; reloading issues new ones. |
plan_required | "Not available right now" | Game needs a higher developer plan. |