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

# Rate limit exceeded

> HTTP 429, rate-limited. The key exceeded its per-minute rate limit, or ran too many searches at once.

| | |
| - | - |
| Type | `https://docs.pinakelai.com/errors/rate-limited` |
| Status | 429 |
| Retry | Yes, after Retry-After. |

## When it happens

`violated_policies` says which limit:

* `minute`: the key made more calls in the current UTC minute than its rate limit allows.
* `concurrency`: the key already had two searches running, and no slot became free within a second.

The call is not billed, but it still counts toward the current minute.

## What to do

Wait for `Retry-After` seconds before retrying, and pace requests using the `RateLimit` header. For `concurrency`, run fewer searches in parallel. See [Rate limits & usage](https://docs.pinakelai.com/guides/rate-limits-and-usage.md).

## Example

```http Headers theme={null}
HTTP/1.1 429 Too Many Requests
Content-Type: application/problem+json
Retry-After: 17
RateLimit-Policy: "minute";q=600;w=60, "month";q=100000;w=2592000
RateLimit: "minute";r=0;t=17, "month";r=95210;t=1555200
```

```json Body theme={null}
{
  "type": "https://docs.pinakelai.com/errors/rate-limited",
  "title": "Rate limit exceeded",
  "status": 429,
  "detail": "This key has used its 600 calls for the current minute.",
  "request_id": "req_01M7Q40RSTVWXYZ0123456789A",
  "violated_policies": [
    "minute"
  ]
}
```

See the [errors catalogue](https://docs.pinakelai.com/api-reference/errors.md) for every error type, and [Handling errors](https://docs.pinakelai.com/guides/errors.md) for retry strategy.


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