Limits
Rate limits
Requests are limited to 5 per second, as a fixed one-second window.
The counter is keyed by API key — the API-PublicKey header — so two clients behind one address
do not consume each other's budget, and a busy bot cannot stop another one from cancelling its
orders. Requests sent without a key (the public market-data endpoints) are keyed by client IP.
The window is per endpoint: placing orders and cancelling them draw on separate budgets, so a burst of placements never blocks a cancel. The limit applies to every endpoint, not only order ones.
When the limit is exceeded
429 Too Many Requests, with a Retry-After header in seconds and this body:
{ "error": "RateLimitExceeded", "message": "Too many requests", "retryAfterSeconds": 1 }
Order limits
| Limit | Value |
|---|---|
| Active orders per currency pair | 500 |
Exceeding it rejects the placement with Reached orders count limit. Cancel or let orders fill to
make room; the cap counts open orders, not the rate at which they are placed.
There is no separate per-minute, per-hour or per-day order quota.