Skip to main content
Every failure returns the same envelope, with the right HTTP status:
code is a stable machine string - branch on it, not on the human message. details is present only on a few errors with extra structure (see below). It is omitted otherwise, never null.

Codes

details payloads

Some errors carry structured details: 403 product limit reached (follow a product past your plan cap):
403 spend cap required (a credit tool on a credential with no spend budget). For API keys, the spend cap is set when the key is created and cannot be added later: create a new key with a spend cap under Settings → API keys. OAuth connections can spend with no limit, so they don’t get this error.
402 spend cap reached (the credential’s rolling 30-day budget would be exceeded):
402 out of credits (the team’s balance is too low):
429 rate limited:

Handling

Check success first, then switch on error.code: