Звонки через API: ошибки

Ошибки приходят тем же конвертом { error, description, data }, что и в остальном API. Отказ по звонку — 409 с error: call_refused, причина — в data.reason.

HTTPКодЧто значит и что делать
400invalid_requestНеверные поля, какие — в data: номер не 7–15 цифр, operator_id не из /operators/, неверный параметр истории. Исправьте поля из data и повторите.
401unauthorizedКлюча нет, он испорчен или отозван. Проверьте заголовок Authorization или создайте новый ключ.
403forbiddenУ ключа нет права calls:voice. Создайте Ключ для звонков.
404not_found, channel_not_foundЗвонка или линии нет для этого ключа: чужая линия, линия не выбрана для ключа, скрытый диалог. Отметьте линию в ключе.
409call_ownedЗвонок уже чей-то: его взял оператор или другой ключ. Программе ничего делать не нужно.
409call_not_yoursГолос и это действие — только для звонка вашего ключа. Сначала примите звонок: accept.
409call_not_ringingЗвонок уже не звонит: его взяли или он закончился. Узнайте, что со звонком: GET /calls/<id>/.
409call_not_transferableСейчас звонок нельзя передать: он не в разговоре, например у клиента ещё идут гудки. Повторите, когда клиент ответит.
409transfer_unsupportedМессенджер линии не умеет передавать звонок посреди разговора (WhatsApp Cloud, MAX). Договорите с клиентом программой или положите трубку.
409command_in_progressПрошлая команда по звонку ещё выполняется: повторите чуть позже
409calls_unsupportedЛиния не звонит: тип линии или звонки на ней выключены. Включите звонки линии: Каналы → шестерёнка у линии → Звонки.
409contact_refuses_automationКлиент просил не звонить ему автоматически: TehProf Dialogs не звонит. Позвонить ему может оператор.
429rate_limitedСлишком часто. Сколько ждать — в Retry-After

Лимиты частоты запросов — те же, что у остального API: списки, история и итог считаются как чтение, команды и голос — как отправка. Коды закрытия голосового соединения — в статье Команды и голос.

Установите TehProf Dialogs в свою CRM

Установка приложения и подключение WhatsApp по QR-коду бесплатны. Подписка на линию оплачивается отдельно.