# Изменения API: 10 октября 2026

[← Журнал изменений](/docs/changelog) · [Октябрь 2026](/docs/changelog/2026-10)

### BC-1010-1: Сервисные маршруты облачных задач перенесены в V1

> Поддержка старого формата до: не предусмотрена

**Было**

Обмен и закрытие сессии использовали `POST /internal/cloud-task-sessions/exchange` и `POST /internal/cloud-task-sessions/close`. События принимал `POST /internal/cloud-task-events`.

**Стало**

Доступны `POST /v1/internal/cloud-task-sessions/exchange`, `POST /v1/internal/cloud-task-sessions/close` и `POST /v1/internal/cloud-task-events`. Требования к сервисному JWT и форматы запросов и ответов сохранены. Старые маршруты недоступны.

**Что делать интеграторам**

Обновите адреса запросов после развёртывания новых маршрутов на платформе Вайбкод.

### NEW-1010-2: Имена секретов приложения

Добавлены `GET/POST/DELETE /v1/applications/:id/secrets[/:name]` и MCP `manage_app_secrets`: просмотр списка, создание и удаление имён секретов приложения. Значения не принимаются и не возвращаются через API или MCP. Для порталов, которым функция недоступна, API возвращает 404. [Документация](/docs/applications/app-secrets).

### FIX-1010-3: Квота ИИ проверяется до баланса кошелька

**Было**

Отрицательный баланс кошелька мог блокировать чат, эмбеддинги, изображения и расшифровку аудио даже при наличии тарифной квоты ИИ. Денежные отказы не всегда содержали ссылку на пополнение.

**Стало**

Вызов, явно покрытый тарифной квотой в режиме enforce с ценообразованием v2, проходит без денежного preflight кошелька. Сверх квоты сохраняются проверки и транзакционное списание. Денежные отказы ИИ, поиска и исследования содержат `error.topupUrl`; ссылка доступна независимо от флага уведомлений copay. Причины `wallet_empty`, `wallet_off` и `breaker` сопровождаются разными пояснениями. В сообщении бота о нехватке средств появилась кнопка пополнения.

**Влияние на интеграторов**

Публичные коды ошибок сохранены. Для выбора действия используйте код и причину отказа, а для перехода к пополнению — необязательное поле `error.topupUrl`, а не текст сообщения.

### FIX-1010-4: единый статус отказа при непрочитанном тарифе или подписке

**Было**

При создании сервера через [POST /v1/infra/servers](/docs/infra/servers/create) отказы `PORTAL_TARIFF_UNREADABLE` и `PORTAL_SUBSCRIPTION_UNREADABLE` могли возвращаться с HTTP 402 вместо документированного HTTP 403.

**Стало**

Оба кода возвращаются с HTTP 403 во всех путях создания сервера. Денежные и триальные отказы сохраняют HTTP 402.

**Влияние на интеграторов**

Обрабатывайте отказ по `error.code`. Непрочитанный тариф или подписка не означают, что нужна покупка.

### NEW-1010-5: Цена коннектора в списке коннекторов

[GET /v1/connectors](/docs/connectors-host) отдаёт у каждого коннектора поле `pricing`: диапазон цен инструментов в вайбах за успешный вызов (`minVibes`, `maxVibes` — строки) или `null`, если коннектор бесплатный. Платный вызов в шлюзе может закончиться отказом `INSUFFICIENT_BALANCE`, `ACCOUNT_FROZEN`, `DAILY_CAP_REACHED` или `COMPANY_BUDGET_EXHAUSTED` в `_meta["vibe/error"]`.

### NEW-1010-6: Причина денежной паузы Коворк в ответах ИИ

При паузе Коворк из-за нехватки денег ошибки `cowork_subscription_inactive` в `POST /v1/chat/completions` и `POST /v1/images/generations` содержат дополнительные поля `reason: INSUFFICIENT_BALANCE` и `topupUrl` со ссылкой на пополнение баланса портала. Статус остаётся `402`; другие причины не получают эти поля.
