Выпустить новый секрет

POSThttps://api.souz.ai/v1/webhooks/secret/rotate

Следующие доставки подписываются уже новым секретом. Нужен ключ управления или сессия кабинета участника с ролью разработчика или выше. Обычный API-ключ получает 403.

Авторизация

ManagementKey

Ключ управления из кабинета souz.ai (выдают владелец и администратор аккаунта — себе или участнику). Даёт ровно то, что его держатель видит и может в кабинете: баланс, историю операций и запросов, расходы, обычные ключи, настройки аккаунта — с той же ролью, лимитами и цифрами. Модели не запускает. Обычный API-ключ здесь не подходит: 403 forbidden с detail[].reason: requires_management_key.

ClientSession

Сессия кабинета souz.ai в браузере — те же ручки, что у ключа управления.

Ответы

200Новый секрет.
application/json
Схема WebhookSecret
objectstringобязательно
Значение: "webhook_secret"
secretstringобязательно

whsec_<base64> — ключ Standard Webhooks.

Шаблон: ^whsec_
401Нет ключа или ключ недействителен.
application/json
403Нельзя: у ключа не тот вид (модели запускает API-ключ, аккаунт — ключ управления), у роли

Нельзя: у ключа не тот вид (модели запускает API-ключ, аккаунт — ключ управления), у роли участника нет права или подпись ссылки на файл не сходится. detail[].reason говорит, что именно: requires_api_key, requires_management_key, cabinet_only (только в кабинете), insufficient_role (в allowed — роли, которым можно), not_key_author (секрет ключа открывает только тот, кто его создал).

application/json
429Слишком часто — повторите через `Retry-After` секунд. Запуск моделей, задачи и файлы результатов частотой не ограничены (их ограничивают баланс и лимиты трат); здесь 429 — на поток запросов с ключом, который сервер не знает, с одного адреса, и на потоки сверх 1000 одновременных на аккаунт (события задачи, чат с `stream: true`). Пределы — раздел «Лимиты» руководства.
application/json
503Плановые работы (`maintenance`): новые запросы приостановлены до `error.ends_at`,

Плановые работы (maintenance): новые запросы приостановлены до error.ends_at, причина — в error.reason. Повторите после этого времени (или через Retry-After секунд, чтобы узнать, не закончились ли работы раньше); принятые задачи доделываются, переключаться никуда не нужно. Состояние — GET /v1/status.

application/json