Skip to content

Rate limits

The Public API uses one-minute fixed windows. Limits apply both to each API key and to the project as a whole.

Default limits

Request class Per key Project aggregate
Standard reads 600/minute 2,400/minute
Semantic, geographic, and geo-cell searches 60/minute 240/minute
Run triggers 5/minute 20/minute

Successful responses include:

Header Meaning
RateLimit-Limit Per-key limit for this request class
RateLimit-Remaining Requests remaining, accounting for both key and project usage
RateLimit-Reset Seconds until the current window resets

When either limit is exceeded, the API returns 429 with the shared error envelope, the three rate-limit headers, and Retry-After. Wait at least that many seconds before retrying.

HTTP/1.1 429 Too Many Requests
RateLimit-Limit: 60
RateLimit-Remaining: 0
RateLimit-Reset: 18
Retry-After: 18
X-Request-ID: req_01J...
{
  "error": {
    "code": "rate_limit_exceeded",
    "message": "Public API rate limit exceeded.",
    "details": null
  },
  "request_id": "req_01J..."
}

Backfield may adjust limits by deployment. Use the response headers rather than hard-coding retry timing. If the rate-limit service is temporarily unavailable, requests are allowed through rather than failing authentication or API access.