Overview
Every error has the same three-field body, so one handler covers all of them:Status codes
422 is the one that matters
Most real-world failures are422. The request was well-formed and authorised; the compute platform declined it.
Common 422 reasons, with the detail you will see:
422 also covers a wrapped refusal from deep inside the platform. The API walks the whole cause chain looking for a platform rejection, so a nested refusal still surfaces as 422 rather than degrading to a 500. A 500 from this API really is a fault worth reporting.403 is overloaded
403 means “not permitted” and “your region context is wrong” — including a malformed UUID, which would more naturally be a 400.
Handling errors
Retry policy
Related
Asynchronous work
Reading a failed job, and retrying safely.
Regions
Why so many 403s are region problems.
Quotas and limits
The usual cause of a quota 422.
Conventions
Timestamps and content types.