The hangup object in the call.end webhook explains who disconnected a call and why, using the initiated_by, cause and cause_code fields.
The hangup object lives inside every call.end webhook payload and describes how the call disconnected.
| Field | Type | Description |
|---|---|---|
| initiated_by | string | UID of the leg that triggered the disconnect |
| cause | string | Human-readable hangup cause text (standard ISDN hangup cause code) |
| cause_code | string | The matching ISDN cause code, sent as a string |
The initiated_by field has always been available. The cause and cause_code fields are new and are currently sent only for outgoing calls.
The hangup object appears only when the call reached an answered state at least once. Missed calls and voicemails do not include it.
| Call outcome | hangup object present? |
|---|---|
| Answered, then ended | Yes |
| Missed | No |
| Voicemail | No |
Although cause_code is almost always a two-digit value such as "16", it is transmitted as a string so that every client system can treat it consistently without worrying about numeric type conversion. Parse it as a string in your integration.
| Code | Meaning |
|---|---|
| 16 | Normal clearing — the call ended normally |
| 17 | User busy — the called party's line was busy |
| 18 / 19 | No answer — the call rang but was not picked up |
| 21 | Call rejected — explicitly declined by the recipient |
| Code | Meaning |
|---|---|
| 27 | Destination out of order — invalid or disconnected number |
| 28 | Invalid number format |
| 34 | No circuit/channel available — carrier-side congestion |
| 38 | Network out of order — carrier network fault |
| 41 | Temporary failure — often safe to retry |
All values follow the standard ISDN (Q.850/Q.931) hangup cause code specification. If you see a code not covered above, look it up in any public ISDN cause code reference; the same meaning applies.
If you have questions about integrating these fields, reach out to your MyOperator support contact.
Keywords
webhook, hangup object, call.end, initiated_by, cause, cause_code, ISDN, Q.850, Q.931, MyOperator, disconnect reason, outbound calls