Voice Webhooks
Receive real-time HTTP callbacks for call progress events.
Real-time Call Flow
Receive webhooks when a call rings, connects, and disconnects.
Secure Verification
Verify payload authenticity using HMAC signatures.
Webhook Payload Structure
When you provide a statusCallbackUrl in your API request, Sendexa will make a POST request to your URL as the call progresses.
Example Payload
JSON
{"event": "voice.completed","timestamp": "2024-01-15T10:30:50Z","data": {"callId": "call_xyz123abc","to": "233555539152","from": "233241234567","status": "completed","duration": 45}}
Available Events
voice.initiated: Call was queued.voice.ringing: The callee's phone is ringing.voice.in_progress: The call was answered.voice.completed: The call ended normally.voice.failed: The call failed to connect.voice.busy: The callee's line was busy.voice.no_answer: The callee did not answer.
Webhooks vs Action URL
The
statusCallbackUrl receives asynchronous notifications about call state changes. Do not confuse this with the actionUrl, which is fetched synchronously to determine what to DO when the call connects (e.g. Play, Say).