Skip to main content

Errors

Non-2xx responses generally contain:
Common statuses are: Do not retry most 4xx responses without changing the request. Retry transient 429 and 5xx responses with exponential backoff and jitter.

Rate limits

Authenticated API traffic is limited to 100 requests per 60 seconds per credential. Some expensive operations have tighter limits:

Rate limit headers

Every API response — not only a 429 — carries the current state of the tightest limit the request passed through, so a client can pace itself instead of waiting to be rejected: A 429 adds Retry-After (also in seconds) and, for backwards compatibility, the older x-ratelimit-limit, x-ratelimit-remaining, and x-ratelimit-reset headers — note that x-ratelimit-reset is a Unix timestamp in seconds, while RateLimit-Reset is a delta. Treat Retry-After as authoritative on a 429: wait that many seconds, then retry with backoff and jitter.
Poll an active run about once per second, stop as soon as it reaches a terminal state, and prefer webhooks when you need ongoing lifecycle updates.