SOROKA Документация API

Лимиты и кредиты

Лимит в минуту

У ключа — лимит вызовов в минуту. Окно — календарная минута UTC; остаток и время до новой минуты приходят в заголовках каждого ответа:

X-RateLimit-Limit: 600
X-RateLimit-Remaining: 598
X-RateLimit-Reset: 41

Лимит выбран — 429 too_often с retry_after (и заголовком Retry-After). Лимит ключа не выше лимита тарифа. GET /v1/me в лимит не считается.

Квоты

Кредиты

Платите за полученные записи. Пустой ответ, любая ошибка и повтор с тем же Idempotency-Key не списываются. Служебные пути бесплатны: /v1/me, /v1/usage, списки и карточки задач, файл результата (его оплатила задача), управление подписками, оценка задачи.

Кредиты дробные: запись стоит от 0,5 кредита. Сумма вызова или задачи — цена × число записей, округлённая вверх до сотой один раз на итоге. В ответах API кредиты — числом: 0.5, 1234.25, 30000.

путьединицакредитов
POST /v1/tg/postsпост канала0,5 за запись
POST /v1/tg/messagesсообщение чата1 за запись
POST /v1/tg/resolveкарточка канала или чата1,5 за запись
POST /v1/tg/fullкарточка канала или чата1,5 за запись
POST /v1/tg/mediaмедиа1 за начатый МБ
POST /v1/vk/wall.getзапись или комментарий0,5 за запись
POST /v1/vk/wall.getByIdзапись или комментарий0,5 за запись
POST /v1/vk/wall.getCommentsзапись или комментарий0,5 за запись
POST /v1/vk/wall.getRepostsзапись или комментарий0,5 за запись
POST /v1/vk/wall.searchнайденный пост1 за запись, не меньше 10 за запрос, если нашлось
POST /v1/vk/newsfeed.searchнайденный пост1 за запись, не меньше 10 за запрос, если нашлось
POST /v1/vk/groups.getByIdкарточка сообщества1 за запись
POST /v1/vk/groups.searchкарточка сообщества1 за запись
GET /v1/vk/pageстраница vk.com1 за вызов
POST /v1/vk/batchзапись или комментарий0,5 за запись
прочие методы ВКонтакте на чтениезапись0,5 за запись
POST /v1/jobsпо шаблону сбора (таблица)за итог задачи

Задача списывается один раз, после исполнения, за собранные записи; сумма — в result_summary.credits. Медиа задачи (media: true) — ещё 1 кредит за каждый начатый мегабайт. Поток списывается в конце — за отданные записи.

Кредиты расходуются по порядку: сначала кредиты тарифа за месяц (сгорают в конце месяца), потом дополнительные (купленные пакетом, не сгорают), потом перерасход — только если он включён в кабинете и в пределах потолка в рублях. Остаток — GET /v1/me → billing.credits; на 50, 80 и 100 % бюджета месяца — уведомление в кабинете.

Потолок расходов

Больше, чем оплачивает остаток, не отдаётся: limit у постов и сообщений урезается до остатка, max_bytes у медиа — до остатка в мегабайтах, задача без limit получает его по остатку. Цену заранее показывает POST /v1/jobs/estimate: «от–до», остаток и хватит ли его.

402 payment_required и режим чтения

codeчто случилосьчто делать
credits_exhaustedкредиты месяца и дополнительные кончились, перерасход выключен или его потолок выбранпополнить баланс пакетом, включить перерасход или дождаться нового месяца
trial_endedтестовый период закончилсявыбрать тариф и оплатить его в кабинете («Тариф и оплата»)
read_onlyсчёт на продление не оплачен после 7 льготных днейоплатить счёт
subscription_cancelledподписка закрытаоформить тариф заново; данные сохраняются
no_subscriptionу организации нет тарифавыбрать тариф
not_in_planвозможности нет в тарифе (например, медиа на тестовом периоде)сменить тариф
plan_limitлимит тарифа: каналов в подписках больше, чем разрешеноубрать лишние каналы или сменить тариф

В режиме чтения и при нуле кредитов работает всё, что не собирает новых данных: GET /v1/usage, GET /v1/me, список и карточки задач, их файлы, отмена задачи, оценка, чтение и конец подписок, файл медиа по уже выданной ссылке. Подписки на это время встают на паузу и продолжают работу сами после оплаты.