Developers · Errors
Error catalog
Every error the Asyrx API can return, with its HTTP status, meaning and the action a developer should take.
Read this first
No error implies allow or block
An error means Asyrx could not produce (or could not fully complete) a risk opinion — it is never itself an authorization signal in either direction. A rejected or failed request means your action was neither approved nor blocked by Asyrx; your own systems and people remain responsible for what happens next.
| Code | Status | Meaning | Suggested action |
|---|---|---|---|
MISSING_API_KEY No credential supplied | 401 | The request did not include an Asyrx API key. | Send `Authorization: Bearer asyrx_live_…` (or `asyrx_test_…`). |
INVALID_API_KEY Credential rejected | 401 | The key is unknown, revoked or expired. | Create a replacement key in the workspace and retry. Keys can be rotated without downtime. |
INSUFFICIENT_SCOPE Scope not granted | 403 | The key is valid but does not carry the scope required for this endpoint. | Grant the required scope (for example `actions:assess`) to the key. |
SANDBOX_EXPIRED Sandbox period ended | 403 | The evaluation sandbox for this organization has expired or reached its assessment limit. | Contact Asyrx to extend the sandbox or convert to a pilot. |
MALFORMED_JSON Body is not valid JSON | 400 | The request body could not be parsed. | Send a JSON object with `content-type: application/json`. |
PAYLOAD_TOO_LARGE Payload exceeds limits | 413 | The request body or its nesting depth exceeded the accepted limits. | Keep the action payload under 64 KB and metadata under 8 levels of nesting. |
VALIDATION_FAILED Field validation failed | 422 | One or more fields were missing or invalid. | Inspect `error.details` for the offending field path and correct the value. |
INVALID_ENVIRONMENT Unknown environment | 422 | `environment` must be production, staging, sandbox or development. | Send a supported environment value. |
IDEMPOTENCY_KEY_REUSED Idempotency key reused with a different payload | 409 | The key was already used for a different request body in this organization. | Use a new idempotency key for a new action, or resend the identical payload. |
RATE_LIMITED Request rate limit exceeded Retryable | 429 | The key or organization exceeded its configured request rate. | Back off and retry after the interval in `retry_after_seconds`. |
ASSESSMENT_INCOMPLETE Assessment returned with reduced context Retryable | 200 | Asyrx produced an assessment but could not complete every context layer within the request budget. `assessment_status` is `incomplete` and confidence is reduced. | Treat as decision-support with lower confidence; human review is recommended by default. |
ASSESSMENT_UNAVAILABLE Assessment could not be produced Retryable | 503 | A dependency was unavailable. Asyrx returns no risk opinion. This is not an authorization signal in either direction. | Retry with the same idempotency key. Your action was neither approved nor blocked by Asyrx. |
NOT_FOUND Resource not found | 404 | The assessment or action does not exist in this organization. | Verify the identifier and that the key belongs to the owning organization. |
METHOD_NOT_ALLOWED Method not supported | 405 | The endpoint does not accept this HTTP method. | See the endpoint reference for the supported method. |
Link directly to a row with /developers/errors#code, for example #rate_limited.
