Skip to content

Rate limits

Requests a second per key, the headers that report them, and the money limits per plan.

Partner API rate limits

Each key may make a set number of requests a second, by plan: sandbox 5, Starter 10, Growth 25, Enterprise 50 (yours is limits.requests_per_second in GET /api/v1/account). Every keyed response carries:

HeaderMeaning
X-RateLimit-LimitRequests allowed this second.
X-RateLimit-RemainingLeft this second.
X-RateLimit-ResetUnix second when the window resets.
Retry-AfterOn RATE_LIMITED only: seconds to wait.

Recipient checks have their own limit of 30 a minute per key. Money limits (per payout, day and month) are separate; see Plans and limits.

For bulk work, send payouts from a queue at a steady rate below your limit rather than all at once, and back off on 429 with jitter.

Public and account API limits

Limits are counted per IP address and per endpoint, over a rolling window. Rate-limited endpoints tell you where you are on every response:

X-RateLimit-Limit: 10
X-RateLimit-Remaining: 7

Limits

EndpointLimit
POST /api/v1/funding/*10 per minute
POST /api/v1/p/{code}/pay10 per 5 minutes
POST /api/v1/wallet/destinations20 per 5 minutes (shared with resolve-name)
POST /api/auth/send-otp3 per 5 minutes per address, and 3 per 5 minutes per phone
POST /api/auth/verify-otp5 per 5 minutes
GET /api/v1/capabilitiesCached for 60 seconds: cache it on your side too
GET /api/v1/fees/publishedCached for 60 seconds

When you hit a limit

You get 429 with code: "RATE_LIMIT" and a message naming the limit. Wait for the window to pass, then retry with backoff. If your use needs more, tell us about it in partner access.