Viewing: Rate Limits

Rate Limits

API access is rate-limited based on your subscription plan. There are two types of limits: daily quotas and per-minute burst limits.

Limits may be enforced at the API key, account, and IP address. The rules for responsible use are in the Developer Usage Terms.

Full Plan Comparison

PlanDaily LimitBurst LimitAPI KeysWebSocketEvent WebhooksEvent Rules
Free100/day10/min1✗00
Starter5,000/day100/min3✗00
Pro50,000/day500/min10✓310
Business150,000/day1,000/min30✓1050
EnterpriseCustomCustomCustom✓CustomCustom

Daily request quota

Daily quotas are shared across the account, including Live and Test keys. Rotating or revoking a key does not create a new daily pool.

Burst Protection: To prevent abuse and protect stability, per-minute throttling is applied at both API-key and account levels. Requests exceeding these limits return HTTP 429. Daily limits reset at midnight in Asia/Riyadh (UTC+3). Enterprise limits are contract-based and may be monthly quotas or resource-based.

Rate Limit Headers

Most successful /api/v1/* responses include these headers:

HeaderDescription
X-RateLimit-LimitThe request limit reported by this header.
X-RateLimit-RemainingRemaining requests according to this header's current calculation.
X-RateLimit-ResetUnix timestamp for the next daily-quota reset.

X-RateLimit-Reset is the next midnight in Asia/Riyadh. The daily quota applies to the whole account across every API key, while X-RateLimit-Remaining is currently calculated from the key used for the request. With multiple keys, the header can show more remaining requests than the account's actual remaining balance.

Some proxy servers may remove the rate-limit headers. An HTTP 429 response uses error.code RATE_LIMITED whether the limit was enforced at the edge or by an application quota or throttle. Application limit errors may also include a top-level detail field. Honor Retry-After when it is present.

Last updated on