Перейти к содержимому

Справочник API

Лимиты

Лимиты Clipia API — 120 запросов в минуту на ключ и 600 на аккаунт, заголовки RateLimit-*, ответ 429, лимит параллельных генераций и LLM-лимиты.

Запросы к API ограничены двумя счётчиками: 120 запросов в минуту на ключ и 600 запросов в минуту на аккаунт по всем его ключам вместе. Окно — календарная минута: счётчики обнуляются в начале каждой минуты. При превышении любого из них запрос отклоняется с 429 rate_limit_exceeded.

Лимиты по умолчанию

ЛимитЗначениеОтвет при превышении
Запросов в минуту на ключ120429 rate_limit_exceeded
Запросов в минуту на аккаунт600 по всем ключам429 rate_limit_exceeded
Запросов в минуту для подключения MCP через OAuth (без ключа)60429 rate_limit_exceeded
Параллельных генерацийне ограничено—
Запросов в минуту для подключения MCP через OAuth (без ключа)60429 rate_limit_exceeded
Протокольных сообщений MCP в минуту на ключ600429 rate_limit_exceeded
Запросов в секунду с одного IP-адреса30, всплеск до 60429 rate_limit_exceeded, заголовок Retry-After

Индивидуальные лимиты ключа выставляет команда Clipia по запросу; в консоли разработчика их не настроить. Срок действия и бюджет кредитов ключу задаёт владелец в консоли — см. «Управление ключами».

Лимит 60 запросов в минуту действует на подключения MCP через OAuth (Claude, ChatGPT, Cursor и другие клиенты, где вы входите в аккаунт Clipia, а не вводите ключ): у такой сессии нет своего ключа, поэтому её лимит ниже лимита ключа. Подключение MCP по API-ключу живёт по лимитам ключа. В этих лимитах считаются вызовы инструментов (tools/call). Протокольные методы (initialize, tools/list, resources/read и другие) считаются отдельно: 600 единиц в минуту на ключ или OAuth-подключение, одно JSON-RPC-сообщение — одна единица. Батч JSON-RPC, в котором есть что-либо кроме протокольных методов, отклоняется с 400 invalid_request: каждый tools/call отправляйте отдельным запросом.

Лимит по IP-адресу защищает сервис от потока запросов и проверяется раньше лимитов ключа, поэтому в заголовках RateLimit-* его не видно. Он действует на /v1/, /api/v1/ и /mcp; ответ 429 приходит в обычном формате ошибок с заголовком Retry-After. Этот лимит вводится отдельным обновлением инфраструктуры: пока оно не выполнено, такого ответа не будет.

Заголовки ответа

Каждый ответ на запрос с ключом несёт заголовки лимита по ключу:

Свойство

Тип

Лимит аккаунта в заголовках не виден

RateLimit-Remaining считает только запросы текущего ключа. Если несколько ключей одного аккаунта вместе превысят 600 запросов в минуту, придёт 429, хотя у отдельного ключа запас ещё есть.

Ответ 429

HTTP/1.1 429 Too Many Requests
RateLimit-Limit: 120
RateLimit-Remaining: 0
RateLimit-Reset: 1760011260
Retry-After: 37
{
  "error": {
    "type": "rate_limit_error",
    "code": "rate_limit_exceeded",
    "message": "API rate limit exceeded. Slow down and retry after the reset window."
  }
}

Подождите столько секунд, сколько указано в Retry-After, и повторите запрос. Это надёжнее фиксированной задержки. Если Retry-After нет, посчитайте паузу как RateLimit-Reset минус текущее unix-время.

Параллельные генерации

По умолчанию число одновременных генераций не ограничено. Если для ключа или аккаунта задан лимит, отправка сверх него вернёт 429 с заголовком Retry-After: 5:

{
  "error": {
    "type": "rate_limit_error",
    "code": "concurrency_limit_exceeded",
    "message": "Too many concurrent generations in flight for this API key (limit 5). Wait for one to finish, then retry.",
    "retry_after_seconds": 5
  }
}

Дождитесь завершения одной из задач и повторите. Слот освобождается, когда задача завершается; если задача зависла, слот снимается автоматически через 30 минут. Когда лимит задан и система контроля параллельности временно недоступна, отправка вернёт 503 service_unavailable — повторите через несколько секунд.

Лимит параллельности действует на отправку генераций и на LLM-чат. Опрос статуса и результата в него не входит.

Токены и бюджет ключа

На ключ можно задать дополнительные ограничения:

ЛимитКто задаётОтвет при превышении
Токенов LLM в минуту, для AI Gatewayкоманда Clipia429 rate_limit_exceeded, заголовки x-ratelimit-remaining-tokens и x-ratelimit-limit-tokens
Бюджет кредитов, см. «Управление ключами»владелец ключа в консоли402 insufficient_quota

По умолчанию эти лимиты не заданы.