Skip to main content
Every error returns the same JSON envelope; status mirrors the HTTP status. Switch on code, not message (message text may change).
Error envelope
Errors don’t consume credits — only successful (2xx) responses deduct.

Error codes

Rate limits and retries

429 responses carry a Retry-After header (seconds) — wait that long before retrying. See Pricing page for per-plan rates and allowances.
Retry only 429 (respect Retry-After) and 500. Other 4xx (400/401/403/404) just fail again until you fix the input, key, plan, or resource.