- Resource errors (validation and not-found errors raised inside an endpoint) return a nested object:
{ "error": { "code", "message" } }. Use thecodefor programmatic handling. - Gateway errors raised before an endpoint runs return a flat object:
{ "error", "message" }. This includes401,429, and an authentication-layer500. Hereerroris a status label, not a machine-readable code.
HTTP status codes
Error response formats
Resource errors (nested)
Validation and not-found errors raised inside an endpoint return a structurederror object:
object
Gateway errors (flat)
Gateway responses use a flat shape.error is a status label, not a code:
string
Short status label (e.g.
Unauthorized, Too Many Requests).string
Human-readable description of the failure.
limit ("burst" or "daily") and retryAfter (seconds).
Error code reference
Authorization
Authentication
401 responses are flat and do not contain these resource codes.
Not found
Bad request
Rate limiting
Gateway429 responses are flat. Use the HTTP status, limit, retryAfter, and Retry-After header instead of expecting a nested error code.
Server errors
Common errors
Authentication errors (401)
Authentication failures use the flat shape:Bearer prefix, token status, team status, and active plan.
Permission errors (403)
Not-found errors (404)
Rate-limit errors (429)
Rate-limit responses use the flat shape and addlimit and retryAfter:
limit is "burst" (per-minute) or "daily".
Honor the Retry-After header before retrying. See Rate limits.
Server errors (500)
Handle errors
JavaScript/TypeScript example
Python example
Get help
If you encounter persistent errors or unexpected behavior, contact us at team@qwairy.co with:- The endpoint you’re calling
- The full error response
- Your request headers (without the token)
- The timestamp of the request

