# Rate Limits

> Per-token limits for reads, writes and agent messages, the account-wide ceiling, burst allowances, and what to do on a 429.

Canonical: https://revnu.com/docs/rate-limits
Last updated: 2026-10-16

Each token has three buckets, one per kind of call, plus a ceiling across all of an account's tokens so twenty tokens cannot add up to twenty times the budget. `GET /me` reports the numbers a token is held to.

| Class | Which calls | Sustained | Burst |
|---|---|---|---|
| Reads | Every `GET`, including `/me`, and the setup routes | 300 per minute | 600 |
| Writes | Calls that need `review:write`, `leads:write` or `workflows:write` | 60 per minute | 120 |
| Agent messages | Calls that need `agent:message`, including polling a message and reading the thread | 30 per minute | 60 |
| Whole account | Every call on every token | 900 per minute | 1,800 |

The class follows the scope a route needs, so polling `GET /agent/messages/{requestId}` spends the message bucket, not the read bucket. Waiting with `waitSeconds` costs one call however long it holds.

Over a limit is `429` with a `Retry-After` header in seconds. Many simultaneous requests on one token can also get a `429` with `Retry-After: 1` when they collide; spread them out.

The MCP server and the CLI use the same tokens, so they share these limits. [Inbound webhooks](https://revnu.com/docs/webhooks.md) have their own limit: 60 per hook per hour.

## Staying inside them

- A wall screen polling `/review` every 10 seconds is 6 reads a minute.
- Handing Revnu a batch of jobs: send them with `queue: true` and wait with `waitSeconds` rather than polling each one every second. See [Talk to Your Agent](https://revnu.com/docs/talk-to-your-agent.md#many-jobs-in-a-row).
- Syncing a block list: one `POST /blocklist` takes up to 500 values.

## When the limiter itself is down

Reads still proceed, because a read cannot spend money or send anything and a wall dashboard going blank during a blip is the wrong trade. Writes and messages return `503` with `Retry-After`, never a fake pass, because the ceiling they rely on is the thing that broke.

## Frequently asked questions

### What is the Revnu API rate limit?

300 reads, 60 writes and 30 agent messages per minute per token, with bursts of 600, 120 and 60, and 900 calls per minute across the whole account.

### Do reads and writes share a budget?

No. Each class has its own bucket per token, plus the account-wide ceiling. Heavy polling cannot starve approvals.

### How should I back off?

Honour `Retry-After`. It is computed from the bucket, so retrying earlier only burns another request.

### Is there a daily cap?

No. The limits are per minute. What Revnu does in a day is paced separately, by the sending limits on each inbox and LinkedIn account.
