Speech Analytics API
Обзор
API для загрузки аудиозаписей звонков и автоматического запуска их транскрибации и анализа с помощью ИИ.
После загрузки файл автоматически:
✅ Загружается в облачное хранилище
✅ Отправляется на транскрибацию
✅ Анализируется с помощью LLM
✅ Классифицируется по намерениям и сущностям
Endpoint
POST /api/v1/speech-analytics/calls/upload/Аутентификация
Требуется токен авторизации в заголовке:
Authorization: Bearer <your_token>Параметры запроса
Content-Type
Обязательные поля
audio_file
File
Аудиофайл звонка
project
Integer
ID проекта (для определения схемы метаданных)
metadata
JSON
Метаданные звонка в формате JSON
Форматы аудио
Поддерживаемые форматы:
✅ MP3
✅ WAV
✅ OGG
✅ OPUS
✅ M4A
✅ FLAC
Ограничения:
Максимальный размер файла: 20 МБ
Рекомендуемое качество: 16 kHz, 16-bit
Для стерео: канал 0 = менеджер, канал 1 = клиент
Структура метаданных
Обязательные поля
interaction_id(string) - Уникальный идентификатор звонкаchannel(string) - Канал коммуникации:"voice","chat","email"и т.д.timestamp(string ISO 8601) - Время звонка
Примеры запросов
Ответ сервера
Поля ответа
id
Integer
ID созданного звонка
audio_file_uuid
UUID
Уникальный идентификатор файла
audio_file_name
String
Имя загруженного файла
status
String
Статус обработки (см. ниже)
metadata
Object
Сохраненные метаданные
created_at
DateTime
Время создания записи
message
String
Информационное сообщение
Статусы обработки
После загрузки звонок проходит через следующие статусы:
uploaded
✅ Файл загружен в S3
1-5 сек
transcribing
🔄 Идет транскрибация аудио
1-10 мин
transcribed
✅ Транскрибация завершена
-
analyzing
🔄 Идет анализ с помощью LLM
10-60 сек
completed
✅ Обработка завершена полностью
-
failed
❌ Ошибка обработки
-
Опрос статуса:
Ошибки
Лучшие практики
1. Качество аудио
✅ Используйте минимум 8 kHz sampling rate (рекомендуется 16 kHz)
✅ 16-bit PCM для лучшего качества транскрибации
✅ Избегайте высокого сжатия MP3 (используйте bitrate ≥ 128 kbps)
2. Стерео vs Mono
Стерео (2 канала): более точное разделение спикеров
Канал 0 = менеджер, Канал 1 = клиент
Обязательно укажите
stereo_mapping
Mono (1 канал): разделение по алгоритму speaker diarization
Менее точное, но работает без специальной настройки
3. Метаданные
✅ Заполняйте
interaction_idуникальным значением для каждого звонка✅ Указывайте имена участников для лучшей читаемости отчетов
✅ Добавляйте данные для связывания с CRM
✅ Используйте ISO 8601 формат для
timestamp
4. Обработка ошибок
✅ Проверяйте размер файла до загрузки (≤ 20 МБ)
✅ Валидируйте формат файла на клиенте
✅ Обрабатывайте таймауты (загрузка может занять 10-30 сек)
✅ Сохраняйте
idзвонка для последующего опроса статуса
5. Производительность
🚀 Используйте асинхронную загрузку когда грузите много файлов
🚀 Сжимайте аудио перед загрузкой (MP3 128 kbps оптимально)
🚀 Не ждите завершения обработки - используйте webhooks или polling
Получение результатов
Опрос статуса
Последнее обновление