Skip to main content
The API enforces a per-minute rate limit (with a short burst allowance) and a per-month request quota, both keyed to your plan tier. The values below are the live plan limits.

Per-tier limits

Custom plans are arranged directly with sales. Enterprise and Custom monthly request quotas are uncapped.

Rate-limit headers

Every authenticated response carries the current rate-limit state, not just 429s. Read these headers on successful responses to throttle proactively, before you ever hit the limit:
The headers are set on success responses as well as on 429, so you can watch X-RateLimit-Remaining trend toward 0 and slow down before a request is rejected.
A simple proactive strategy: if X-RateLimit-Remaining is low, pause until the X-RateLimit-Reset timestamp before sending more requests rather than waiting for a 429.

When you exceed the per-minute limit

A request over the per-minute rate returns 429 Too Many Requests with the rate-limit headers above plus a Retry-After:
Wait for the Retry-After interval (in seconds) before retrying, and prefer exponential backoff if you hit the limit repeatedly. The body follows the standard error envelope.
For write requests, retrying after a 429 is safe to do with an idempotency key (X-Idempotency-Key) — the same key replays the original result instead of performing the action twice.

Tips

  • Use the limit and pagination parameters to fetch only what you need.
  • Subscribe to WebSockets or webhooks for live data instead of polling.
  • If you consistently approach a limit, contact sales about a higher tier.
See Errors for the full status-code reference and Scopes for what your key can access.