Developers
Errors
Every error response is RFC 7807 problem-details. The same fields apply to every endpoint and every SDK.
Format
problem-details
{
"type": "https://errors.mnemos.ai/permission_denied",
"title": "Permission denied",
"status": 403,
"detail": "API key is missing the 'sops:write' scope.",
"instance": "req_01HZX..."
}The type is a stable URL — never i18n it, never parse title for branching. The instance is the request id; include it in any support ticket.
Error codes
| Status | Type | Meaning |
|---|---|---|
| 400 | invalid_request | Invalid request Body or query failed schema validation. |
| 401 | missing_credentials | Missing credentials No bearer token was supplied. |
| 401 | invalid_credentials | Invalid credentials Token is unknown or revoked. |
| 403 | permission_denied | Permission denied Token is valid but lacks the necessary scope or role. |
| 403 | ip_not_allowed | IP not allowed Source address is outside the key's CIDR allowlist. |
| 404 | not_found | Not found The resource does not exist or is invisible to the caller. |
| 409 | conflict | Conflict The request conflicts with the resource's current state. |
| 410 | gone | Gone The resource has been permanently removed (e.g. deleted workspace). |
| 412 | precondition_failed | Precondition failed If-Match or version header didn't satisfy the current version. |
| 422 | unprocessable_entity | Unprocessable entity Schema-valid but semantically rejected (e.g. cyclic graph edit). |
| 429 | rate_limited | Rate limited Tier quota exceeded. See Rate limits for headers. |
| 451 | data_residency_violation | Data residency violation Operation would move data outside the workspace's region. |
| 500 | internal_error | Internal error Unexpected server failure. Retry with backoff. |
| 502 | upstream_unavailable | Upstream unavailable A backing service (LLM, integration) is unreachable. |
| 503 | service_unavailable | Service unavailable Planned or unplanned maintenance window. |
| 504 | timeout | Timeout Request exceeded the platform deadline. Safe to retry. |
Field-level errors
When validation fails on multiple fields, the response includes an errors array with one entry per field, each carrying a JSON pointer and a human-readable explanation.