Каталог на събитията

Всеки webhook body има поле type, чиято стойност е един от типовете събития на тази страница. Когато се абонирате за крайна точка, масивът events трябва да съдържа желаните от вас типове събития (или да е празен, за да се абонирате за всички).

Тези събития се предават по два начина:

Примерните payload-и по-долу показват обвивката за крайна точка в реда, в който се предава по мрежата (ключовете са подредени по азбучен ред: data, event_id, type); остарелите доставки съдържат същото data без event_id.

Събития за обаждания

telephony.incoming

Изпраща се, когато входящо обаждане достигне един от Вашите телефонни номера. Доставките към крайни точки са известия без изчакване, изпращани за всяко входящо обаждане, независимо дали номерът е конфигуриран за агент или за уебхук. Номерата без назначен агент получават допълнително блокиращата конфигурационна заявка към наследения уебхук — вижте telephony.incoming / web.incoming за пълната схема на заявката/отговора.

{
  "data": {
    "call_id": 987654321,
    "from_number": "+14155550199",
    "to_number": "+15551234567"
  },
  "event_id": "3f6b2ad0-1c9e-4a57-9f2b-8f6f0f9d2f11",
  "type": "telephony.incoming"
}

telephony.complete

Изпраща се, когато приключи входящо или изходящо телефонно обаждане. Неблокиращо. Включва транскрипцията, URL адреса на записа, когато е наличен, и обобщение на таксуването. Вижте telephony.complete / web.complete за схемата на полезния товар.

telephony.tool

Изпраща се, след като телефонно обаждане извика инструмент за функция. Неблокиращо известие за одит — инструментът вече е изпълнен, когато това събитие бъде доставено; то обхваща Вашите собствени инструменти за функции (не вградени инструменти, инструменти за база знания, връзка с приложение или MCP инструменти).

{
  "data": {
    "arguments": { "date": "2026-04-21" },
    "call_id": 987654321,
    "from_number": "+14155550199",
    "response": {
      "response": { "available_slots": ["9:00 AM", "2:00 PM"] },
      "status": 200
    },
    "to_number": "+15551234567",
    "tool_name": "search_appointments"
  },
  "event_id": "1f0a7c3e-52d4-4a0e-8f4b-b1a6a1c0d9e2",
  "type": "telephony.tool"
}

