Concurrency
Product usage is credit-based. Credits are charged only for successful billable work, and active Data API calls are controlled by the plan concurrency limit. Auth and abuse-protection endpoints may still return 429 Too Many Requests, but product API usage is not metered by per-minute plan quotas.
| Control | How it works | Error |
|---|---|---|
| Monthly credits | Consumed by successful billable results and reset each billing period. | 402 when exhausted |
| Top-up credits | Non-expiring overflow balance used after monthly credits. | 402 when no credits remain |
| Concurrency | Limits simultaneous in-flight Data API requests per user. | 429 when active requests exceed the plan limit |
Concurrency Headers
Data API responses include these headers when concurrency enforcement runs:
| Header | Description |
|---|---|
X-Concurrency-Limit | Maximum simultaneous active Data API calls for the current plan |
X-Concurrency-Remaining | Remaining in-flight slots after the current request is admitted |
X-Concurrency-Active | Active request count reported when a concurrency request is rejected |
Concurrency 429 Example
Example
{
"error": "Rate limit exceeded",
"message": "Data API concurrency limit reached (5 active requests).",
"retry_after": 5
}