Skip to main content

Errors and limits

Common HTTP status codes

CodeMeaningAction
401Missing or invalid authCheck API key / JWT / share token
403Forbidden for this workspace or brainVerify X-Brain-Id and membership
404Resource not foundConfirm IDs and slugs
409Conflict (e.g. version mismatch)Refetch and retry with latest version
422Validation errorFix request body per OpenAPI
429Rate limitedBack off and retry with jitter
5xxServer errorRetry idempotent reads; avoid blind retries on writes

SDK errors

The TypeScript client throws typed errors with status, code, and message. Handle 429 and transient 5xx with exponential backoff. Details: Jobs and streaming — errors.

Rate limits

When you exceed plan limits, the API returns 429. Reduce concurrency, cache reads, and prefer streaming only when needed.

Idempotency

  • Reads (GET, list, browse) — safe to retry.
  • Fire / mutate — use client-generated keys or check job status before re-firing duplicate work.

Auth failures

SymptomCheck
401 on all routesAuthorization: Bearer ak_live_...
Brain routes failX-Brain-Id header
Browser app failsPublishable key + user JWT
See Authentication.