Skip to main content

The envelope

All errors share the same JSON shape:
error is a stable string suitable for branching in your code. message is human-readable and may change wording across releases. request_id matches the X-Request-Id header on the response.

HTTP status codes

Common error codes

Behaviour expectations

  • 4xx errors indicate a problem the caller can fix. Don’t retry without changing something.
  • 5xx errors are server-side. The client should retry with backoff. Default Retry-After is 30 seconds.
  • 402 challenges are not errors per se. They’re the start of an x402 / MPP / AP2 payment flow. See the protocol pages.

See also