Yandex SpeechKit API: Расшифровать длинную запись разговора

Сценарий из mcp-everything. Актуально на 2026-10-24.

Расшифровки звонков колл-центра, интервью, совещаний — файлы до 4 часов.

  1. Асинхронное распознавание доступно только сервисному аккаунту с ролями ai.speechkit-stt.user и storage.uploader.
  2. Загрузи файл в бакет Yandex Object Storage и получи ссылку на него.
  3. Запусти распознавание: POST /speech/stt/v2/longRunningRecognize на transcribe.api.cloud.yandex.net с config.specification (languageCode, audioEncoding — OGG_OPUS, MP3 или LINEAR16_PCM) и audio.uri — ссылкой на файл. В ответе — ID операции.
  4. Забирай результат: GET /operations/{operationId} на operation.api.cloud.yandex.net. Минута одноканального аудио распознаётся примерно за 10 секунд — не опрашивай слишком часто. Результат хранится 3 дня.
  5. Для стерео-записи звонков с LPCM укажи audioChannelCount — каналы распознаются раздельно.
OP=$(curl -s -X POST https://transcribe.api.cloud.yandex.net/speech/stt/v2/longRunningRecognize \
  -H "Authorization: Api-Key $YANDEX_API_KEY" -H 'Content-Type: application/json' \
  -d '{
        "config": {"specification": {"languageCode": "ru-RU", "audioEncoding": "MP3"}},
        "audio": {"uri": "https://storage.yandexcloud.net/<бакет>/calls/2026-10-24-call-1042.mp3"}
      }' | jq -r .id)

curl https://operation.api.cloud.yandex.net/operations/$OP -H "Authorization: Api-Key $YANDEX_API_KEY"

Базовые URL

Авторизация

Тип: Bearer-токен

При авторизации пользовательским аккаунтом нужен параметр folderId; для сервисного аккаунта он не используется. Асинхронное распознавание доступно только сервисным аккаунтам (роли ai.speechkit-stt.user и storage.uploader).

Методы сценария

POST /speech/stt/v2/longRunningRecognize — Асинхронное распознавание

Хост transcribe.api.cloud.yandex.net. Возвращает ID операции; результат хранится 3 дня.

Параметр Где Тип Обяз. Описание
config.specification.languageCode body string нет Язык, по умолчанию ru-RU
config.specification.model body string нет Модель, по умолчанию general; влияет на стоимость
config.specification.profanityFilter body boolean нет Маскировать ненормативную лексику
config.specification.literature_text body boolean нет Режим нормализации текста
config.specification.audioEncoding body string нет LINEAR16_PCM, OGG_OPUS (по умолчанию) или MP3
config.specification.sampleRateHertz body integer нет 48000 (по умолчанию), 16000, 8000; обязателен для LINEAR16_PCM
config.specification.audioChannelCount body integer нет Число каналов, только для LPCM, по умолчанию 1
config.specification.rawResults body boolean нет Числа прописью
audio.uri body string да Ссылка на файл в Yandex Object Storage

GET /operations/{operationId} — Результат асинхронного распознавания

Хост operation.api.cloud.yandex.net. Минута одноканального аудио распознаётся примерно за 10 секунд; запросы результата ограничены по частоте.

Параметр Где Тип Обяз. Описание
operationId path string да ID операции из ответа longRunningRecognize

Нюансы

Другие сценарии


Если этого недостаточно — официальная документация: https://aistudio.yandex.ru/ru/docs/speechkit/ Вся интеграция одним документом: https://mcp-everything.ru/integrations/yandex-speechkit.md