# Limits

Page sizes, plan history windows and request rates for the API and the MCP server.

Canonical: https://chikaraintel.com/docs/limits

## Page sizes

| Where | Default | Maximum |
| --- | --- | --- |
| REST list endpoints | 20 | 100. A larger `limit` is capped, not rejected |
| `GET /v1/events` | 20 | 200 |
| `search_events` | 15 | 50 |
| `search_people`, `search_companies` | 20 | 100 |
| `resolve_search_terms` | 20 | 50 |
| `get_company_aum_history` | 24 | 120 |

## Plan history windows

The Starter plan includes the last 30 days of events. Higher plans include the full history. Profiles and organisations aren't windowed on any plan.

`search_events` states the window in every response under `applied.date_window`, so an empty result is never mistaken for a quiet period.

## Request rates

Chikara Intelligence doesn't apply a per-minute request limit to the API or the MCP server at present. Per-plan limits will be published on this page before they're enforced.

Build for them now. Treat a `429` as a signal to wait and retry with exponential backoff, and keep concurrent requests to a handful per token.

Retry on 429:

```javascript
async function get(url, attempt = 0) {
  const res = await fetch(url, {
    headers: { Authorization: `Bearer ${process.env.CHIKARA_API_TOKEN}` }
  });
  if (res.status === 429 && attempt < 5) {
    await new Promise((r) => setTimeout(r, 2 ** attempt * 500));
    return get(url, attempt + 1);
  }
  if (!res.ok) throw new Error(`${res.status} ${await res.text()}`);
  return res.json();
}

const { success } = await get("https://api.chikaraintel.com/v1/events?eventType=move&limit=20");
console.log(success.length);
```

## Fair use

The [Terms](/terms) cover acceptable use, including not working around published limits. If a workload needs more than a handful of concurrent requests, [book a call](/book-a-call) and we'll size it with you.

## Related

- https://chikaraintel.com/docs/authentication.md
- https://chikaraintel.com/docs/api/pagination.md
- https://chikaraintel.com/docs/api/errors.md
