Updated Jul 14, 2026
On this page

Rate Limits & Quotas

Two independent limits govern API usage:

Technical rate limit (429)

Per-user requests-per-minute cap enforced on every endpoint. When exceeded, the API returns 429 Too Many Requests. Back off and retry after the Retry-After header interval.

Billing quota (402)

Monthly request budget from your plan. When exhausted, the API returns 402 Payment Required. Quota resets on the first day of each calendar month (UTC).

Handling limits in code

import time, requests

def call_with_retry(url, headers, max_retries=3):
    for attempt in range(max_retries):
        response = requests.get(url, headers=headers)
        if response.status_code == 429:
            retry_after = int(response.headers.get("Retry-After", 5))
            time.sleep(retry_after)
            continue
        response.raise_for_status()
        return response.json()
    raise RuntimeError("Max retries exceeded")

See Errors for the full error-envelope format.