The rate works as a token bucket: the bucket holds up to the burst size and refills at the request rate. Data responses carry the policy:
When you are limited
Requests over the limit return429 with a Retry-After header in whole seconds, and retry_after_s in the body:
429:
extraction_limit: a bulk extraction budget is used up.jobs_limit: more than 2 active async jobs, or more than 100 jobs in a day.
Backing off
Wait forRetry-After, then double the wait on each further 429, adding random jitter, up to 30 seconds. 503 upstream_busy and most 503 unavailable responses also carry Retry-After; retry them the same way.
