Appearance
Error Codes
Every rejected request returns a short machine-readable code alongside an HTTP status. Match on the code, not the human-readable message, since messages may change. The table lists every code the runtime and dashboard APIs can return.
- Codes fall into a few families: bad input (bad_input, invalid_architecture), auth and identity (unauthorized, invalid_service, invalid_runtime_key), license state (license_not_found, disabled, expired, device_mismatch), and delivery (ticket_expired, ticket_used, ticket_invalid, plus the Script Library token and artifact codes below).
- rate_limited means you exceeded the per-IP or per-plan request budget. Back off rather than retrying immediately.
- session_expired and ticket_expired are normal over time. Re-verify or request a fresh ticket instead of treating them as hard failures.
- Runtime guard errors point at delivery compatibility, not the license. Check that the deployed artifact matches the active service configuration.
| Code | Meaning |
|---|---|
| bad_input | The request contains missing, malformed, or unsupported input. |
| unauthorized | The request is missing the required authorization or the supplied credential is not valid. |
| not_logged_in | This dashboard action requires an active signed-in session. |
| invalid_service | The service ID is missing or does not identify an existing service. |
| service_disabled | The service exists but is currently disabled, so runtime requests are blocked. |
| service_archived | The service has been archived or deleted and is no longer available. |
| invalid_runtime_key | Legacy protocol-1 compatibility: the runtime key is missing or does not match the selected service. New v2 loaders and Script Library do not use it. |
| script_not_found | The requested script does not exist in the selected service. |
| script_required | The license is restricted to a script, but no script ID was supplied. |
| script_archived | The requested script has been archived or deleted and can no longer be delivered. |
| wrong_service | The license, runtime session, or ticket belongs to a different service. |
| wrong_script | The license, runtime session, or ticket does not authorize the requested script. |
| license_not_found | No license in the selected service matches the supplied customer key. |
| disabled | The customer license has been disabled or archived. |
| expired | The customer license has passed its expiration time. |
| device_mismatch | The license is already bound to a different device identifier. |
| rate_limited | The request limit was exceeded. Wait before retrying instead of sending requests in a loop. |
| session_expired | The runtime session is no longer valid. Verify the license again to create a new session. |
| ticket_expired | The single-use download ticket reached its expiration time. Request a new ticket. |
| ticket_used | The single-use download ticket has already been consumed. Request a new ticket. |
| ticket_invalid | The download ticket is missing, malformed, or unknown. |
| invalid_architecture | The requested obfuscation architecture is not supported. The current public value is v3. |
| account_required | This obfuscation action requires a signed-in FlareKey account. |
| obfuscator_unavailable | The obfuscation service is disabled or temporarily unavailable. |
| obfuscation_failed | FlareFuscator could not compile the submitted source. Check the returned message for the compiler detail. |
| history_expired | The saved obfuscation output passed its retention window and its code has been removed. |
| limit_exceeded | The request exceeds the applicable plan, architecture, source-size, or usage limit. |
| loader_runtime_key_missing | Legacy compatibility: a loader configured for the retired runtime-key path has no usable key. New session-bound v2 loaders and Script Library do not require it. |
| loader_not_configured | The loader does not point to an active protected script or custom loader source. |
| library_unavailable | Script Library delivery is disabled or temporarily unavailable. |
| invalid_script | The requested script is unavailable or is not enabled for Script Library delivery. |
| invalid_loader | The requested custom loader is missing, inactive, or not authorized for the selected script. |
| artifact_not_ready | The selected Library artifact is not ready for delivery. |
| artifact_retired | The build captured for the request is no longer current. Verify again. |
| artifact_invalid | The exact build or artifact no longer matches the authorization context. |
| token_invalid | A Library token or execution grant is malformed, mismatched, or used with an invalid request. |
| token_used | The one-use Library token or execution grant has already been consumed. |
| token_expired | The short-lived Library token or execution grant has expired. |
| license_invalid | The supplied customer license cannot authorize the Library request. |
| license_disabled | The customer license is disabled or archived. |
| license_expired | The customer license has expired. |
| blacklisted | The license or device is blocked by a blacklist policy. |
| discord_banned | The linked Discord identity is banned by the service policy. |
| discord_link_required | The service requires a linked Discord identity before delivery. |
| missing_device_id | The Library request did not include a device ID. |
| totp_unavailable | Optional Library TOTP is not configured or is unavailable for this service. |