ایونٹس کیٹلاگ

ہر webhook باڈی میں ایک type فیلڈ ہوتا ہے جس کی قدر اس صفحے پر موجود ایونٹ اقسام میں سے ایک ہوتی ہے۔ جب آپ کسی endpoint کو سبسکرائب کرتے ہیں، تو events array میں وہ ایونٹ اقسام شامل ہونی چاہئیں جو آپ چاہتے ہیں (یا ہر چیز کو سبسکرائب کرنے کے لیے اسے خالی چھوڑ دیں)۔

یہ ایونٹس دو ڈیلیوری انداز میں پہنچائے جاتے ہیں:

ذیل میں مثال payloads endpoint envelope کو اس کے wire order (کلیدیں حروف تہجی کے لحاظ سے ترتیب دی گئی ہیں: data، event_id، type) میں دکھاتے ہیں؛ legacy ڈیلیوریز میں event_id کے بغیر وہی data ہوتا ہے۔

کال ایونٹس

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 میں from_number / to_number کے بجائے origin_domain شامل ہوتا ہے۔


وائس ایونٹس

حسب ضرورت وائس کی تخلیق غیر ہم وقت ہوتی ہے۔ یہ نان بلاکنگ ایونٹس آپ کو پولنگ کرنے کے بجائے حتمی نتیجے پر ردعمل دینے دیتے ہیں کلون کی تفصیل کے اینڈ پوائنٹ۔

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اسٹرنگحسب ضرورت وائس کی عوامی ID
voice.nameاسٹرنگایجنٹ وائس کی قدر، custom:<public_id> کی صورت میں
voice.display_nameاسٹرنگتنظیم کے لیے ظاہر ہونے والا وائس نام
voice.languageاسٹرنگکلون کا واحد زبان کوڈ
voice.genderاسٹرنگmale، female، یا خالی اسٹرنگ
voice.statusاسٹرنگvoice.ready کے لیے ready؛ voice.failed کے لیے 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گریڈ ID
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وہ ایجنٹ ID یا فون نمبر ID جسے رن نے ہدف بنایا، جو target_type سے مطابقت رکھتا ہے
test_call_run.statusstringcompleted یا failed
test_call_run.call_idinteger | nullجب کال لگانے سے پہلے رن ناکام ہو جائے تو null
test_call_run.error_messagestringکامیابی پر خالی

الرٹ ایونٹس

alert.triggered

اس وقت بھیجا جاتا ہے جب ڈیولپر ویب ہکس پر پہنچائیں چینل فعال رکھنے والا کوئی الرٹ اصول اپنی حد عبور کرے۔ یہ بلاک نہیں کرتا۔ اصول ایک بار فائر ہوتا ہے اور پھر اپنے کول ڈاؤن کا احترام کرتا ہے، اس لیے مسلسل خلاف ورزی ہر کول ڈاؤن ونڈو میں ایک ایونٹ پیدا کرتی ہے۔

{
  "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_id (میں data)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 چینلز بنانے کے لیے الرٹس گائیڈ دیکھیں۔


متعلقہ