#Телефония
Управляйте внешними звонками через REST API. Регистрация звонков, автозвонки с синтезом речи и аудио, обратные звонки, транскрипции, статистика и TTS-голоса.
#Обзор
Telephony API — обёртка над Bitrix24 REST API (telephony.*, voximplant.*). Позволяет регистрировать внешние звонки в CRM, запускать автозвонки с синтезом речи, прикреплять транскрипции и аудиозаписи, делать обратные звонки и получать статистику.
Требуемый скоуп: telephony
Базовый URL: https://vibecode.bitrix24.tech/v1
Авторизация: заголовок X-Api-Key с вашим API-ключом.
#Быстрый старт
#1. Зарегистрируйте внешний звонок
curl -X POST https://vibecode.bitrix24.tech/v1/calls/register \
-H "X-Api-Key: $VIBE_KEY" \
-H "Content-Type: application/json" \
-d '{
"userId": 1,
"phoneNumber": "+79161234567",
"type": 2
}'
Ответ:
{
"success": true,
"data": {
"CALL_ID": "externalCall.abc123",
"CRM_CREATED_ENTITIES": ["CONTACT_1"]
}
}
#2. Завершите звонок
curl -X POST https://vibecode.bitrix24.tech/v1/calls/externalCall.abc123/finish \
-H "X-Api-Key: $VIBE_KEY" \
-H "Content-Type: application/json" \
-d '{
"userId": 1,
"duration": 120,
"statusCode": "200"
}'
#3. Прикрепите транскрипцию
curl -X POST https://vibecode.bitrix24.tech/v1/calls/externalCall.abc123/transcription \
-H "X-Api-Key: $VIBE_KEY" \
-H "Content-Type: application/json" \
-d '{
"content": "Оператор: Добрый день, компания ВибеКод.\nКлиент: Здравствуйте, хочу узнать про API."
}'
#Регистрация звонка
#POST /v1/calls/register
Регистрирует внешний звонок в Битрикс24. Создаёт запись о звонке и автоматически привязывает к CRM-сущности по номеру телефона.
Bitrix24 метод: telephony.externalcall.register
| Параметр | В | Тип | Обяз. | По умолч. | Описание |
|---|---|---|---|---|---|
userId |
body | number | да | — | ID пользователя Битрикс24, совершающего звонок |
phoneNumber |
body | string | да | — | Номер телефона клиента |
type |
body | number | нет | — | Тип звонка: 1 — исходящий, 2 — входящий |
lineNumber |
body | string | нет | — | Номер внешней линии |
crmCreate |
body | boolean | нет | — | Создать CRM-сущность, если не найдена по номеру |
curl -X POST https://vibecode.bitrix24.tech/v1/calls/register \
-H "X-Api-Key: $VIBE_KEY" \
-H "Content-Type: application/json" \
-d '{
"userId": 1,
"phoneNumber": "+79161234567",
"type": 2,
"crmCreate": true
}'
JavaScript:
const res = await fetch('https://vibecode.bitrix24.tech/v1/calls/register', {
method: 'POST',
headers: {
'X-Api-Key': VIBE_KEY,
'Content-Type': 'application/json'
},
body: JSON.stringify({
userId: 1,
phoneNumber: '+79161234567',
type: 2,
crmCreate: true
})
})
const { data } = await res.json()
console.log('Call ID:', data.CALL_ID)
console.log('CRM entities:', data.CRM_CREATED_ENTITIES)
Ответ:
{
"success": true,
"data": {
"CALL_ID": "externalCall.abc123",
"CRM_CREATED_ENTITIES": ["CONTACT_1"],
"CRM_ENTITY_TYPE": "CONTACT",
"CRM_ENTITY_ID": 42
}
}