Daily quota
- The quota resets every day at 02:00 Europe/Paris time.
usage.resets_atgives 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 abilled 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
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.