Rate Limiting

Verifa enforces two types of limits: rate limits (requests per minute) and product quotas (resource creation per minute).

Rate limits by plan

PlanRequests per minute
Free300
Starter600
Professional1,000
Enterprise1,000

Product quotas

Product quotas limit how quickly you can create specific resources:

ResourceFreeStarterProfessionalEnterprise
Session creation50/min100/min150/min300/min
API key creation10/min25/min50/minUnlimited

Daily verification limits

PlanVerifications per day
Free50
Starter1,000
Professional1,000
EnterpriseUnlimited

Response headers

Every API response includes rate limit headers:

HeaderDescription
X-RateLimit-LimitMaximum requests allowed in the current window
X-RateLimit-RemainingRequests remaining in the current window
X-RateLimit-ResetUnix timestamp when the window resets

When a product quota applies, additional headers are included:

HeaderDescription
X-Quota-LimitMaximum quota in the current window
X-Quota-RemainingQuota remaining in the current window
X-Quota-ResetUnix timestamp when the quota resets

Handling 429 responses

When you exceed a rate limit or quota, the API returns 429 Too Many Requests with a Retry-After header indicating how many seconds to wait:

1HTTP/1.1 429 Too Many Requests
2Retry-After: 12
3X-RateLimit-Limit: 300
4X-RateLimit-Remaining: 0
5X-RateLimit-Reset: 1738368012
6
7{
8 "error": "rate_limited",
9 "detail": "Rate limit exceeded. Retry after 12 seconds.",
10 "status_code": 429
11}

Best practice: Implement exponential backoff with jitter. Respect the Retry-After header value as the minimum wait time before retrying.

  • Errors — Full error response reference including 429
  • Authentication — API key types and plan tiers
  • Idempotency — Safe retries with idempotency keys