#Справочник голосов

GET /v1/calls/voices

Возвращает словарь доступных голосов для синтеза речи. Идентификаторы из ответа передаются как параметр voice в `POST /v1/calls/auto-call`.

#Примеры

#curl — личный ключ

Terminal
curl https://vibecode.bitrix24.tech/v1/calls/voices \
  -H "X-Api-Key: YOUR_API_KEY"

#curl — OAuth-приложение

Terminal
curl https://vibecode.bitrix24.tech/v1/calls/voices \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN"

#JavaScript — личный ключ

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/calls/voices', {
  headers: { 'X-Api-Key': 'YOUR_API_KEY' },
})

const { success, data } = await res.json()
const voices = Object.entries(data)
// [['ruinternalfemale', 'Русский (женский) (Default)'], ...]

#JavaScript — OAuth-приложение

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/calls/voices', {
  headers: {
    'X-Api-Key': 'YOUR_APP_KEY',
    'Authorization': 'Bearer USER_SESSION_TOKEN',
  },
})

const { data } = await res.json()

#Поля ответа

Поле Тип Описание
success boolean Всегда true при успехе
data object Словарь голосов: ключ — идентификатор голоса, значение — название для отображения с указанием источника синтеза в скобках
data.<voiceId> string Название голоса. В скобках — источник синтеза: Amazon или Default. Передавайте voiceId как параметр voice в автозвонке

#Пример ответа

JSON
{
  "success": true,
  "data": {
    "auenglishfemale": "Австралийский английский (женский) (Amazon)",
    "brportuguesefemale": "Бразильский португальский (женский) (Amazon)",
    "ruinternalfemale": "Русский (женский) (Default)",
    "ruinternalmale": "Русский (мужской) (Default)",
    "ukenglishfemale": "Английский (женский) (Amazon)",
    "ukenglishmale": "Английский (мужской) (Amazon)",
    "usenglishfemale": "Американский английский (женский) (Default)",
    "usenglishmale": "Американский английский (мужской) (Default)",
    "eurfrenchfemale": "Французский (женский) (Amazon)",
    "eurfrenchmale": "Французский (мужской) (Amazon)",
    "eurgermanfemale": "Немецкий (женский) (Default)",
    "eurgermanmale": "Немецкий (мужской) (Default)",
    "jpjapanesefemale": "Японский (женский) (Default)",
    "chchinesefemale": "Китайский (женский) (Default)"
  }
}

#Пример ответа при ошибке

403 — нет скоупа telephony:

JSON
{
  "success": false,
  "error": {
    "code": "SCOPE_DENIED",
    "message": "This endpoint requires 'telephony' scope"
  }
}

#Ошибки

HTTP Код Описание
401 MISSING_API_KEY Не передан заголовок X-Api-Key
401 INVALID_API_KEY Неверный API-ключ
401 TOKEN_MISSING Ключ не имеет настроенных токенов Битрикс24
403 SCOPE_DENIED Ключу не хватает скоупа telephony
422 BITRIX_ERROR Битрикс24 вернул ошибку (текст в error.message)
429 RATE_LIMITED Превышен лимит запросов
502 BITRIX_UNAVAILABLE Битрикс24 недоступен

Полный список общих ошибок API — Ошибки.

#Известные особенности

data — объект-словарь, не массив. Для перебора всех голосов используйте Object.entries(data). Получить конкретный голос по идентификатору: data['ruinternalfemale'].

Голос по умолчанию. При вызове автозвонка без параметра voice Битрикс24 выбирает голос по умолчанию исходя из языка портала. Для русскоязычного портала — ruinternalfemale.

Набор голосов зависит от тарифа. Доступные голоса и их идентификаторы могут различаться в зависимости от тарифного плана портала.

#Смотрите также