Hangup
Sent when the call ends. This is the event where talk and wait times become final; you can close your per call record here.
Sample body
{
"pbx_num": "8501234567",
"unique_id": "sip1-1767225600.10001",
"talktime": "35",
"internal_num": "100",
"incoming_number": "8501234567",
"scenario": "Hangup",
"customer_num": "05551112233",
"holdtime": "16",
"queue": "8501234567-queue-destek",
"timestamp": "1767225651000"
}
Send this body to your own address
The sample body above is sent to the address below as a POST request. The request goes from your browser, so the response cannot be read if the receiving endpoint sends no CORS header; the request itself still arrives. Use the cURL equivalent to try it from the server side.
cURL equivalent:
curl -X POST 'https://your-address.example/webhook' \
-H 'Content-Type: application/json' \
-d '{"pbx_num":"8501234567","unique_id":"sip1-1767225600.10001","talktime":"35","internal_num":"100","incoming_number":"8501234567","scenario":"Hangup","customer_num":"05551112233","holdtime":"16","queue":"8501234567-queue-destek","timestamp":"1767225651000"}'
Fields
| Field | Type | Description |
|---|---|---|
scenario | string | Always Hangup. |
pbx_num | string | Your PBX number. |
unique_id | string | Unique identifier of the call. |
internal_num | string | The extension involved in the call. |
incoming_number | string | Your number that was dialed. |
customer_num | string | Subscriber number on the other side. |
talktime | string | Talk time, in seconds. |
holdtime | string | Wait time, in seconds. |
queue | string | Full name of the queue the call went through. Not present on calls that never entered a queue. |
timestamp | string | Event time (ms, Unix epoch). |
If talktime is 0, no conversation took place at all, meaning the call was hung
up without being answered. On answered calls this field is greater than zero.
queue, not queue_nameIn this scenario the queue name arrives in the queue field, while in the
Queue and QueueLeave scenarios the same
information is in queue_name. Read it in a way that handles both names.
For the full summary of the call, the recording link and the final status, a
cdr event is also sent.