Overview›Responses & Errors
routing.run returns standard HTTP status codes and a consistent JSON envelope for non-streaming errors. The numeric code matches the HTTP status; the uppercase type is the stable machine-readable category.
Non-streaming HTTP errors return a JSON body with this shape:
{ "error": { "message": "Human-readable error description", "code": 400, "type": "BAD_REQUEST", "details": {} }}The API returns 429 when an account, API key, concurrency, or upstream capacity limit is reached. Implement exponential backoff with jitter in your client.
Check the Retry-After header for the recommended wait time before retrying.