Descriptions are in English
Errors and the response diagnostician
Paste an API response and get the breakdown: what happened, why, what to do right now and which request to send next. Below is the whole catalogue: 7 HTTP codes and 16 machine reason codes.
Diagnose a response
Everything happens inside your tab: the body is never sent anywhere and never reaches the address bar. A truncated paste works too — both JSON and a chunk of an HTTP dump are recognised.
The whole body or a fragment of it. The line with reason is enough.
Nothing to diagnose yet. Paste a response body or enter an HTTP code — matching catalogue pages appear here right away, with nothing sent to the server.
Five sources of 429
Five independent mechanisms answer with 429, and each one is cured differently. They can be told apart from the response alone: is there a reason in the body and did a Retry-After header arrive. Three of the five bodies are byte-for-byte identical.
HTTP codes
Seven codes the public surface answers with. There are no 5xx pages here on purpose: 500 and 503 are not about the client — they are cured by a retry, not by reading documentation.
Machine reason codes
Branch on reason, never on message: wordings change without notice and are not an error code. The codes are grouped by the HTTP code they arrive with.
- 429token_quota_exceededtoken_quota_exceeded — key token quota exhausted
- 429limit_exceededlimit_exceeded — subscription usage limit exceeded
- 429concurrency_limit_exceededconcurrency_limit_exceeded — concurrent task slots are full
- 429policy_cooldown_activepolicy_cooldown_active — cooldown after policy blocks
Feed this page to an AI
spec 0.0.1