Webhooks facilitate real-time communication between websites or applications by allowing one application to send HTTP requests, including payload data, to another application when a predefined event or trigger occurs.
With the Voiso Webhooks feature, developers can subscribe to call events, offering numerous advantages for custom integrations and automated tasks:
Voiso webhooks employ the POST method with the HTTP request protocol when sending payloads. Payloads are structured as follows:
Parameter | Description | Data type |
---|---|---|
name | The name of the web hook. | String |
event | One of the supported Voiso contact center events. Refer to Supported events. | String |
entity | The name of the contact center entity associated with the webhook payload. Entities include: xx | String |
timestamp | The timestamp indicating when the event triggering the webhook occurred. | Datetime |
key | Each webhook should have a unique contact center key or user-defined token. This key is used by the external system to validate the authenticity of the webhook. | Datetime |
payload | The payload data contained within the webhook. The structure and content of the payload vary depending on the specific event and object involved. It can be a simple or nested structure, accommodating different scenarios. | Simple or nested structure |
Example:
"name": "user_created",
"event": "inbound.call.hangup"
"entity": "user",
"timestamp": 2024-06-19T14:30:13+0000,
"key": "fiv39qu4eh8H83e4dieEw44"
"payload":
{
"id": 28982,
"name": "Nurul Rahman",
"email": "n.rahman@mail.com",
"sip_account": "n.rahman@contactcenter.voiso.com",
"role_name": "agent",
"extension": 1234,
"caller_id": 2594,
"timezone": "Malaysian Standard Time",
"webrtc_ringtone": "null",
"team": ["shift_manager", "quality_management"],
"supervisor_in_teams": ["quality_management"],
"skills": ["mandarin", "malay", "product_query", "billing"],
"queues": [first_line"],
"employee_id": 13113
}
When coding your response to the webhook, note that Voiso expects an HTTP 200
status code to indicate a successful operation. If no response is received, Voiso assumes that the request timed out or an error occurred.
The Webhooks feature supports the following call events:
Event | Description | Webhook |
---|---|---|
inbound.call.answered | An agent answers an inbound call. | Call notify |
inbound.call.hangup | An inbound call ends. | Call outcome logging |
dialer.call.answered | An agent is connected to a Dialer call answered by a contact. | Call notify |
dialer.call.hangup | A Dialer call ends. | Call outcome logging |
outbound.call.answered | A contact answers an outbound call. | Call notify |
outbound.call.hangup | An outbound call ends. | Call outcome logging |
Use the Webhooks page to create and manage your webhooks. Refer to Webhooks in the Voiso Documentation Portal for more information.
As an administrator, you can subscribe to Call Notify. Call Notify is triggered when a call is answered.
The Call Notify webhook enables you to automate sending either a GET or POST method to your CRM to request that the contact information for the current inbound or outbound Dialer call be displayed in the CRM browser window.
The Call Notify webhook initiates when a conversation starts. For outbound calls, this is when the contact answers. For inbound calls, this is when the call is connected to an agent.
As an administrator, you can subscribe to Call Outcome Logging. Call Outcome Logging is triggered when a call is answered.
The Call Outcome Logging webhook is triggered automatically and can be used to log the call details to your application.
The Call Outcome Logging webhook enables you to automate sending information to your CRM (POST) after an agent wraps up a call.