Перейти до основного вмісту
Заголовки лімітів надходять на маршрутах з обмеженням частоти. Майстер-ключі та UNLIMITED_API_KEYS обходять цей ліміт і можуть не мати X-RateLimit-*. Назви HTTP-заголовків нечутливі до регістру. Новий дійсний ключ спочатку використовує IP-бакет; після прогріву кешу діє персональний ліміт (наприклад, 40 → 120 для статистики). Retry-After повертається при обмеженні. На OpenAI-сумісних методах /v1/* ті самі значення надходять під іменами OpenAI: x-ratelimit-limit-requests, x-ratelimit-remaining-requests і x-ratelimit-reset-requests (час до скидання, наприклад 1s). Детальніше — в огляді AI API.

Відповідь 429

Коли ліміт перевищено, API відповідає HTTP 429. У тілі лише код і повідомлення, час очікування — у заголовках:
Якщо продовжувати надсилати запити після 429, ключ або IP тимчасово блокується: надходить код 5039, а Retry-After показує, скільки чекати.

Як обробляти

  • Стежте за X-RateLimit-Remaining і сповільнюйтеся, коли він наближається до нуля.
  • Після 429 зачекайте Retry-After секунд і повторіть лише відхилений запит.
  • Не повторюйте змінювальні запити наосліп після обриву мережі: спершу перевірте, чи застосувався запит.
  • Кешуйте відповіді, які рідко змінюються.
Перед API стоїть Cloudflare, у нього свої обмеження. Якщо з одного IP йде забагато запитів, Cloudflare сам відповідає помилкою 1015 (HTTP 429) — це його сторінка, а не JSON API, і без заголовків X-RateLimit-*. Зменште частоту запитів і зачекайте кілька хвилин: повторні спроби під час блокування подовжують його.