Skip to main content

Envelope

Every non-2xx response has the same shape:
code is stable and machine-readable. Branch your handling on it, not on message, which is for humans and can change wording. request_id is also sent as the X-Request-Id header — include it if you contact [email protected] about a specific failed call.

Forward compatibility

The API is additive-only within /v1 (see Versioning). New error codes can be added over time. Treat an unknown code as a generic failure, not a crash: a code is never removed or renamed within /v1.

Every code

token_expired is reserved for if and when refresh tokens are added — bot tokens don’t currently expire, so you won’t see it.