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

# Rate limiting

> Read the rate limit headers and back off correctly on 429.

The Descript API implements rate limiting to ensure fair usage and protect service availability.
When you exceed the rate limit, the API returns a `429 Too Many Requests` response.

## Rate Limit Headers

When a rate limit is exceeded, the response includes the following headers:

| Header                  | Description                                           |
| ----------------------- | ----------------------------------------------------- |
| `Retry-After`           | Number of seconds to wait before retrying the request |
| `X-RateLimit-Remaining` | Number of requests remaining in the current window    |
| `X-RateLimit-Consumed`  | Number of requests consumed in the current window     |

## Handling Rate Limits

When you receive a `429` response, use the `Retry-After` header to determine how long to wait before retrying.
This approach is more efficient than using fixed delays or exponential backoff alone.


## Related topics

- [Generate AI images and video](/generative-media/generate-media.md)
- [Microphone sample rate](/squadcast/sample-rate.md)
- [Recording performance issues: Low frame rate or sync problems](/record/frame-rate-sync.md)
- [Why do my SquadCast recordings have inconsistent frame rates?](/squadcast/frame-rate.md)
- [Project file management](/working-in-projects/project-file-management.md)
