Docs/Rate Limits

Rate Limits

Understand your API usage limits and how to work within them.

Limits by Plan

Each plan has different daily request limits and per-second rate limits.

PlanDaily RequestsRate LimitHistorical DataAPI Keys
Starter500/day5 req/sec30 days1
Pro2,000/day15 req/sec90 days3
Business6,000/day50 req/secAll available10
EnterpriseUnlimitedCustomAll availableUnlimited

Rate Limit Headers

Every API response includes headers to help you track your usage:

HeaderDescription
X-RateLimit-LimitYour daily request limit
X-RateLimit-RemainingRequests remaining today
X-RateLimit-ResetUnix timestamp when limit resets (midnight UTC)
X-RateLimit-UsedRequests used today
HTTP/1.1 200 OK
X-RateLimit-Limit: 500
X-RateLimit-Remaining: 423
X-RateLimit-Used: 77
X-RateLimit-Reset: 1704067200

When You Exceed Your Limit

If you exceed your rate limit, you'll receive a 429 response:

HTTP/1.1 429 Too Many Requests
Retry-After: 3600
Content-Type: application/json

{
  "detail": "Daily rate limit exceeded. Resets at midnight UTC."
}

Tip: Use the Retry-After header to know when you can make requests again.

Best Practices

1

Cache responses

Store API responses locally to avoid redundant requests. Application data typically changes once per day.

2

Use webhooks instead of polling

Pro and Business plans include webhooks. Get notified of new applications instead of repeatedly checking.

3

Implement exponential backoff

When rate limited, wait progressively longer between retries (1s, 2s, 4s, 8s...).

4

Request only what you need

Use filters to narrow results. Requesting all applications when you only need one council wastes your quota.

5

Monitor your usage

Check the Usage Dashboard to track your API consumption patterns.

Need Higher Limits?

Upgrade your plan for more daily requests and faster rate limits.