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

# Rate limits

> Per-minute rate limits on Company Matching endpoints.

## Match endpoints

`POST /api/v1/match` and `POST /api/v1/match/batch` are limited to **30 requests per minute** (per authenticated client, via the API key).

When you exceed the limit, the API returns `429`:

```json theme={null}
{
  "error": "Rate limit exceeded: 30 per 1 minute"
}
```

Every counted request counts toward the limit regardless of whether matching succeeded.

<Note>
  Status and results polling (`GET /match/batch/{job_id}` and `…/results`) are not subject to the same match limiter as submit. Still avoid busy-looping — poll every few seconds.
</Note>

## Backing off

Retry `429` with exponential backoff:

```text theme={null}
attempt 1 → wait 2 s
attempt 2 → wait 4 s
attempt 3 → wait 8 s
attempt 4 → give up, surface the error
```

Add random jitter (0–500 ms).

## Batch size vs rate limit

A single batch submit is **one** HTTP request, even if it contains up to 1,000 companies. Prefer batching over many `POST /match` calls so you stay under the per-minute limit.
