Skip to main content

Daily quota

  • The quota resets every day at 02:00 Europe/Paris time. usage.resets_at gives the exact instant.
  • The quota belongs to the account: searches in the dashboard and through the API draw from the same pool.
  • Unused requests do not carry over.
  • Plans last for the period you bought and do not renew automatically. When a plan ends, the account is back on Free and the API answers 403 plan_required.

What uses a request

There is no charge for paging, filtering or exporting what you already received: it is all in the response. See Pagination.

Know what a call cost

Every JSON response has a billed boolean, and every response has an X-Request-Billed: true|false header. Rely on them instead of the status code: an empty result can be billed (200, billed: true) or refunded (200, billed: false). When the account quota is known, the response also carries it after the call:
usage and X-Quota-* are present on GET /api/v1/usage, on served searches, and on plan_required, module_locked, unknown_module, quota_exceeded and upstream_error. They are absent on the other errors (authentication, too_many_requests, rate_limited, body and input errors, internal_error), which are returned before the account quota is read.

When the quota runs out

The status is 429, and Retry-After gives the seconds until the reset. Retrying earlier only returns the same error. Check remaining before a batch instead: GET /api/v1/usage is free.