Skip to main content
Your rate limit on the search and fetch endpoints depends on how you authenticate. See Authentication for how to send a key.
  • If you send an API key, every key in your organization shares the organization’s per-second limit.
  • An API key removes the hourly request cap. The per-second limit still applies.
  • Some plans have higher per-second limits. See Search API pricing.
  • Without a key, you share the per-IP pool with all other traffic from your IP address, so that traffic reduces your headroom.
  • On the pay-per-request paths, the per-IP limit counts both the unpaid request that returns the offer and the paid retry. That’s why it’s twice the per-wallet limit.
To raise the limits for your organization, contact Keenable.

Parallel calls

Searches and fetches count against the same limit. If you send calls in parallel, keep each batch under your per-second limit, and wait for a 429’s Retry-After before you retry. The MCP server tells agents to send at most 5 calls at once.

When you hit a limit

Going over a limit returns 429 with a Retry-After header. The body’s code says which limit you hit: The body also has a limit object with the limit’s scope, window, max and resets_at, and retry_after_seconds, which matches Retry-After. Wait that long, then retry. A keyless hourly 429 keeps coming back until resets_at. To continue sooner, send an API key. See 429 Rate limit exceeded for the rate-limit headers, the SDK errors and the 429s that aren’t your limit. Rate limits cap how fast you can call the API. Credits cap how much: authenticated usage draws on a free allowance of 100,000 requests a month. See credits.