Skip to main content
Errors use one JSON envelope:
Branch on code and log message. Handle unknown codes by HTTP status class.

Error codes

Retry guidance

  • Retry network errors, timeouts, 429, and 5xx with exponential backoff and jitter, capped around 60 s. Reuse the same Idempotency-Key for each attempt.
  • For other 4xx responses, update the request or credential before trying again.
  • For incoming webhooks, return 408, 429, or a 5xx when you want Relay to retry; any other non-2xx dead-letters the delivery immediately. Deduplicate every attempt by event_id.

Limits

Every size, count, and rate ceiling lives in one place: Limits and rate limits.

See also