---
title: "ఈవెంట్‌ల కేటలాగ్"
description: "ThunderPhone పంపే అన్ని వెబ్‌హుక్ ఈవెంట్ రకాలు."
---

ప్రతి వెబ్‌హుక్ బాడీలో ఈ పేజీలోని ఈవెంట్ రకాలలో ఒకదాని విలువ ఉండే `type` ఫీల్డ్ ఉంటుంది. మీరు ఒక
[ఎండ్‌పాయింట్](/te/webhooks/endpoints)కు సబ్‌స్క్రైబ్ చేసినప్పుడు, `events` అరేలో
మీకు కావలసిన ఈవెంట్ రకాలు ఉండాలి (లేదా అన్నింటికీ సబ్‌స్క్రైబ్ కావడానికి అది ఖాళీగా ఉండాలి —
కానీ ప్రతి-టర్న్ ఈవెంట్‌లు [`telephony.turn`](#telephony-turn) /
[`web.turn`](#web-turn) మినహా; వీటిని స్పష్టంగా పేర్కొన్న ఎండ్‌పాయింట్‌లకే
పంపుతారు).

ఈ ఈవెంట్‌లను రెండు డెలివరీ విధానాలు అందిస్తాయి:

* **ఎండ్‌పాయింట్ డెలివరీలు** ఎల్లప్పుడూ [మళ్లీ ప్రయత్నాలతో](/te/webhooks/overview) కూడిన **బ్లాకింగ్ కాని** నోటిఫికేషన్‌లు:
  ఏదైనా 2xxతో ప్రతిస్పందించండి; డీడూప్లికేట్ చేయడానికి ఎన్వలప్‌లో `event_id` ఉంటుంది.
* **బ్లాకింగ్** ఎక్స్చేంజ్‌లు కేవలం
  [లెగసీ సింగిల్-URL వెబ్‌హుక్](/te/webhooks/overview)లోనే నడుస్తాయి: 
  [`telephony.incoming` / `web.incoming`](/te/webhooks/call-incoming)
  కాన్ఫిగరేషన్ అభ్యర్థన (వెబ్‌హుక్-మోడ్ నంబర్‌లు మరియు విడ్జెట్ కీలు, 10 s
  టైమ్‌అవుట్) మరియు వెబ్‌హుక్-మోడ్
  [టూల్ డిస్పాచ్](/te/tools/overview). మీ ప్రతిస్పందన
  ప్రత్యక్ష కాల్‌కు రూపమిస్తుంది.

క్రింది ఉదాహరణ పేలోడ్‌లు వైర్ క్రమంలో ఎండ్‌పాయింట్ ఎన్వలప్‌ను చూపుతాయి
(కీలు అక్షర క్రమంలో క్రమబద్ధీకరించబడ్డాయి: `data`, `event_id`, `type`); లెగసీ
డెలివరీలు `event_id` లేకుండా అదే `data`ను కలిగి ఉంటాయి.

## కాల్ ఈవెంట్‌లు

### `telephony.incoming`

ఇన్‌బౌండ్ కాల్ మీ [ఫోన్ నంబర్‌లలో](/api-reference/phone-numbers) ఒకదానికి చేరుకున్నప్పుడు పంపబడుతుంది. ఎండ్‌పాయింట్ డెలివరీలు ప్రతి ఇన్‌బౌండ్ కాల్‌కు పంపబడే ఫైర్-అండ్-ఫర్‌గెట్ నోటిఫికేషన్‌లు; నంబర్ ఏజెంట్-కాన్ఫిగర్ చేయబడిందా లేదా వెబ్‌హుక్-కాన్ఫిగర్ చేయబడిందా అన్నది సంబంధం లేదు. కేటాయించిన ఏజెంట్ లేని నంబర్‌లు లెగసీ వెబ్‌హుక్‌లో అదనంగా **బ్లాకింగ్** కాన్ఫిగరేషన్ అభ్యర్థనను అందుకుంటాయి — పూర్తి అభ్యర్థన / ప్రతిస్పందన స్కీమా కోసం
[`telephony.incoming` / `web.incoming`](/te/webhooks/call-incoming) చూడండి.

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

| ఫీల్డ్ | రకం | వివరణ |
|-------|------|-------------|
| `agent_id` | integer \| null | ఏజెంట్ కేటాయించబడి ఉంటే, కాల్‌ను నిర్వహించిన ఏజెంట్ |
| `agent_name` | string \| null | ఏజెంట్ కేటాయించబడి ఉంటే, కాల్‌ను నిర్వహించిన ఏజెంట్ |

### `telephony.complete`

ఇన్‌బౌండ్ లేదా అవుట్‌బౌండ్ టెలిఫోనీ కాల్ ముగిసినప్పుడు పంపబడుతుంది. నాన్-బ్లాకింగ్. ట్రాన్స్‌క్రిప్ట్, అందుబాటులో ఉన్నప్పుడు రికార్డింగ్ URL మరియు బిల్లింగ్ సారాంశాన్ని కలిగి ఉంటుంది. పేలోడ్ స్కీమా కోసం
[`telephony.complete` / `web.complete`](/te/webhooks/call-complete) చూడండి.

| ఫీల్డ్ | రకం | వివరణ |
|-------|------|-------------|
| `agent_id` | integer \| null | ఏజెంట్ కేటాయించబడి ఉంటే, కాల్‌ను నిర్వహించిన ఏజెంట్ |
| `agent_name` | string \| null | ఏజెంట్ కేటాయించబడి ఉంటే, కాల్‌ను నిర్వహించిన ఏజెంట్ |

### `telephony.tool`

టెలిఫోనీ కాల్ ఒక [ఫంక్షన్ టూల్](/te/tools/overview)ను ఇన్‌వోక్ చేసిన తర్వాత పంపబడుతుంది. నాన్-బ్లాకింగ్ ఆడిట్ నోటిఫికేషన్ — ఈ ఈవెంట్ డెలివర్ అయ్యే సమయానికి టూల్ ఇప్పటికే అమలై ఉంటుంది; ఇది మీ స్వంత ఫంక్షన్ టూల్‌లను మాత్రమే కవర్ చేస్తుంది (అంతర్నిర్మిత, నాలెడ్జ్-బేస్, యాప్-కనెక్షన్ లేదా MCP టూల్‌లు కాదు).

```json
{
  "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>"}`.

| ఫీల్డ్ | రకం | వివరణ |
|-------|------|-------------|
| `agent_id` | integer \| null | ఏజెంట్ కేటాయించబడి ఉంటే, కాల్‌ను నిర్వహించిన ఏజెంట్ |
| `agent_name` | string \| null | ఏజెంట్ కేటాయించబడి ఉంటే, కాల్‌ను నిర్వహించిన ఏజెంట్ |

### `telephony.turn`

టెలిఫోనీ కాల్ **కొనసాగుతున్నప్పుడు**, మాట్లాడిన ప్రతి టర్న్ జరిగిన వెంటనే ఒక్కోసారి పంపబడుతుంది — ఏజెంట్ మాట్లాడిన పూర్తి ప్రతిస్పందనలు మరియు కాలర్ ట్రాన్స్‌క్రైబ్ చేసిన టర్న్‌లు. పోలింగ్ చేయకుండా సాధారణ వెబ్‌హుక్‌ల ద్వారా ప్రత్యక్ష సంభాషణను అనుసరించడానికి ఇది మిమ్మల్ని అనుమతిస్తుంది
[`GET /v1/calls/{call_id}/transcript`](/api-reference/calls#get-transcript).
నాన్-బ్లాకింగ్.

<Note>
  **స్పష్టమైన సబ్‌స్క్రిప్షన్ అవసరం.** ఇతర ప్రతి ఈవెంట్ రకానికి భిన్నంగా,
  టర్న్ ఈవెంట్‌లు ఖాళీ `events` అరే ద్వారా ఎప్పుడూ డెలివర్ చేయబడవు
  (అన్నింటికీ సబ్‌స్క్రైబ్ చేయడం). ఎండ్‌పాయింట్ `events`
  జాబితాలో `telephony.turn` / `web.turn` స్పష్టంగా ఉన్నప్పుడే వాటిని అందుకుంటుంది.
</Note>

```json
{
  "data": {
    "call_id": 987654321,
    "entry_type": "completion",
    "from_number": "+14155550199",
    "position": 7,
    "role": "assistant",
    "start_ms": 15200,
    "text": "How many employees does your company have?",
    "to_number": "+15551234567"
  },
  "event_id": "8d3f5a2c-7b1e-4c9a-b6d0-2e4f6a8c0d1e",
  "type": "telephony.turn"
}
```

| ఫీల్డ్ | రకం | వివరణ |
|-------|------|-------------|
| `agent_id` | integer \| null | ఏజెంట్ కేటాయించబడి ఉంటే, కాల్‌ను నిర్వహించిన ఏజెంట్ |
| `agent_name` | string \| null | ఏజెంట్ కేటాయించబడి ఉంటే, కాల్‌ను నిర్వహించిన ఏజెంట్ |
| `position` | integer | కాల్ చరిత్రలో టర్న్ సూచిక — క్రమబద్ధీకరణకు స్థిరమైన గుర్తింపు |
| `role` | string | `assistant` (ఏజెంట్ మాట) లేదా `user` (కాలర్ మాట) |
| `text` | string | విడుదల సమయంలో తెలిసిన టర్న్ ట్రాన్స్‌క్రిప్ట్ టెక్స్ట్ |
| `entry_type` | string | అంతర్లీన చరిత్ర ఎంట్రీ రకం: `completion` (ఏజెంట్), లేదా `user_turn` / `span` (కాలర్) |
| `start_ms`, `end_ms` | integer | కాల్ ప్రారంభం నుంచి msలో ఆడియో ఆఫ్‌సెట్‌లు; విడుదల సమయంలో ప్లేఅవుట్ సమయం ఇప్పటికే తెలిసినప్పుడే ఉంటాయి |

<Note>
  డెలివరీ కనీసం-ఒక్కసారి జరుగుతుంది మరియు టర్న్‌లు **క్రమం తప్పి** రావచ్చు:
  ఎన్వలప్‌లోని `event_id`పై డీడూప్లికేట్ చేసి, `position` ప్రకారం క్రమబద్ధీకరించండి. కాలర్
  ట్రాన్స్‌క్రిప్ట్‌లు విడుదల తర్వాత కూడా మెరుగుపడవచ్చు; కాల్ తర్వాతి
  [`telephony.complete`](/te/webhooks/call-complete) ట్రాన్స్‌క్రిప్ట్ అధికారికమైనది. మాట్లాడిన టర్న్‌లు మాత్రమే విడుదలవుతాయి — టూల్ కాల్‌లు, విస్పర్‌లు మరియు
  ఇతర అంతర్గత ఎంట్రీలు ఈ స్ట్రీమ్‌లో ఎప్పుడూ కనిపించవు.
</Note>

### `web.incoming`

`telephony.incoming` యొక్క వెబ్-చానల్ సమానమైనది; [వెబ్ విడ్జెట్](/te/widget/overview) సెషన్ లేదా బిల్డర్ మైక్ టెస్ట్ కాల్ ప్రారంభమైనప్పుడు పంపబడుతుంది. ప్రతి వెబ్ సెషన్‌కు ఎండ్‌పాయింట్ డెలివరీలు ఫైర్-అండ్-ఫర్‌గెట్‌గా ఉంటాయి. `mode="webhook"`లోని పబ్లిషబుల్ కీలు లెగసీ వెబ్‌హుక్‌లో అదనంగా **బ్లాకింగ్** కాన్ఫిగరేషన్ అభ్యర్థనను అందుకుంటాయి — ఆ బ్లాకింగ్ అభ్యర్థనకు భిన్నమైన ఆకృతి ఉంటుంది (`origin_domain`,
`publishable_key_prefix`; ఫోన్ నంబర్‌లు ఉండవు). చూడండి
[`telephony.incoming` / `web.incoming`](/te/webhooks/call-incoming).

```json
{
  "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` ఖాళీగా ఉంటాయి.

| ఫీల్డ్ | రకం | వివరణ |
|-------|------|-------------|
| `agent_id` | integer \| null | ఏజెంట్ కేటాయించబడి ఉంటే, కాల్‌ను నిర్వహించిన ఏజెంట్ |
| `agent_name` | string \| null | ఏజెంట్ కేటాయించబడి ఉంటే, కాల్‌ను నిర్వహించిన ఏజెంట్ |

### `web.complete`

`telephony.complete` యొక్క వెబ్-చానల్ సమానమైనది; వెబ్ విడ్జెట్ కాల్‌లు (`direction: "web"`) మరియు బిల్డర్ మైక్ టెస్ట్ కాల్‌లను
(`direction: "test"`) కవర్ చేస్తుంది. నాన్-బ్లాకింగ్. [`telephony.complete`](/te/webhooks/call-complete) మాదిరిగానే పేలోడ్ ఆకృతి ఉంటుంది, అదనంగా `origin_domain` ఉంటుంది మరియు `from_number` విలువ `"web"`గా సెట్ చేయబడుతుంది.

| ఫీల్డ్ | రకం | వివరణ |
|-------|------|-------------|
| `agent_id` | integer \| null | ఏజెంట్ కేటాయించబడి ఉంటే, కాల్‌ను నిర్వహించిన ఏజెంట్ |
| `agent_name` | string \| null | ఏజెంట్ కేటాయించబడి ఉంటే, కాల్‌ను నిర్వహించిన ఏజెంట్ |

<Note>
  లెగసీ సింగిల్-URL వెబ్‌హుక్‌లో, బిల్డర్ మైక్ టెస్ట్ కాల్‌లు
  చారిత్రకంగా `telephony.complete`గా నివేదించబడతాయి — అక్కడ `direction:
  "web"` కాల్‌లు మాత్రమే `web.complete` రకాన్ని ఉపయోగిస్తాయి. ఎండ్‌పాయింట్ వ్యవస్థ
  వెబ్ మరియు టెస్ట్ కాల్‌లు రెండింటినీ `web.*`కు మ్యాప్ చేస్తుంది. చారిత్రక పేలోడ్‌లలో
  లెగసీ `direction` విలువలు `widget` లేదా `mic` ఉండవచ్చు.
</Note>

### `web.tool`

`telephony.tool` యొక్క వెబ్-చానల్ సమానమైనది. `data`లో
`from_number` / `to_number`కు బదులుగా `origin_domain` ఉంటుంది.

| ఫీల్డ్ | రకం | వివరణ |
|-------|------|-------------|
| `agent_id` | integer \| null | ఏజెంట్ కేటాయించబడి ఉంటే, కాల్‌ను నిర్వహించిన ఏజెంట్ |
| `agent_name` | string \| null | ఏజెంట్ కేటాయించబడి ఉంటే, కాల్‌ను నిర్వహించిన ఏజెంట్ |

### `web.turn`

[`telephony.turn`](#telephony-turn) యొక్క వెబ్-చానల్ సమానమైనది; వెబ్ విడ్జెట్ కాల్‌లు మరియు బిల్డర్ మైక్ టెస్ట్ కాల్‌లను కవర్ చేస్తుంది. `from_number` / `to_number`కు బదులుగా `origin_domain`తో, పేలోడ్ ఆకృతి ఒకేలా ఉంటుంది. `telephony.turn` మాదిరిగానే, దీనికి **స్పష్టమైన సబ్‌స్క్రిప్షన్** అవసరం — ఖాళీ `events` అరే ద్వారా ఇది ఎప్పుడూ డెలివర్ చేయబడదు.

| ఫీల్డ్ | రకం | వివరణ |
|-------|------|-------------|
| `agent_id` | integer \| null | ఏజెంట్ కేటాయించబడి ఉంటే, కాల్‌ను నిర్వహించిన ఏజెంట్ |
| `agent_name` | string \| null | ఏజెంట్ కేటాయించబడి ఉంటే, కాల్‌ను నిర్వహించిన ఏజెంట్ |

---

## వాయిస్ ఈవెంట్‌లు

అనుకూల వాయిస్ సృష్టి అసమకాలికంగా జరుగుతుంది. ఈ నిరోధించని ఈవెంట్‌లు మీరు
పోలింగ్ చేయడానికి బదులుగా తుది ఫలితానికి ప్రతిస్పందించడానికి అనుమతిస్తాయి
[క్లోన్ వివరాల ఎండ్‌పాయింట్](/api-reference/custom-voices#list-and-retrieve-clones).

`voice.ready` మరియు `voice.failed` అనేవి `events: []` ఉన్న సంస్థ-వ్యాప్త
ఎండ్‌పాయింట్‌కు మాత్రమే అందించబడతాయి. వాటిని స్పష్టమైన ఈవెంట్ ఫిల్టర్‌లుగా ఎంచుకోలేరు.

### `voice.ready`

అనుకూల వాయిస్ ప్రాసెసింగ్ పూర్తై, ఏజెంట్‌కు కేటాయించగలిగినప్పుడు పంపబడుతుంది.

```json
{
  "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`

అనుకూల వాయిస్ ప్రాసెసింగ్ శాశ్వత వైఫల్యానికి చేరుకున్నప్పుడు పంపబడుతుంది.

```json
{
  "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` | స్ట్రింగ్ | `voice.ready` కోసం `ready`; `voice.failed` కోసం `failed` |
| `voice.failure_reason` | స్ట్రింగ్ | విజయవంతమైనప్పుడు ఖాళీగా ఉంటుంది; వైఫల్యమైనప్పుడు ప్రాసెసింగ్ వైఫల్య వివరాలు |
| `voice.created_at`, `voice.updated_at` | టైమ్‌స్టాంప్ | ISO 8601 టైమ్‌స్టాంప్‌లు |
| `reason` | స్ట్రింగ్ | వైఫల్య వివరాలు; `voice.failed`లో మాత్రమే ఉంటుంది |

---

## నాణ్యత ఈవెంట్‌లు

### `call.graded`

కాల్ కోసం [AI గ్రేడింగ్ రన్](/api-reference/calls#ai-call-grading)
పూర్తయినప్పుడల్లా పంపబడుతుంది. నాన్-బ్లాకింగ్.

```json
{
  "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"
}
```

| ఫీల్డ్ | రకం | వివరణ |
|-------|------|-------------|
| `agent_id` | integer \| null | కేటాయించబడినట్లయితే, కాల్‌ను నిర్వహించిన ఏజెంట్ |
| `agent_name` | string \| null | కేటాయించబడినట్లయితే, కాల్‌ను నిర్వహించిన ఏజెంట్ |
| `grade.id` | integer | గ్రేడ్ id |
| `grade.score` | integer \| null | 0–100 |
| `grade.call_outcome` | string | `success`, `failure`, `unknown`, లేదా `no_conversation` |
| `grade.summary` | string | ఒక పేరాగ్రాఫ్ సారాంశం |
| `grade.detected_issues` | array | గ్రేడర్ గుర్తించిన సమస్య స్ట్రింగ్‌లు |
| `grade.status` | string | ఎల్లప్పుడూ `completed` — పూర్తయిన రన్‌లు మాత్రమే పంపుతాయి |
| `grade.grader_model` | string | ఫలితాన్ని రూపొందించిన గ్రేడర్ (ఉదా. `heuristic-v1`) |
| `grade.graded_at`, `grade.created_at` | timestamp | |

<Note>
  ఒక కాల్‌కు ఒకటి కంటే ఎక్కువసార్లు గ్రేడింగ్ చేయవచ్చు — రికార్డింగ్
  అందుబాటులోకి వచ్చిన తర్వాత పూర్తి మోడల్ గ్రేడ్ తరచుగా వేగవంతమైన హ్యూరిస్టిక్
  గ్రేడ్‌ను అనుసరిస్తుంది మరియు మాన్యువల్ రీగ్రేడ్‌లు కూడా సాధ్యమే. పూర్తయిన
  ప్రతి రన్ దాని స్వంత `call.graded` ఈవెంట్‌ను పంపుతుంది; తాజా `graded_at`ను
  ప్రామాణికమైనదిగా పరిగణించండి.
</Note>

### `call.data_extracted`

`telephony.complete` / `web.complete` తర్వాత ఆలస్యమైన రీట్రై లేదా
[`POST /v1/calls/{call_id}/extract`](/api-reference/calls#run-data-extraction) ద్వారా మాన్యువల్ రీ-రన్‌తో సహా,
స్ట్రక్చర్డ్ డేటా ఎక్స్‌ట్రాక్షన్ విజయవంతంగా పూర్తయినప్పుడల్లా పంపబడుతుంది.
నాన్-బ్లాకింగ్.

బ్లాకింగ్ ఎక్స్‌ట్రాక్షన్ మోడ్‌లో, పూర్తయ్యే ఈవెంట్ సాధారణంగా 75-సెకన్ల
ఎక్స్‌ట్రాక్షన్ బడ్జెట్ కంటే ఎక్కువ వేచి ఉండదు. ఎక్స్‌ట్రాక్షన్ వర్కర్ ప్రాసెస్
కోల్పోతే, ప్రొడక్షన్ ఫైనలైజేషన్ డ్రెయిన్ (ప్రతి ఐదు నిమిషాలకు) మరొక
ఎక్స్‌ట్రాక్షన్ ప్రయత్నాన్ని ప్రారంభించే ముందు `blocking_deadline_at` దాటిన
పూర్తి ఈవెంట్‌ను విడుదల చేస్తుంది. తర్వాతి విజయాన్ని ఈ ఈవెంట్‌గా విడిగా
పంపుతారు.

<Warning>
  ఎక్స్‌ట్రాక్ట్ చేసిన విలువలు సంభాషణకు మోడల్ చేసిన అర్థవివరణ. ప్రతి non-null
  విలువలో అది ఆధారపడిన కోట్, స్పీకర్ పాత్ర, టర్న్ ఇండెక్స్‌తో పాటు రన్-స్థాయి
  వెరిఫికేషన్ ఫ్లాగ్ ఉంటాయి. డబ్బు, గుర్తింపు లేదా యాక్సెస్‌కు సంబంధించిన
  నిర్ణయాలు తీసుకునే ముందు ఫలితాన్ని ధృవీకరించండి.
</Warning>

```json
{
  "data": {
    "call_id": 987654321,
    "agent_id": 12,
    "agent_name": "Acme intake",
    "extracted_data": {
      "status": "completed",
      "fields": {
        "customer_name": "Alex Morgan",
        "appointment_date": "2026-04-23"
      },
      "evidence": {
        "customer_name": {
          "quote": "My name is Alex Morgan",
          "speaker_role": "caller",
          "turn_index": 4
        },
        "appointment_date": {
          "quote": "April 23 works for me",
          "speaker_role": "caller",
          "turn_index": 7
        }
      },
      "verification": "verified",
      "field_reasons": {},
      "schema_version": "92850758e231a3c95a..."
    },
    "extracted_at": "2026-04-20T18:25:11.002Z",
    "model": "gemini-2.5-flash"
  },
  "event_id": "4d79ef1d-c2b1-4ed6-85b8-8326bd2895ef",
  "type": "call.data_extracted"
}
```

| ఫీల్డ్ | రకం | వివరణ |
|-------|------|-------------|
| `agent_id` | integer \| null | కేటాయించబడినట్లయితే, కాల్‌ను నిర్వహించిన ఏజెంట్ |
| `agent_name` | string \| null | కేటాయించబడినట్లయితే, కాల్‌ను నిర్వహించిన ఏజెంట్ |
| `extracted_data.status` | string | ఈ ఈవెంట్‌కు ఎల్లప్పుడూ `completed` |
| `extracted_data.fields` | object | కాన్ఫిగర్ చేసిన ఎక్స్‌ట్రాక్షన్ ఫీల్డ్ కీల ద్వారా సూచించబడిన విలువలు; అందుబాటులో లేని విలువలు `null` |
| `extracted_data.evidence` | object | ఎక్స్‌ట్రాక్షన్ ఫీల్డ్ ద్వారా సూచించబడిన ఆధారాలు. non-null విలువలో ఖచ్చితమైన స్ట్రక్చరల్‌గా తనిఖీ చేసిన కోట్ (గరిష్ఠంగా 1,000 అక్షరాలు), `speaker_role` (`caller` లేదా `agent`), మరియు `turn_index` ఉంటాయి; మోడల్ తిరిగి ఇచ్చిన పొడవైన కోట్‌లను కత్తిరించకుండా తిరస్కరిస్తారు మరియు దాని ఫీల్డ్ `null` అయినప్పుడల్లా ఆధారం `null`గా ఉంటుంది |
| `extracted_data.verification` | string | ప్రతి అభ్యర్థి ఫీల్డ్‌కు స్వతంత్ర ఆధారాల పాస్ ఖచ్చితంగా ఒక చెల్లుబాటు అయ్యే తీర్పును ఇచ్చినప్పుడే `verified`. పాస్ విఫలమైనప్పుడు, టైమ్ అవుట్ అయినప్పుడు, తగిన బడ్జెట్ లేనప్పుడు లేదా తప్పుగా రూపొందిన లేదా పాక్షిక అవుట్‌పుట్ ఇచ్చినప్పుడు `unavailable` అని అర్థం. పూర్తిగా అందుబాటులో లేని పాస్ కస్టమర్ సమీక్ష కోసం స్ట్రక్చరల్ ఆధారాలతో నిర్ధారించిన విలువలను భద్రపరుస్తుంది. పాక్షిక అవుట్‌పుట్ కోసం, చెల్లుబాటు అయ్యే తీర్పులు వర్తింపజేయబడతాయి మరియు ఖచ్చితంగా ఒక చెల్లుబాటు అయ్యే తీర్పు లేని ప్రతి అభ్యర్థిని null చేస్తారు |
| `extracted_data.field_reasons` | object | స్ట్రక్చరల్ గ్రౌండింగ్ లేదా స్వతంత్ర వెరిఫైయర్ ద్వారా null చేయబడిన ఫీల్డ్‌ల కారణాలు |
| `extracted_data.schema_version` | string | ఈ ఎక్స్‌ట్రాక్షన్‌కు ఉపయోగించిన ఖచ్చితమైన ఫీల్డ్ స్కీమా హ్యాష్ |
| `extracted_at` | timestamp | ISO 8601 పూర్తయిన సమయం |
| `model` | string | ఎక్స్‌ట్రాక్షన్‌కు ఉపయోగించిన మోడల్ |

### `campaign.completed`

క్యాంపెయిన్ `running` నుండి `completed`కు మారినప్పుడు ఒక్కసారి పంపబడుతుంది;
దాని షెడ్యూల్ ముగిసినా లేదా అన్ని కాంటాక్ట్‌లు టెర్మినల్ స్థితులకు చేరుకున్నా.
రన్నర్ రీట్రైలు మరొక ఈవెంట్‌ను పంపవు. ఈ సంస్థ-స్థాయి లైఫ్‌సైకిల్ ఈవెంట్
ఏజెంట్-స్కోప్డ్ ఎండ్‌పాయింట్‌లకు కాకుండా సంస్థ-స్కోప్డ్ ఎండ్‌పాయింట్‌లకు మాత్రమే
పంపబడుతుంది. నాన్-బ్లాకింగ్.

```json
{
  "data": {
    "campaign_id": "3f6b2c9e-2a0d-4c63-b6d6-a708dc98f403",
    "name": "May win-back",
    "agent_id": 12,
    "status": "completed",
    "started_at": "2026-04-20T17:00:00Z",
    "completed_at": "2026-04-20T18:25:11Z",
    "counts": {
      "contacts_total": 150,
      "completed": 121,
      "failed": 11,
      "no_answer": 18,
      "remaining": 0
    }
  },
  "event_id": "8d8f52ce-6b46-423f-9dde-cea0b91ec135",
  "type": "campaign.completed"
}
```

నాలుగు ఫలితాల కౌంట్‌లు పరస్పరం వేర్వేరు మరియు వాటి మొత్తం `contacts_total`కు
సమానం: `completed`లో విజయవంతమైన కాంటాక్ట్‌లు ఉంటాయి; `no_answer`లో తుది
ఫలితం జవాబు లేకపోవడం అయిన టెర్మినల్ విఫలమైన/ఎగ్జాస్ట్ అయిన కాంటాక్ట్‌లు
ఉంటాయి; `failed`లో మిగతా అన్ని టెర్మినల్ విఫలమైన/ఎగ్జాస్ట్ అయిన కాంటాక్ట్‌లు
ఉంటాయి; మరియు `remaining`లో పెండింగ్, షెడ్యూల్ చేసిన లేదా ప్రస్తుతం కాల్ చేస్తున్న
కాంటాక్ట్‌లు ఉంటాయి. రీట్రై కోసం వేచి ఉన్న కాంటాక్ట్‌కు ఇటీవలి ప్రయత్నంలో జవాబు
లేకపోయినా అది `remaining`గానే ఉంటుంది. ఒక్కసారి మాత్రమే తీసే పూర్తి స్నాప్‌షాట్‌కు
ముందు ప్రోగ్రెస్‌లో ఉన్న కాల్‌లు సరిచేయబడతాయి. `started_at` అనేది కాన్ఫిగర్ చేసిన
క్యాంపెయిన్ ప్రారంభం లేదా ప్రారంభం కాన్ఫిగర్ చేయనప్పుడు క్యాంపెయిన్ సృష్టించిన సమయం.

### `issue.reported`

[సమస్య నివేదిక](/api-reference/issue-reports) సృష్టించబడినప్పుడు పంపబడుతుంది —
డ్యాష్‌బోర్డ్ నుండి వినియోగదారు ఫైల్ చేసినప్పుడు (`source: "user"`) లేదా కాల్
గ్రేడింగ్ ద్వారా స్వయంచాలకంగా సృష్టించినప్పుడు (`source: "system"`).
నాన్-బ్లాకింగ్.

```json
{
  "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"
}
```

| ఫీల్డ్ | రకం | వివరణ |
|-------|------|-------------|
| `agent_id` | integer \| null | కేటాయించబడినట్లయితే, కాల్‌ను నిర్వహించిన ఏజెంట్ |
| `agent_name` | string \| null | కేటాయించబడినట్లయితే, కాల్‌ను నిర్వహించిన ఏజెంట్ |
| `issue_report.severity` | string | `critical`, `warning`, లేదా `info` |
| `issue_report.status` | string | `open` లేదా `resolved` |
| `issue_report.source` | string | `user` (డ్యాష్‌బోర్డ్ నుండి ఫైల్ చేసినది) లేదా `system` (గ్రేడింగ్ ద్వారా సృష్టించినది) |

<Note>
  కాల్‌ను రీగ్రేడ్ చేయడం దాని సిస్టమ్-సృష్టించిన సమస్య నివేదికలను తిరిగి
  రూపొందిస్తుంది, దీని వల్ల పునఃసృష్టించిన నివేదికల కోసం `issue.reported`
  మళ్లీ పంపబడుతుంది. ప్రతి అంతర్లీన సమస్యకు ఒక నోటిఫికేషన్ మాత్రమే కావాలంటే
  `call_id` + `title`పై డీడుప్లికేట్ చేయండి.
</Note>

### `issue.escalated`

సిబ్బంది సమీక్ష కోసం సమస్య నమూనాను ThunderPhoneకు పంపినప్పుడు పంపబడుతుంది:
**ThunderPhoneకు నివేదించండి** తర్వాత లేదా AIతో పరిష్కరించు కస్టమర్-వైపు
పరిష్కారాన్ని నిర్ధారించలేకపోయి సమస్యను స్వయంచాలకంగా రూట్ చేసినప్పుడు. సంస్థ-వ్యాప్త
ఎండ్‌పాయింట్‌లు మాత్రమే ఈ ఈవెంట్‌ను అందుకుంటాయి.

```json
{
  "data": {
    "automatic": false,
    "cluster_id": "7ac2844c-2df0-4fa8-a560-7378da649e19",
    "escalation_id": "ec99f52b-c8c0-41dd-a4f2-dd8a07b10894",
    "status": "open"
  },
  "event_id": "d8f8f420-7a42-45ba-bcf1-b747f9bbecda",
  "type": "issue.escalated"
}
```

| ఫీల్డ్ | రకం | వివరణ |
|-------|------|-------------|
| `automatic` | boolean | స్వయంచాలక ఎస్కలేషన్‌కు `true`; మాన్యువల్ ఎస్కలేషన్‌కు `false` |
| `cluster_id` | UUID | ఎస్కలేట్ చేసిన సమస్య నమూనా |
| `escalation_id` | UUID | ఎస్కలేషన్ రికార్డ్ |
| `status` | string | ఈవెంట్ పంపబడినప్పుడు `open` |

ఇది నోటిఫికేషన్ మాత్రమే, ఆధారాల బండిల్ కాదు. సమస్య నమూనాతో దీనిని అనుసంధానించడానికి
`cluster_id`ను ఉపయోగించండి. [ThunderPhoneకు నివేదించండి](/te/guides/issues) చూడండి.

---

## టెస్ట్ కాల్ ఈవెంట్‌లు

### `test-call.completed`

ఒక
[టెస్ట్-కాల్ రన్](/api-reference/test-calls#test-call-run-object)
`completed` లేదా `failed` వంటి తుది స్థితికి చేరుకున్నప్పుడు పంపబడుతుంది; ప్రారంభంలో విఫలమై ఎప్పుడూ కాల్‌ను రూపొందించని రన్‌లు కూడా ఇందులో ఉంటాయి. నాన్-బ్లాకింగ్. బ్యాచ్ CI రన్‌లను మీ చాట్/నోటిఫికేషన్ సిస్టమ్‌లతో అనుసంధానించడానికి ఉపయోగకరం.

```json
{
  "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"
}
```

| ఫీల్డ్ | రకం | వివరణ |
|-------|------|-------------|
| `agent_id` | integer \| null | ఏజెంట్ కేటాయించబడినప్పుడు, కాల్‌ను నిర్వహించిన ఏజెంట్ |
| `agent_name` | string \| null | ఏజెంట్ కేటాయించబడినప్పుడు, కాల్‌ను నిర్వహించిన ఏజెంట్ |
| `test_call_run.target_type` | string | `agent` లేదా `phone_number` |
| `test_call_run.target_id` | integer | `target_type`కు సరిపోలే, రన్ లక్ష్యంగా చేసుకున్న ఏజెంట్ id లేదా ఫోన్-నంబర్ id |
| `test_call_run.status` | string | `completed` లేదా `failed` |
| `test_call_run.call_id` | integer \| null | కాల్ చేయడానికి ముందే రన్ విఫలమైనప్పుడు `null` |
| `test_call_run.error_message` | string | విజయవంతమైనప్పుడు ఖాళీగా ఉంటుంది |

---

## అలర్ట్ ఈవెంట్‌లు

### `alert.triggered`

**డెవలపర్ వెబ్‌హుక్స్‌కు డెలివర్ చేయండి** ఛానెల్ ప్రారంభించబడిన [అలర్ట్ నియమం](/te/guides/alerts) దాని థ్రెషోల్డ్‌ను దాటినప్పుడు పంపబడుతుంది.
నాన్-బ్లాకింగ్. ఒక నియమం ఒకసారి అమలవుతుంది, ఆ తర్వాత దాని కూల్‌డౌన్‌ను గౌరవిస్తుంది; కాబట్టి నిరంతర ఉల్లంఘన ప్రతి కూల్‌డౌన్ విండోకు ఒక ఈవెంట్‌ను ఉత్పత్తి చేస్తుంది.

```json
{
  "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 | అలర్ట్ **అమలైన id** — ఎన్వలప్ డెలివరీ `event_id`కు భిన్నమైనది |
| `rule_id`, `rule_name` | UUID, string | అమలైన నియమం |
| `metric` | string | `success_rate`, `failure_rate`, `avg_score`, `call_volume`, లేదా `suite_regression` |
| `comparator` | string | `lt`, `lte`, `gt`, లేదా `gte` |
| `metric_value` | number | నియమం అమలైనప్పుడు విండోలోని మెట్రిక్ విలువ |
| `threshold` | number | కాన్ఫిగర్ చేసిన థ్రెషోల్డ్ |
| `window_hours` | integer | ముగింపు మూల్యాంకన విండో |
| `fired_at` | timestamp | |

నియమాలు, మెట్రిక్‌లు, కూల్‌డౌన్‌లు, అలాగే ఇమెయిల్ / Slack ఛానెల్‌లను సృష్టించడం కోసం [అలర్ట్‌ల గైడ్](/te/guides/alerts) చూడండి.

---

## సంబంధితవి

<CardGroup cols={2}>
  <Card title="telephony.incoming / web.incoming" icon="phone" href="/te/webhooks/call-incoming">
    మీరు ప్రతిస్పందించాల్సిన బ్లాకింగ్ ఇన్‌బౌండ్-కాల్ పేలోడ్.
  </Card>
  <Card title="telephony.complete / web.complete" icon="phone-slash" href="/te/webhooks/call-complete">
    కాల్ తర్వాత ట్రాన్స్‌క్రిప్ట్ మరియు మెట్రిక్‌లు.
  </Card>
  <Card title="వెబ్‌హుక్ ఎండ్‌పాయింట్‌లు" icon="bolt" href="/te/webhooks/endpoints">
    ఈ ఈవెంట్‌ల ఉపసమితికి ఒక URLను సబ్‌స్క్రైబ్ చేయండి.
  </Card>
  <Card title="ఫంక్షన్ టూల్స్" icon="screwdriver-wrench" href="/te/tools/overview">
    `telephony.tool` / `web.tool` ఈవెంట్‌లు ఎలా రూపొందించబడతాయి.
  </Card>
</CardGroup>
