beatraDocs

Rate limits

Two-level fixed-window limits, X-RateLimit response headers, and 429 handling.

REST API (/v1) requests are rate limited by two levels of fixed-window counters; exceeding either returns 429:

LevelQuotaWindow
Account600 requests/min60s
API key120 requests/min60s

These quotas are platform-wide settings: every account and every API key has the same quota, and they are not configured per account.

Response headers

These headers are sent only on the 429 (rate_limited) response, not on successful responses:

HeaderDescription
Retry-AfterSeconds to wait before retrying
X-RateLimit-Limit-Tenant / X-RateLimit-Remaining-TenantAccount-level quota / remaining
X-RateLimit-Limit-Key / X-RateLimit-Remaining-KeyKey-level quota / remaining
X-RateLimit-ResetSeconds until the quota resets

Handling 429

{
  "error": {
    "code": "rate_limited",
    "type": "rate_limit_error",
    "message": "Tenant rate limit exceeded",
    "retryable": true,
    "details": {
      "scope": "tenant",
      "limit": 600,
      "window_seconds": 60,
      "retry_after_seconds": 12
    },
    "request_id": "3f6c1e2a-8b4d-4c7e-9a1f-2d5b6e7c8a90"
  }
}

details.scope names the exceeded level (tenant or api_key) and details.limit is its quota; details.retry_after_seconds equals the Retry-After header. tenant means the whole account; api_key means this one key.

  • A 429 on a workload (not the per-minute counters above) carries details.reason instead of details.scope. speech_inflight_limit (two ElevenLabs speech tasks already in progress), voice_creation_daily_limit (the daily ElevenLabs clone limit), director_inflight_limit (two AI Director tasks already in progress) and director_busy (the AI Director is at capacity) send details.retry_after_seconds and, over REST, a Retry-After response header (MCP has no headers); nothing is charged. Wait for that time, or for one task to finish;
  • Honor the Retry-After header (seconds) on the 429, then retry with the same Idempotency-Key;
  • Bursty concurrency is the most common trigger; smooth out requests on the client side;
  • Need a higher quota? Contact us via the console or your account manager.

Last updated

On this page

Markdown
Rate limits | Beatra Docs