Перейти к содержимому
Daber AI

Разработчикам

Всё, что делает панель управления, может сделать и ваш код

Публичный API с аутентификацией по ключу, подписанные вебхуки о завершении разговора, запись активности обратно в CRM и MCP-сервер, позволяющий собрать всё рабочее пространство из Claude или ChatGPT.

Коротко

Есть ли API для телефонного агента?

Да. Есть публичный REST API с аутентификацией по ключу, передаваемому в заголовке Authorization; через него можно поставить исходящий звонок в очередь, читать разговоры и расшифровки, а также управлять агентами, сценариями звонков и базой знаний. По завершении звонка на настроенный вами endpoint доставляется вебхук, подписанный HMAC, так что опрашивать систему не нужно. Если вы работаете в Salesforce или HubSpot, система может записать звонок обратно как завершённую активность, связанную с лидом или контактом. Всё это доступно и через удалённый MCP-сервер, который позволяет LLM-клиенту строить рабочее пространство и управлять им, вообще не написав кода. Полный справочник, поле за полем и маршрут за маршрутом, находится в документации OpenAPI, ссылка на которую есть на этой странице.

Живой справочник

Справочник генерируется из самого кода, поэтому всегда соответствует тому, что работает на самом деле. Маршрут, поле или код ошибки, который вы там видите, — это то, что возвращает сервер.

Открыть справочник API

https://server.daber.ai/v1/docs

Публичный REST API

Аутентификация по ключу в каждом запросе, snake_case в передаче данных и scopes на уровне маршрута: каждый ключ несёт заданный набор scopes, а ключ без нужного scope просто не получает маршрут. Ключ показывается один раз при создании; на нашей стороне хранится только его хеш.

  • Постановка исходящего звонка в очередь с необязательной привязкой к кампании, чтобы результат вошёл в её KPI
  • Чтение разговоров: метаданные, расшифровка, резюме, тональность и причина перевода на оператора
  • Управление агентами и сценариями звонков, включая создание схемы из существующего документа со сценарием
  • Запись в базу знаний — созданные через API записи попадают как черновики, а извлекаемыми их делает подтверждение в панели управления
  • Каждое изменение агента или схемы версионируется, в том числе пришедшее через API, — и его можно откатить

Поставить исходящий звонок в очередь

Минимальный запрос: идентификатор агента и номер для набора. Звонок попадает в очередь и идёт по тому же пути набора, который используют кампании, так что второго, иначе ведущего себя пути в коде нет.

curl -X POST https://server.daber.ai/v1/calls \
  -H "Authorization: Bearer dbr_live_xxxxxxxxxxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "agent_id": "3f9c1a52-7b41-4f0e-9c8d-2a5b6e7d8f10",
    "phone": "+972501234567"
  }'
В ответе возвращается идентификатор запроса на звонок. Результат — ответили или нет, что было сказано и что резюмировано — приходит вебхуком о завершении, а не в ответе на этот запрос.

Вебхуки о завершении

Вместо того чтобы опрашивать API до конца звонка, вы регистрируете endpoint, и событие приходит к вам. Каждый запрос несёт подпись HMAC-SHA256 по метке времени и телу сообщения — её проверка на вашей стороне и есть разница между endpoint и endpoint, который может накормить кто угодно.

  • События жизненного цикла звонка, заказанного через API: поставлен в очередь, завершён, не удался
  • Событие о завершении разговора для каждого завершённого голосового разговора, а не только для заказанных через API
  • Подпись передаётся в отдельном заголовке и содержит метку времени, так что старую повторную отправку можно отклонить
  • Секрет можно раскрыть и заменить из настроек, а журнал доставки хранит последние попытки по каждому endpoint

Куда завершённый звонок идёт дальше

Завершённый звонок — это запись минимум в двух системах: нашей и вашей. Два способа закрыть этот разрыв, не создавая синхронизацию вручную.

Запись активности в CRM

Если звонка нет в CRM, то для менеджера по продажам его не было. По завершении система может создать завершённую активность в Salesforce или HubSpot, привязанную к нужному лиду или контакту и назначенную его владельцу, с резюме и результатом. Сбой записи в CRM никогда не роняет сам звонок — он фиксируется и показывается, а разговор остаётся у нас в целости.

Удалённый MCP-сервер

Тот же API, доступный как MCP-сервер, — так что рабочее пространство можно подключить к LLM-клиенту вроде Claude или ChatGPT и собирать его в диалоге: превратить документ со сценарием в схему звонка, создать агента, связать с ним схему и модели, добавить записи в базу знаний и сделать тестовый звонок. Аутентификация — тем же ключом API, а клиенту предоставляются только те инструменты, которые разрешают scopes этого ключа: LLM-клиент никогда не получает больше, чем получает ключ у него в руках.

Что стоит знать до вывода в продакшн

  • Рабочий ключ — такой же секрет, как любой другой: он показывается один раз и никогда не отправляется из браузера
  • Действует ограничение частоты запросов на ключ, а обнаруженный шквал набора может автоматически приостановить ключ — приостановку можно снять в настройках
  • Проверка подписи вебхука на вашей стороне обязательна, а не факультативна
  • Резюме и тональность записываются после окончания звонка, а не в момент разъединения, — поэтому они приходят вебхуком, а не в ответе на запрос набора

Позвонить ИИ-агенту

Настоящий звонок на иврите. Именно это услышат ваши клиенты.

Пусть ИИ-агент перезвонит

Оставьте номер — агент перезвонит меньше чем за минуту.

Отправляя форму, вы соглашаетесь, что мы свяжемся с вами по этому запросу. Звонок записывается и расшифровывается в текст.