For the complete documentation index, see llms.txt. This page is also available as Markdown.

Rate Limits

To maintain app stability and protect the fair access of all users, our API enforces rate limiting. This prevents any one customer from overwhelming the system with excessive requests in a short period.

How It Works

We use a leaky bucket algorithm:

  • Initial bucket size: 20 requests

  • Refill rate: 3 requests per second

  • This results in approximately 100 requests available over a rolling 30 second window

Each request consumes one token from your bucket. The bucket is automatically replenished at the specified rate. You can check the remaining tokens at any time by inspecting the X-Tokens-Remaining response header.

Header
Meaning

X-Tokens-Remaining

Number of request tokens currently available

X-Retry-After

Seconds to wait before requests can resume

When X-Retry-After is greater than zero, pause requests for the specified number of seconds.

Burst Protection

If you attempt to send significantly more requests than your bucket allows, additional protections will kick in. In these cases, all requests may be temporarily blocked.

HTTP/1.1 429 Too Many Requests
Content-Type: application/json
X-Tokens-Remaining: 0
X-Retry-After: 8

{
  "status": "error",
  "message": "API Rate Limit Exceeded"
}