In brief
- Every delivery is a POST
application/jsonto your registered URL. - Calls use
voice.call.*, do not confuse withmessage.*(WhatsApp) orsms.*. - Contracted number lifecycle (
phone_number.*) is documented under Phone numbers, Events. instanceIdis empty (voice does not use a channel instance).- Respond 2xx quickly; heavy processing goes to your queue.
How the POST looks
Headers:
X-Notifique-Signature, X-Notifique-Timestamp, X-Workspace-Id, X-Webhook-Event.
What your server should return
Slow processing? Return 200 immediately and process in the background.
Call events (voice.call.*)
Payload per call event
voice.call.initiated
voice.call.initiated
voice.call.received
voice.call.received
Fires on inbound calls. Use with
inboundVoiceAction: WEBHOOK_CONTROL on the number.voice.call.ringing
voice.call.ringing
voice.call.answered
voice.call.answered
voice.call.completed
voice.call.completed
voice.call.failed
voice.call.failed
voice.call.dtmf
voice.call.dtmf
voice.call.gather.ended
voice.call.gather.ended
voice.call.recording.ready
voice.call.recording.ready
voice.call.machine.detected
voice.call.machine.detected
Inbound with webhook
When the number usesinboundVoiceAction: WEBHOOK_CONTROL:
- Receive
voice.call.received - Control the session with API actions (
speak,gather,transfer,hangup) - Track
voice.call.answered,voice.call.dtmf,voice.call.completed, etc.
Next steps
- Quick Start: originate and control
- Introduction: call lifecycle
- Scopes: key permissions
- Phone numbers: contract and configure line
- Webhooks (general guide)

