Bandwidth · AsyncAPI Specification

Bandwidth Voice Events

Version 2.0

Bandwidth Voice API sends webhooks (BXML callbacks) to your application for real-time call event notifications. These webhooks inform your application of call state changes and request BXML instructions to control call flow. Your application must respond with HTTP 200 and BXML verbs to direct the call, or HTTP 200 with an empty body to acknowledge the event.

View Spec View on GitHub CommunicationsCPaaSVoiceMessagingTelephonySMSMFAAsyncAPIWebhooksEvents

Channels

/voice/answer
publish onAnswerCallback
Call answered callback
Sent when an outbound call is answered or when an inbound call is received. This is the primary webhook for initiating call flow control via BXML response.
/voice/initiate
publish onInitiateCallback
Call initiate callback
Sent when an inbound call is received, before the answer callback. Allows your application to perform pre-answer logic such as call screening or routing decisions.
/voice/disconnect
publish onDisconnectCallback
Call disconnect callback
Sent when a call is disconnected for any reason. Provides the disconnect cause and final call state.
/voice/transferAnswer
publish onTransferAnswerCallback
Transfer answered callback
Sent when a transferred call is answered by the transfer target.
/voice/transferDisconnect
publish onTransferDisconnectCallback
Transfer disconnect callback
Sent when a transferred call is disconnected.
/voice/redirect
publish onRedirectCallback
Call redirect callback
Sent when a call is redirected to a new BXML URL via the update call API endpoint.
/voice/recordingComplete
publish onRecordingCompleteCallback
Recording complete callback
Sent when a call recording has been completed and the media file is available for download.
/voice/transcriptionAvailable
publish onTranscriptionAvailableCallback
Transcription available callback
Sent when a recording transcription has been completed and is available for retrieval.
/voice/gather
publish onGatherCallback
DTMF gather callback
Sent when a DTMF gather operation completes, either because the user pressed the terminating digit or the gather timed out.
/voice/conferenceCreated
publish onConferenceCreatedCallback
Conference created callback
Sent when a new conference is created.
/voice/conferenceMemberJoin
publish onConferenceMemberJoinCallback
Conference member join callback
Sent when a new member joins a conference.
/voice/conferenceMemberExit
publish onConferenceMemberExitCallback
Conference member exit callback
Sent when a member leaves a conference.
/voice/conferenceCompleted
publish onConferenceCompletedCallback
Conference completed callback
Sent when a conference ends (all members have left or it was explicitly completed).

Messages

AnswerCallback
Answer Callback
Sent when an outbound call is answered or an inbound call is received
InitiateCallback
Initiate Callback
Sent when an inbound call is received before the answer callback
DisconnectCallback
Disconnect Callback
Sent when a call is disconnected
TransferAnswerCallback
Transfer Answer Callback
Sent when a transferred call is answered
TransferDisconnectCallback
Transfer Disconnect Callback
Sent when a transferred call is disconnected
RedirectCallback
Redirect Callback
Sent when a call is redirected
RecordingCompleteCallback
Recording Complete Callback
Sent when a call recording is completed
TranscriptionAvailableCallback
Transcription Available Callback
Sent when a recording transcription is available
GatherCallback
Gather Callback
Sent when a DTMF gather operation completes
ConferenceCreatedCallback
Conference Created Callback
Sent when a conference is created
ConferenceMemberJoinCallback
Conference Member Join Callback
Sent when a member joins a conference
ConferenceMemberExitCallback
Conference Member Exit Callback
Sent when a member leaves a conference
ConferenceCompletedCallback
Conference Completed Callback
Sent when a conference ends

Servers

https
production {callbackUrl}
Your application's webhook endpoint. The URL is configured per-call via the answerUrl, disconnectUrl, and other callback URL parameters when creating or updating calls.