V1 (version 1)
Setup
A user with Superadmin access to a M8Com customer account will be able to setup Call Recording integrations. The following data is needed to setup a new integration and should be provided by the call recording receiver.
- Endpoint, the endpoint M8Com should send data to when a call recording is completed. https protocol is required and needs to be included in the when setting up the integration.
- Secret, a unique key or identifier that can be used to identify the request it will be included in the request header as Authorization Bearer
- 123ExampleCustomer321
- Settings, these settings can be toggled on the webhook and changed according to preference
- Send answer group recordings, If we should send recordings belonging to answer groups to this webhook
- All answer groups, all recordings belonging to answer groups on this customer will be sent to the webhook
- Specific answer groups, you can choose a specific set of answer groups that you want recordings from
- Send user recordings, if we should send recordings belonging to users to this webhook
- All users, all recordings belonging to users on this customer will be sent to the webhook
- Specific users, you can choose a specific set of users that you want recordings from
- Send answer group recordings, If we should send recordings belonging to answer groups to this webhook
Data Provided
Field | Type | Description |
---|---|---|
id | number | Unique identifier for the call |
fileUrls | string[] | Array of URLs to access the recording, expires after 30 min |
callerNumber | string | Number of the calller (unique identifier if VoIP) |
calleeNumber | string | Number of the calller (unique identifier if VoIP) |
startTime | number | Timestamp when call started |
endTime | number | Timestamp when call ended |
waitTime | number | null | Available for queue calls, how long did the caller wait (ms) |
talkTime | number | How long the call lasted (ms) |
agentId | string | null | Unique identifier for the agent (null if personal call) |
agentName | string | null | Name of agent (null if personal call) |
answerGroupName | string | null | Name of answer group (null if personal call) |
answerGroupId | string | null | Unique identifier of answer group (null if personal call) |
referredTo | string | null | Number caller was transferred to |
referredBy | string | null | Number caller was transferred from |
direction | string | Inbound/outbound (from the perspective of the recorder) |
recorderId | string | Unique identifier of user/agent doing the recording. (Email adress or phone number) |
Requests
After the service is connected a request will be sent to the webhook every time a call log with call recordings is created as long as the owner matches the toggled settings on the webhook. The request will look as follows.
{
"uri": ENDPOINT,
"method": "POST",
"headers": {
"Content-Type": "application/json",
"Authorization": `Bearer ${SECRET}`
},
"body": DATA
}
Service unavailable
In the case that endpoint does not respond with 200 when requests are made. M8Com will attempt to resend the call recordings using exponential back-off before disabling the integration. A disabled integration can be restarted from M8Com if the secret is known by an admin.
Last update: 2023-10-23 14:01