HTTPcodeWhat it means
400
invalid_request
The body did not parse, or a field is the wrong type. The message names the field.
401
unauthenticated
No key, a malformed key, or a key that has been revoked.
403
scope_missing
The key is valid but was not created with the scope this call needs. Scopes are chosen per key and cannot be widened after the fact.
402
insufficient_funds
The balance would not cover it. The response carries required_cents and balance_cents so you can act without a second call.
404
not_found
No such resource on this account. Deliberately identical to the response for a resource on somebody else's account.
409
conflict
The resource is busy — usually an action already running on that server.
422
unavailable
Valid, but not currently possible: the plan is out of stock in that region, or the image is not offered for that family.
429
rate_limited
Retry-After is set, and it is accurate rather than a constant.
5xx
server_error
Ours. Safe to retry with the same Idempotency-Key — that is precisely what it is for.