incoming_call_end
Triggered when an incoming call ends, regardless of whether it was answered, missed, or busy. This is the final event in the incoming call lifecycle and includes call duration and recording information.
When This Event Fires
- The caller or receiver hangs up
- The call times out without being answered
- The call is rejected or busy
Payload
| Field | Type | Description |
|---|---|---|
event | string | Always "incoming_call_end" |
caller | string | Caller phone number |
receiver | string | Receiver phone number |
time | string | Timestamp of the event |
pbx_id | string | Unique call identifier in the PBX |
duration | integer | Call duration in seconds (0 if not answered) |
audio_path | string | URL to the call recording, if available |
status | string | Call end status (see below) |
Status Values
| Status | Description |
|---|---|
ANSWER | Call was answered and completed normally |
MISSED | Call was not answered |
BUSY | Receiver was busy |
NOANSWER | No answer within the timeout period |
Example Payload
Answered call:
{
"event": "incoming_call_end",
"caller": "+33612345678",
"receiver": "+33198765432",
"time": "2025-01-15T10:35:00Z",
"pbx_id": "call_abc123",
"duration": 285,
"audio_path": "https://app.sipsim.com/recordings/call_abc123.mp3",
"status": "ANSWER"
}
Missed call:
{
"event": "incoming_call_end",
"caller": "+33612345678",
"receiver": "+33198765432",
"time": "2025-01-15T10:30:30Z",
"pbx_id": "call_abc123",
"duration": 0,
"audio_path": null,
"status": "MISSED"
}
Call Lifecycle
incoming_call_start— call initiatedincoming_call_answer— call answered (if applicable)incoming_call_end— call completed
Related Events
incoming_call_start— when the call startedincoming_call_answer— when the call was answeredoutgoing_call_end— equivalent event for outgoing callsvoicemail— if the caller leaves a voicemail after a missed callspeech— transcription of the call (generated asynchronously)summary— AI summary of the call (generated asynchronously)