Skip to main content
All Pods API errors use one JSON envelope. The HTTP status line is the source of truth for the status code; the body is always:
The details field is only present when there is extra structured context. For Zod validation failures (422), issues are in details.errors (path + message per field). Domain-specific data (for example needsSignUp) also lives under details.

Quote Errors

Swap Errors

Validation Errors

Bridge Errors

General Errors

Authentication Errors

Transaction Errors

Rate Limit Response

When you hit a rate limit, the body matches the same envelope, for example:
Some endpoints also send a Retry-After response header (seconds). Prefer that header when present. See Authentication for rate limit details.