---
title: "நிகழ்வுகள் பட்டியல்"
description: "ThunderPhone வெளியிடும் அனைத்து webhook நிகழ்வு வகைகளும்."
---

ஒவ்வொரு வெப்ஹூக் உடலிலும் `type` புலம் இருக்கும்; அதன் மதிப்பு இந்தப் பக்கத்தில் உள்ள நிகழ்வு
வகைகளில் ஒன்றாகும். நீங்கள் ஒரு
[எண்ட்பாயிண்ட்டுக்கு](/ta/webhooks/endpoints) சந்தா செலுத்தும்போது, `events` அணியில்
நீங்கள் விரும்பும் நிகழ்வு வகைகள் இருக்க வேண்டும் (அல்லது அனைத்திற்கும் சந்தா செலுத்த அது காலியாக இருக்கலாம் —
ஆனால் ஒவ்வொரு-முறைக்குமான நிகழ்வுகளான [`telephony.turn`](#telephony-turn) /
[`web.turn`](#web-turn) விதிவிலக்கு; அவற்றை வெளிப்படையாகப் பெயரிடும் எண்ட்பாயிண்ட்டுகளுக்கு மட்டுமே
அவை வழங்கப்படும்).

இந்த நிகழ்வுகள் இரண்டு வழங்கல் முறைகளில் அனுப்பப்படுகின்றன:

* **எண்ட்பாயிண்ட் வழங்கல்கள்** எப்போதும் **தடைசெய்யாத** அறிவிப்புகளாகும்
  மற்றும் [மீண்டும் முயற்சிகள்](/ta/webhooks/overview) கொண்டவை: எந்த 2xx பதிலையும் வழங்குங்கள்;
  ஒரே நிகழ்வை மீண்டும் செயலாக்காமல் இருக்க உறையில் `event_id` இருக்கும்.
* **தடுக்கும்** பரிமாற்றங்கள்
  [மரபு ஒற்றை-URL வெப்ஹூக்கில்](/ta/webhooks/overview) மட்டுமே இயங்கும்:
  [`telephony.incoming` / `web.incoming`](/ta/webhooks/call-incoming)
  உள்ளமைவு கோரிக்கை (வெப்ஹூக்-முறை எண்கள் மற்றும் விட்ஜெட் விசைகள், 10 s
  நேரமுடிவு) மற்றும் வெப்ஹூக்-முறை
  [கருவி அனுப்புதல்](/ta/tools/overview). உங்கள் பதில்
  நேரடி அழைப்பை வடிவமைக்கிறது.

கீழுள்ள எடுத்துக்காட்டு பேலோடுகள், அவற்றின் அனுப்பும் வரிசையில் உள்ள எண்ட்பாயிண்ட் உறையைக் காட்டுகின்றன
(விசைகள் அகரவரிசையில் வரிசைப்படுத்தப்பட்டுள்ளன: `data`, `event_id`, `type`); மரபு
வழங்கல்கள் `event_id` இல்லாமல் அதே `data`-வை கொண்டிருக்கும்.

## அழைப்பு நிகழ்வுகள்

### `telephony.incoming`

உள்வரும் அழைப்பு உங்கள் [தொலைபேசி எண்களில்](/api-reference/phone-numbers) ஒன்றை அடையும்போது அனுப்பப்படும்.
எண் ஏஜென்ட்-உள்ளமைவாக இருந்தாலும் webhook-உள்ளமைவாக இருந்தாலும், ஒவ்வொரு
உள்வரும் அழைப்பிற்கும் endpoint டெலிவரிகள் fire-and-forget அறிவிப்புகளாக அனுப்பப்படும்.
ஒதுக்கப்பட்ட ஏஜென்ட் இல்லாத எண்கள், legacy webhook-இல் கூடுதலாக **தடுக்கும்**
உள்ளமைவு கோரிக்கையைப் பெறும் — முழுமையான கோரிக்கை / பதில் schema-க்கு
[`telephony.incoming` / `web.incoming`](/ta/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 மற்றும் கட்டணச் சுருக்கம் ஆகியவை இதில் அடங்கும்.
payload schema-க்கு [`telephony.complete` / `web.complete`](/ta/webhooks/call-complete) ஐப் பார்க்கவும்.

| புலம் | வகை | விளக்கம் |
|-------|------|-------------|
| `agent_id` | integer \| null | ஒதுக்கப்பட்டிருந்தால், அழைப்பைக் கையாண்ட ஏஜென்ட் |
| `agent_name` | string \| null | ஒதுக்கப்பட்டிருந்தால், அழைப்பைக் கையாண்ட ஏஜென்ட் |

### `telephony.tool`

ஒரு தொலைபேசி அழைப்பு [function tool](/ta/tools/overview) ஐ அழைத்த பிறகு அனுப்பப்படும்.
தடுப்பற்ற தணிக்கை அறிவிப்பு — இந்த நிகழ்வு டெலிவர் செய்யப்படும்போது tool ஏற்கனவே
இயக்கப்பட்டிருக்கும்; இது உங்கள் சொந்த function tool-களை மட்டுமே உள்ளடக்கும்
(உள்ளமைக்கப்பட்ட, அறிவுத் தளம், app இணைப்பு அல்லது MCP tool-கள் அல்ல).

```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`

ஒரு தொலைபேசி அழைப்பு **நடந்துகொண்டிருக்கும்போது**, பேச்சைக் கொண்ட ஒவ்வொரு
turn நிகழும் போதும் அனுப்பப்படும் — ஏஜென்ட்டின் பேசப்பட்ட நிறைவுகள் மற்றும்
அழைப்பாளரின் டிரான்ஸ்கிரிப்ட் செய்யப்பட்ட turn-கள். polling செய்வதற்குப் பதிலாக
சாதாரண webhook-கள் மூலம் நேரடி உரையாடலைப் பின்தொடர இது உதவும்:
[`GET /v1/calls/{call_id}/transcript`](/api-reference/calls#get-transcript).
தடுப்பற்றது.

<Note>
  **வெளிப்படையான சந்தா அவசியம்.** பிற அனைத்து நிகழ்வு வகைகளிலிருந்தும் மாறாக,
  காலியான `events` array வழியாக turn நிகழ்வுகள் ஒருபோதும் டெலிவர் செய்யப்படாது
  (அனைத்திற்கும் சந்தா). ஒரு endpoint-இன் `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 | அழைப்பு வரலாற்றில் turn-இன் குறியீடு — வரிசைப்படுத்தலுக்கான நிலையான அடையாளம் |
| `role` | string | `assistant` (ஏஜென்ட் பேச்சு) அல்லது `user` (அழைப்பாளர் பேச்சு) |
| `text` | string | அனுப்பும் நேரத்தில் அறியப்பட்ட turn-இன் டிரான்ஸ்கிரிப்ட் உரை |
| `entry_type` | string | அடிப்படை வரலாற்று பதிவு வகை: `completion` (ஏஜென்ட்), அல்லது `user_turn` / `span` (அழைப்பாளர்) |
| `start_ms`, `end_ms` | integer | அழைப்பு தொடங்கியதிலிருந்து ms-இல் ஆடியோ இடைவெளிகள்; அனுப்பும் நேரத்தில் playout நேரம் ஏற்கனவே தெரிந்திருந்தால் மட்டுமே இருக்கும் |

<Note>
  டெலிவரி குறைந்தது ஒருமுறையாவது நடைபெறும்; turn-கள் **வரிசைக்கு வெளியே** வரக்கூடும்:
  envelope-இன் `event_id` மீது dedup செய்து, `position` அடிப்படையில் வரிசைப்படுத்தவும்.
  அழைப்பாளர் டிரான்ஸ்கிரிப்ட்கள் அனுப்பப்பட்ட பிறகும் மேம்படுத்தப்படலாம்; அழைப்புக்குப் பிந்தைய
  [`telephony.complete`](/ta/webhooks/call-complete) டிரான்ஸ்கிரிப்ட்டே அதிகாரப்பூர்வமானது.
  பேசப்பட்ட turn-கள் மட்டுமே அனுப்பப்படும் — tool அழைப்புகள், கிசுகிசுக்கள் மற்றும்
  பிற உள் பதிவுகள் இந்த stream-இல் ஒருபோதும் தோன்றாது.
</Note>

### `web.incoming`

`telephony.incoming`-இன் web-channel இணையானது; [web widget](/ta/widget/overview)
session அல்லது builder mic சோதனை அழைப்பு தொடங்கும்போது அனுப்பப்படும். ஒவ்வொரு web
session-க்கும் endpoint டெலிவரிகள் fire-and-forget ஆக இருக்கும். `mode="webhook"`-இல் உள்ள
publishable key-கள் legacy webhook-இல் கூடுதலாக **தடுக்கும்** உள்ளமைவு கோரிக்கையைப் பெறும் —
அந்த தடுக்கும் கோரிக்கையின் வடிவம் வேறுபட்டது (`origin_domain`,
`publishable_key_prefix`; தொலைபேசி எண்கள் இல்லை). பார்க்கவும்
[`telephony.incoming` / `web.incoming`](/ta/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"` என்ற literal ஆக இருக்கும். webhook-mode widget
session-களுக்கு `to_number` காலியாக இருக்கும் (session-இன் ஏஜென்ட் எண் உள்ளமைவுக்குப்
பிறகு ஒதுக்கப்படும்); builder mic சோதனை அழைப்புகளுக்கு `origin_domain` மற்றும்
`publishable_key_prefix` காலியாக இருக்கும்.

| புலம் | வகை | விளக்கம் |
|-------|------|-------------|
| `agent_id` | integer \| null | ஒதுக்கப்பட்டிருந்தால், அழைப்பைக் கையாண்ட ஏஜென்ட் |
| `agent_name` | string \| null | ஒதுக்கப்பட்டிருந்தால், அழைப்பைக் கையாண்ட ஏஜென்ட் |

### `web.complete`

`telephony.complete`-இன் web-channel இணையானது; web widget அழைப்புகள்
(`direction: "web"`) மற்றும் builder mic சோதனை அழைப்புகள்
(`direction: "test"`) ஆகியவற்றை உள்ளடக்கும். தடுப்பற்றது.
[`telephony.complete`](/ta/webhooks/call-complete)-இன் அதே payload வடிவம், கூடுதலாக
`origin_domain` உடன், `from_number` `"web"` ஆக அமைக்கப்பட்டிருக்கும்.

| புலம் | வகை | விளக்கம் |
|-------|------|-------------|
| `agent_id` | integer \| null | ஒதுக்கப்பட்டிருந்தால், அழைப்பைக் கையாண்ட ஏஜென்ட் |
| `agent_name` | string \| null | ஒதுக்கப்பட்டிருந்தால், அழைப்பைக் கையாண்ட ஏஜென்ட் |

<Note>
  legacy ஒற்றை-URL webhook-இல், builder mic சோதனை அழைப்புகள் வரலாற்று ரீதியாக
  `telephony.complete` என அறிக்கையிடப்படும் — அங்கு `direction:
  "web"` அழைப்புகள் மட்டுமே `web.complete` வகையைப் பயன்படுத்தும். endpoint அமைப்பு
  web மற்றும் test அழைப்புகள் இரண்டையும் `web.*`-க்கு வரைபடமாக்கும். வரலாற்று
  payload-களில் legacy `direction` மதிப்புகளான `widget` அல்லது `mic` இருக்கக்கூடும்.
</Note>

### `web.tool`

`telephony.tool`-இன் web-channel இணையானது. `data`-வில் `from_number` / `to_number`-க்குப்
பதிலாக `origin_domain` இருக்கும்.

| புலம் | வகை | விளக்கம் |
|-------|------|-------------|
| `agent_id` | integer \| null | ஒதுக்கப்பட்டிருந்தால், அழைப்பைக் கையாண்ட ஏஜென்ட் |
| `agent_name` | string \| null | ஒதுக்கப்பட்டிருந்தால், அழைப்பைக் கையாண்ட ஏஜென்ட் |

### `web.turn`

[`telephony.turn`](#telephony-turn)-இன் web-channel இணையானது; web widget அழைப்புகள்
மற்றும் builder mic சோதனை அழைப்புகளை உள்ளடக்கும். அதே payload வடிவம், ஆனால்
`from_number` / `to_number`-க்குப் பதிலாக `origin_domain` இருக்கும்.
`telephony.turn` போலவே, இதற்கும் **வெளிப்படையான சந்தா** தேவைப்படும் —
காலியான `events` array வழியாக இது ஒருபோதும் டெலிவர் செய்யப்படாது.

| புலம் | வகை | விளக்கம் |
|-------|------|-------------|
| `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` | string | தனிப்பயன் குரலின் பொது ஐடி |
| `voice.name` | string | `custom:<public_id>` வடிவிலான ஏஜென்ட் குரல் மதிப்பு |
| `voice.display_name` | string | நிறுவனத்திற்கு வெளிப்படும் குரல் பெயர் |
| `voice.language` | string | குளோனின் ஒற்றை மொழிக் குறியீடு |
| `voice.gender` | string | `male`, `female` அல்லது காலியான சரம் |
| `voice.status` | string | `voice.ready` க்கு `ready`; `voice.failed` க்கு `failed` |
| `voice.failure_reason` | string | வெற்றியின்போது காலியாக இருக்கும்; தோல்வியின்போது செயலாக்கத் தோல்வி விவரம் |
| `voice.created_at`, `voice.updated_at` | timestamp | ISO 8601 நேரமுத்திரைகள் |
| `reason` | string | தோல்வி விவரம்; `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 | தர அடையாளம் |
| `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>
  பிரித்தெடுக்கப்பட்ட மதிப்புகள் உரையாடலைப் பற்றிய மாடலின் விளக்கமாகும். ஒவ்வொரு
  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 | பிரித்தெடுத்தல் புலத்தால் குறியிடப்பட்ட சான்றுகள். ஒரு 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 க்கு புகாரளி** என்பதற்குப் பிறகு அல்லது Fix with 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 க்கு புகாரளி](/ta/guides/issues) என்பதைப் பார்க்கவும்.

---

## சோதனை அழைப்பு நிகழ்வுகள்

### `test-call.completed`

ஒரு
[test-call இயக்கம்](/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` உடன் பொருந்தும், இயக்கம் இலக்காகக் கொண்ட ஏஜென்ட் ஐடி அல்லது தொலைபேசி எண் ஐடி |
| `test_call_run.status` | string | `completed` அல்லது `failed` |
| `test_call_run.call_id` | integer \| null | அழைப்பு மேற்கொள்ளப்படுவதற்கு முன் இயக்கம் தோல்வியடைந்தால் `null` |
| `test_call_run.error_message` | string | வெற்றியடைந்தால் காலியாக இருக்கும் |

---

## எச்சரிக்கை நிகழ்வுகள்

### `alert.triggered`

**டெவலப்பர் வெப்ஹுக்குகளுக்கு வழங்கு** சேனல் இயக்கப்பட்டுள்ள ஒரு [எச்சரிக்கை விதி](/ta/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 | எச்சரிக்கை **தூண்டப்பட்டதற்கான** ஐடி — உறையின் வழங்கல் `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 சேனல்களை உருவாக்க [எச்சரிக்கைகள் வழிகாட்டியை](/ta/guides/alerts) பார்க்கவும்.

---

## தொடர்புடையவை

<CardGroup cols={2}>
  <Card title="telephony.incoming / web.incoming" icon="phone" href="/ta/webhooks/call-incoming">
    நீங்கள் பதிலளிக்க வேண்டிய தடைசெய்யும் உள்வரும் அழைப்பு பேலோட்.
  </Card>
  <Card title="telephony.complete / web.complete" icon="phone-slash" href="/ta/webhooks/call-complete">
    அழைப்புக்குப் பிந்தைய டிரான்ஸ்கிரிப்ட் மற்றும் மெட்ரிக்குகள்.
  </Card>
  <Card title="வெப்ஹுக் முடிவுப்புள்ளிகள்" icon="bolt" href="/ta/webhooks/endpoints">
    இந்த நிகழ்வுகளின் துணைக்குழுவிற்கு ஒரு URL-ஐ சந்தாதாரராக்கவும்.
  </Card>
  <Card title="செயல்பாட்டுக் கருவிகள்" icon="screwdriver-wrench" href="/ta/tools/overview">
    `telephony.tool` / `web.tool` நிகழ்வுகள் எவ்வாறு உருவாக்கப்படுகின்றன.
  </Card>
</CardGroup>
