New: pagination on person search, fuzzy matching, and more. See what's changed →
Whitepages Pro API

Rate Limits

Understand the rate limiting policies for the Whitepages Pro API, including monthly query limits and trial exhaustion.

The API enforces two different kinds of limit, and both return 429:

  • Rate limits bound how fast requests arrive. They clear on their own.
  • Usage caps bound how much you consume in a billing period. They persist until the period resets or you buy more queries.

Telling them apart matters, because retrying only helps for one of them.

Which 429 did I get?

Three responses share the 429 status — one rate limit and two usage caps. Each is identified by a single field in the body:

Identifying fieldKindMeaningWhat to do
"message": "Too Many Requests"Rate limitToo many requests per secondBack off and retry
"message": "Limit Exceeded"Usage capGateway quota for the period is outWait for the reset, or upgrade
"error": "usage_cap_exceeded"Usage capYour plan's query allowance is outUpgrade, or wait for the reset

Only the third sets error, so branching on its presence is the reliable check. The first two carry message and nothing else; the third carries the full set of fields below.

Rate limits

When you send requests too quickly, the API returns:

{
  "message": "Too Many Requests"
}

Wait before retrying, and implement exponential backoff in your application. Rate limits vary by plan; higher limits can be requested through support.

Usage caps

Every plan includes a query allowance for its billing period, and trial keys include a fixed trial allowance. When you exhaust it, the API returns a 429 with a structured body:

{
  "error": "usage_cap_exceeded",
  "error_instance_id": "1b9d6bcd-bbfd-4b2d-9b5d-ab8dfbbd4bed",
  "message": "Query cap reached for this billing cycle. To restore access before it resets, upgrade to a plan with more included queries: https://www.whitepages.com/billing/manage-plan/pro-api",
  "limit": 1000,
  "used": 1000,
  "reset_at": "2026-09-01T00:00:00+00:00",
  "upgrade_url": "https://www.whitepages.com/billing/manage-plan/pro-api"
}
FieldMeaning
limitBillable queries your allowance covers for the current period
usedBillable queries consumed so far in the period
reset_atWhen the allowance resets
upgrade_urlWhere to restore access without waiting for the reset

upgrade_url differs by account type: paid subscribers are sent to their plan management page to move to a larger plan, and trials are sent to the pricing page to choose their first one.

Retrying will not clear a usage cap. Your allowance is spent until reset_at, or until you move to a plan with more included queries.

Response headers

usage_cap_exceeded responses carry the same numbers as headers, so you can react without parsing the body. The two gateway 429s do not set them:

HeaderMeaning
Retry-AfterSeconds until it is worth trying again
X-RateLimit-LimitSame as limit
X-RateLimit-UsedSame as used
X-RateLimit-ResetSame as reset_at

Retry-After is a re-check interval, not the time until your allowance returns. Access resumes once you have credit again — because the period reset, because you upgraded, or because support granted extra queries — and re-checking at that interval is how your key picks that up.

Best Practices

  • Implement retry logic with exponential backoff for rate-limit 429s
  • Branch on error so your integration does not retry a usage cap in a loop
  • Cache responses when appropriate to reduce API calls
  • Monitor usage via the Account Usage endpoint
  • Batch requests where possible to optimize your quota

Rate Limit Increases

For rate limit increases or quota adjustments, please contact our team at api@whitepages.com.

Related

On this page