Decoding algorithm
Status codes
Stable error codes
These come from middleware and guards, and are safe to branch on.Codes you should not require
Some internal errors define codes that are not guaranteed to reach clients. In particular, trial upload-limit violations are detected internally, but the upload controller’s error path does not always forward the code. Practical rule:Authorization failure triage
A
404 on a resource you believe exists is often a visibility problem, not a deletion. Verify the bucket and the key’s restriction before assuming data loss.
Nested-status operations
These return HTTP200 with the real outcome inside the body:
Example of a nested failure:
200 as success.
Rate limit responses
429 responses use API_KEY_RATE_LIMITED. No Retry-After header is documented.
Use exponential backoff with jitter:
401, 402, or 403.
Error handling example
Related
Error handling
Task-oriented guide with retry patterns.
Error codes
Full code reference.
Troubleshooting
Symptom-to-cause table.
Conventions
Envelope shapes.