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

# Rate limits

> 30 requests per minute per account, enforced before billing.

The gateway allows **30 requests per minute** per account by default, across all
APIs combined. The limit is keyed on your authenticated identity, not on your IP
address, so several machines sharing one key share one budget.

Exceeding it returns `429` with the gateway error envelope:

```json theme={null}
{ "error": { "code": "rate_limited", "message": "Rate limit exceeded." } }
```

Rate-limited requests are **not billed**. The check runs after authentication and
before metering.

## For the WebSocket stream

The limit applies to **connection attempts**, not to messages. Once a socket is open,
the notifications pushed over it are not counted. A tight reconnect loop will burn
the budget in seconds, so always reconnect with exponential backoff. See
[Connecting to the stream](/stream/connecting).

## Handling a 429

* Wait before retrying. Start at one second and double on each consecutive `429`,
  capping at 30 seconds.
* Do not retry in a loop without a delay; each attempt counts.
* If you legitimately need more than 30 requests per minute, contact Eventory. Higher
  limits are configured per account.

## Timeouts

Live Availability scrapes can take up to 60 seconds and return `408` when the
platform does not answer in time. Set your client timeout to 65 seconds for
`POST /events/scrape`. Every other endpoint normally answers in well under a second.