response е резултатът от изпълнението: {"status": <http status>, "response": <your endpoint's JSON>} при успех или {"status": <status>, "error": "<message>"} при неуспех.

web.incoming

Еквивалентът на telephony.incoming за уеб канала, изпращан при започване на сесия с уеб уиджет или тестово обаждане с микрофон в конструктора. Доставките към крайни точки са без изчакване за всяка уеб сесия. Публикуемите ключове в mode="webhook" получават допълнително блокиращата конфигурационна заявка към наследения уебхук — тази блокираща заявка има различна структура (origin_domain, publishable_key_prefix; без телефонни номера). Вижте telephony.incoming / web.incoming.

{
  "data": {
    "call_id": 987654322,
    "from_number": "web",
    "origin_domain": "https://example.com",
    "publishable_key_prefix": "pk_live_a1b2",
    "to_number": "+15551234567"
  },
  "event_id": "9a2b4c6d-8e0f-4a1b-9c2d-3e4f5a6b7c8d",
  "type": "web.incoming"
}

from_number винаги е буквалната стойност "web". За сесии с уиджети в режим на уебхук to_number е празно (номерът на агента за сесията се задава след конфигурирането); за тестови обаждания с микрофон в конструктора origin_domain и publishable_key_prefix са празни.

web.complete

Еквивалентът на telephony.complete за уеб канала, обхващащ обаждания с уеб уиджети (direction: "web") и тестови обаждания с микрофон в конструктора (direction: "test"). Неблокиращо. Същата структура на полезния товар като telephony.complete, плюс origin_domain, със зададено from_number на "web".

web.tool

Еквивалентът на telephony.tool за уеб канала. data съдържа origin_domain вместо from_number / to_number.


Събития за гласове

Създаването на персонализиран глас е асинхронно. Тези неблокиращи събития Ви позволяват да реагирате на краен резултат, вместо да извършвате периодични заявки към крайната точка за подробности за клониране.

voice.ready

Изпраща се, когато обработката на персонализиран глас завърши и той може да бъде присвоен на агент.

{
  "data": {
    "voice": {
      "created_at": "2026-07-30T14:12:08.317Z",
      "display_name": "Support voice",
      "failure_reason": "",
      "gender": "female",
      "id": "cv_2f6f90b0e9a34ee8b39be7d1",
      "language": "en",
      "name": "custom:cv_2f6f90b0e9a34ee8b39be7d1",
      "status": "ready",
      "updated_at": "2026-07-30T14:13:31.605Z"
    }
  },
  "event_id": "2d5f0a61-e9b5-4a3c-b684-29d7d9e4b214",
  "type": "voice.ready"
}

voice.failed

Изпраща се, когато обработката на персонализиран глас достигне окончателна грешка.

{
  "data": {
    "reason": "audio sample could not be processed",
    "voice": {
      "created_at": "2026-07-30T14:12:08.317Z",
      "display_name": "Support voice",
      "failure_reason": "audio sample could not be processed",
      "gender": "female",
      "id": "cv_2f6f90b0e9a34ee8b39be7d1",
      "language": "en",
      "name": "custom:cv_2f6f90b0e9a34ee8b39be7d1",
      "status": "failed",
      "updated_at": "2026-07-30T14:13:31.605Z"
    }
  },
  "event_id": "3493e985-1a75-4f77-a10a-e74af440cd31",
  "type": "voice.failed"
}
ПолеТипОписание
voice.idнизПубличен идентификатор на персонализирания глас
voice.nameнизСтойност за гласа на агента във формат custom:<public_id>
voice.display_nameнизИме на гласа, видимо за организацията
voice.languageнизКодът на единствения език на клонирания глас
voice.genderнизmale, female или празен низ
voice.statusнизready за voice.ready; failed за voice.failed
voice.failure_reasonнизПразно при успех; подробности за грешката при обработката при неуспех
voice.created_at, voice.updated_atвремеви отпечатъкВремеви отпечатъци в ISO 8601 формат
reasonнизПодробности за грешката; присъства само при voice.failed

Събития за качество

call.graded

Изпраща се при завършване на AI оценяване за обаждане. Не блокира изпълнението.

{
  "data": {
    "call_id": 987654321,
    "grade": {
      "call_outcome": "success",
      "created_at": "2026-04-20T18:25:11.002Z",
      "detected_issues": [],
      "graded_at": "2026-04-20T18:25:11.002Z",
      "grader_model": "heuristic-v1",
      "id": 5512,
      "score": 92,
      "status": "completed",
      "summary": "Caller asked about their policy and got a full answer…"
    }
  },
  "event_id": "7c1d2e3f-4a5b-4c6d-8e9f-0a1b2c3d4e5f",
  "type": "call.graded"
}
ПолеТипОписание
grade.idintegerИдентификатор на оценката
grade.scoreinteger | null0–100
grade.call_outcomestringsuccess, failure, unknown или no_conversation
grade.summarystringОбобщение в един абзац
grade.detected_issuesarrayНизове с проблеми, открити от оценяващия компонент
grade.statusstringВинаги completed — изпращат се само завършени изпълнения
grade.grader_modelstringКой оценяващ модел е създал резултата (напр. heuristic-v1)
grade.graded_at, grade.created_attimestamp

issue.reported

Изпраща се при създаване на сигнал за проблем — подаден от потребител чрез таблото за управление (source: "user") или автоматично чрез оценяване на обаждане (source: "system"). Не блокира изпълнението.

{
  "data": {
    "call_id": 987654321,
    "issue_report": {
      "created_at": "2026-04-20T18:25:11.002Z",
      "description": "Five-second silence before responding to the main question.",
      "id": 4321,
      "severity": "warning",
      "source": "system",
      "status": "open",
      "title": "Agent paused too long"
    }
  },
  "event_id": "5e6f7a8b-9c0d-4e1f-8a2b-3c4d5e6f7a8b",
  "type": "issue.reported"
}
ПолеТипОписание
issue_report.severitystringcritical, warning или info
issue_report.statusstringopen или resolved
issue_report.sourcestringuser (подаден чрез таблото за управление) или system (създаден чрез оценяване)

Събития за тестови обаждания

test-call.completed

Изпраща се, когато изпълнение на тестово обаждане достигне краен статус — completed или failed, включително изпълнения, които са неуспешни при стартиране и никога не са създали обаждане. Не блокира изпълнението. Полезно за свързване на пакетни изпълнения в CI към вашите системи за чат и известия.

{
  "data": {
    "test_call_run": {
      "call_id": 987654321,
      "completed_at": "2026-04-20T18:25:04.822Z",
      "error_message": "",
      "id": 7110,
      "status": "completed",
      "target_id": 12,
      "target_type": "agent"
    }
  },
  "event_id": "2b3c4d5e-6f7a-4b8c-9d0e-1f2a3b4c5d6e",
  "type": "test-call.completed"
}
ПолеТипОписание
test_call_run.target_typestringagent или phone_number
test_call_run.target_idintegerИдентификаторът на агента или телефонния номер, към който е насочено изпълнението, съответстващ на target_type
test_call_run.statusstringcompleted или failed
test_call_run.call_idinteger | nullnull, когато изпълнението е неуспешно преди осъществяване на обаждане
test_call_run.error_messagestringПразно при успех

Събития за предупреждения

alert.triggered

Изпраща се, когато правило за предупреждение с активиран канал Изпращане до webhook адреси за разработчици премине прага си. Не блокира изпълнението. Правилото се задейства веднъж и след това спазва периода си на изчакване, така че продължително нарушение генерира по едно събитие за всеки прозорец на изчакване.

{
  "data": {
    "comparator": "lt",
    "event_id": "b8e6a1d4-2c3f-4a5b-9c8d-7e6f5a4b3c2d",
    "fired_at": "2026-04-20T18:00:00+00:00",
    "metric": "success_rate",
    "metric_value": 71.4,
    "rule_id": "d2c3b4a5-6f7e-4d8c-9b0a-1c2d3e4f5a6b",
    "rule_name": "Success rate below 80%",
    "threshold": 80.0,
    "window_hours": 24
  },
  "event_id": "4d5e6f7a-8b9c-4d0e-9f1a-2b3c4d5e6f7a",
  "type": "alert.triggered"
}
ПолеТипОписание
event_iddata)UUIDИдентификаторът на задействането на предупреждението — различен от event_id за доставката в обвивката
rule_id, rule_nameUUID, низПравилото, което се е задействало
metricнизsuccess_rate, failure_rate, avg_score, call_volume или suite_regression
comparatorнизlt, lte, gt или gte
metric_valueчислоСтойността на метриката за прозореца при задействане на правилото
thresholdчислоКонфигурираният праг
window_hoursцяло числоРетроспективен прозорец за оценяване
fired_atвремеви отпечатък

Вижте ръководството за предупреждения за създаване на правила, метрики, периоди на изчакване и канали за имейл / Slack.


Свързани