API / Начало работы / Лимиты и повторы

Лимиты и повторы

Лимиты запросов

ЧтоЛимит
Чтение (GET)120 запросов в минуту на токен
Изменения (POST, PUT, PATCH, DELETE)30 запросов в минуту на токен
Через AI-ассистента (MCP)ещё 60 вызовов инструментов в минуту

При превышении придёт статус 429 с кодом token_rate_limited и заголовком Retry-After — через сколько секунд можно продолжить. Состояние сервера меняется не чаще раза в несколько секунд, поэтому опрашивать его чаще раза в 5–10 секунд нет смысла.

Сначала цена

Методы, которые списывают деньги (аренда, продление, смена тарифа), принимают "preview": true. С ним API считает цену тем же кодом, что и настоящая покупка, и ничего не списывает:

HTTP
HTTP/2 200 OK
{
  "total": 855,
  "monthly": 285,
  "base": 300
}

Повторы без двойной оплаты

Каждый запрос, который тратит деньги, требует заголовок Idempotency-Key — любую уникальную строку до 200 символов на одну покупку.

curl -X POST "https://sourhost.net/api/v1/projects/12/services/34/extend" \
  -H "Authorization: Bearer $SOURHOST_TOKEN" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: extend-34-2026-11" \
  -d '{"months":1}'

Как это работает:

СитуацияЧто произойдёт
Новый ключПокупка выполняется, ответ запоминается на 24 часа
Тот же ключ, первый запрос уже выполнилсяДеньги не списываются, приходит первый ответ с заголовком Idempotent-Replayed: true
Тот же ключ, первый запрос ещё выполняется409 idempotency_in_progress — подождите и проверьте результат
Первый запрос упал с ошибкой 5xxОтвет не запоминается, можно повторить с тем же ключом

Если связь оборвалась и непонятно, прошла ли покупка, повторите запрос с тем же ключом. Новая покупка — новый ключ.

Лимит трат токена

Токен с правом billing:spend всегда создаётся с лимитом за 24 часа и/или за 30 дней. Покупка сверх лимита отклоняется с 403 token_spend_limit, деньги не списываются. Подробнее — в статье API-токены.