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

# Rate limits

> How often you can call the API, and what to do if you hit the limit.

To keep the API fast for everyone, it limits how often it can be called. Two limits apply, counted separately:

* **600 requests a minute per API key.**
* **600 requests a minute per IP address.** Several keys used from one server share that server's limit.

Each response includes a `RateLimit-Limit` header (the limit) and a `RateLimit-Remaining` header (requests left in the current one-minute window). Server code can read them; code running in a browser, including the playground, can't, because the API doesn't expose them to web pages. Over a limit, the API answers `429` with `"code": "rate_limited"` and a `Retry-After` header: the number of seconds to wait before trying again.

```javascript theme={null}
if (response.status === 429) {
  const seconds = Number(response.headers.get("Retry-After") ?? "1");
  await new Promise(resolve => setTimeout(resolve, seconds * 1000));
  // then send the same request again
}
```

To stay well under the limit, spread regular syncs out instead of sending bursts, and keep results that rarely change, such as a campaign's settings, instead of fetching them every time.

AI assistants connected through the MCP server have their own, separate limit. See [MCP tools and limits](/mcp-tools#limits).


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