> ## Documentation Index
> Fetch the complete documentation index at: https://docs.veilroute.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Rate limits

> Per-key request budgets and how to handle 429.

Each API key has its own request budget, enforced as a short rolling window. When you exceed it, the
API responds with:

```json theme={null}
{ "error": "request failed" }
```

with HTTP status `429`.

## Handling 429

* Treat `429` as temporary, not a block. Retry with exponential backoff (for example 1s, 2s, 4s).
* Spread load across time rather than bursting — a steady rate stays under the limit better than
  spikes.
* If you consistently hit the limit, your plan's budget may be too low for your volume. Dedicated
  concurrency plans are available for steady, high-volume pipelines — [talk to us](https://app.veilroute.dev).

> [!NOTE]
>
> Limits are per key, so splitting unrelated workloads across separate keys keeps one noisy job from
> rate-limiting another.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.