Errors & codes

HTTP status codes

Status Meaning
200 Success
201 Resource created (add)
400 Validation error — fix the request body
401 Missing / invalid / revoked API key
403 Plan forbids this operation (e.g. free on API)
404 Resource not found
422 infer failed to parse input
429 Rate limit hit (writes only)
500 Server error — retry later
507 Memory storage cap reached

Envelope

{
  "data": null,
  "error": {
    "code": 429,
    "message": "Add rate limit (200/min). Reads are never limited."
  },
  "meta": { "request_id": "..." }
}

error may include extra fields for specific cases:

Case Extra fields
403 free upgrade_url
429 cap cap, used
507 store cap
403 susp plan_status

SDK exception mapping

Status Python / Node class
400 ValidationError
401 AuthError
403 PlanError
404 NotFoundError
429 RateLimitError
507 StorageCapError
other OraMemoryError

CLI exit codes

See am CLI → Exit codes.

Retrying

429 and 5xx are safe to retry with exponential back-off. 4xx (other than 429) won't succeed on retry — fix the request first.