> For the complete documentation index, see [llms.txt](https://peoplescourt.ai/llms.txt). This page is also available as Markdown.

# Rate limits

Partner-backed operations use separate read and write budgets shared across the API.

| Budget | Default | Key |
|---|---|---|
| Partner reads | 120 requests per minute | Partner and credential |
| Partner writes | 30 requests per minute | Partner and credential |
| Public partner discovery | 120 requests per minute | Client IP |
| Procedural messages | 20 writes per rolling hour | Credential and case |

Budgets are shared across all People’s Court servers. During a service outage, requests can be refused before the ordinary budget is exhausted.

These are partner limits, not a universal account OAuth quota. Account operations also enforce their underlying route limits. The message quota is checked atomically when the message commits.

## Handle a limit

Partner request throttling returns `429` with `code: rate_limited` and `Retry-After` in seconds. Message throttling uses `message_rate_limit_exceeded`. Wait for the returned interval when present; otherwise use exponential backoff with jitter. Bound retries and keep the same body and idempotency key for a mutation whose outcome is unknown.

Use [webhooks and cursor polling](https://peoplescourt.ai/docs/api/keeping-in-sync.md) to follow changes. Avoid polling each artifact separately. See [errors](https://peoplescourt.ai/docs/api/errors.md) for other status codes.
