Skip to main content

Error Format

Most error responses return a JSON object like:

Rate Limit Headers

All endpoints protected by the rate limiter return these headers: If you hit the limit (429), you also receive:

Common Error Responses

400 — Bad Request

Used for syntactically valid requests with invalid parameters.

401 — Unauthorized

Missing or invalid apiKey.

403 — Forbidden

Valid API key, but no access to this channel or feature.

422 — Validation Error

Usually returned by FastAPI’s internal validation.

429 — Rate Limit Exceeded

Triggered when request volume exceeds limits per apiKey.
Headers:
  • Retry-After: 1
  • X-RateLimit-Limit: 30
  • X-RateLimit-Remaining: 0
  • X-RateLimit-Reset: 1700000000

503 — Service Unavailable

If internal systems (e.g. rate limiter) are unavailable:

Notes

  • code is stable and suitable for programmatic handling.
  • message may change (but is designed to help developers).
  • Most endpoints return 429 if rate-limited — check your headers.
  • FastAPI validation errors are always returned as 422.