Skip to main content
Every error returns the same flat JSON envelope. Branch on error_code, not the HTTP status — the status tells you the broad class, the code tells you exactly what happened.

Error codes