Rate Limits
Rate limits protect the platform and are enforced per API key.
Quotas
| Field | Type | Description |
|---|---|---|
Sandbox | 100 req/min | Per key. Bursts up to 200 for 5 seconds. |
Live standard | 1,000 req/min | Default for approved accounts. Bursts to 2,000. |
Live scale | 10,000 req/min | Available on request for high-volume accounts. |
Headers
API v1
HTTP/1.1 200 OK
X-RateLimit-Limit: 1000
X-RateLimit-Remaining: 947
X-RateLimit-Reset: 1794902460
Retry-After: 0Backoff strategy
SDK v1.0.0
async function withBackoff<T>(fn: () => Promise<Response>): Promise<T> {
for (let attempt = 0; attempt < 6; attempt++) {
const res = await fn();
if (res.status !== 429 && res.status < 500) return res.json();
const retry = Number(res.headers.get("Retry-After") ?? 0);
const wait = retry ? retry * 1000 : Math.min(30_000, 500 * 2 ** attempt) + Math.random() * 250;
await new Promise((r) => setTimeout(r, wait));
}
throw new Error("Exceeded retries");
}