Call Recordings
Get recordings list
This endpoint allows you to get a list of your call recordings and their duration in seconds (or null for directories). The recordings are listed by year, month, day, call direction.
The legacy behaviour of that endpoint (when you request without any header) is to give you the list formated in HTML.
Using that HTML view, you can use your browser to access the recordings or you can use a web crawler like wget
and download all your recordings in a batch.
GET https://api.ubity.com/recordings
Parameter | Description |
---|---|
key | Your Ubity API key |
# Using the wget
wget -r -np -c "https://api.ubity.com/recordings?key=KKKK"
# Example using headers
curl -H "Accept: application/json;version=0" "https://api.ubity.com/recordings?key=KKKK"
{
"api_key": "KKKK",
"code": 200,
"diagnostic": "Success",
"names": [
[
"https://api.ubity.com/recordings/2017?key=KKKK",
"2017",
null
],
[
"https://api.ubity.com/recordings/2018?key=KKKK",
"2018",
null
]
],
"stamp": "2018-02-15 11:27",
"title": "",
"url": "https://api.ubity.com/recordings?key=KKKK",
"version": 0
}
# Using headers and specific day and direction
% curl -H "Accept: application/json;version=0" "https://api.ubity.com/recordings/2018/02/15/out?key=KKKK"
{
"api_key": "KKKK",
"code": 200,
"diagnostic": "Success",
"names": [
[
"https://api.ubity.com/recordings/2018/02/15/out/42_20180215105055_15551112222_vgw99-1518709855.9602776.mp3?key=KKKK",
"42_20180215105055_15551112222_vgw99-1518709855.9602776.mp3",
123
],
[
"https://api.ubity.com/recordings/2018/02/15/out/43_20180215105055_15551113333_vgw99-1518709855.9602776.mp3?key=KKKK",
"43_20180215105055_15551113333_vgw99-1518709855.9602776.mp3",
456
],
],
"stamp": "2018-02-15 11:31",
"title": "2018/02/15/out",
"url": "https://api.ubity.com/recordings/2018/02/15/out?key=KKKK",
"version": 0
}
Get one recording from that list
You can just follow the URL available in the list. (headers are not needed)
curl "https://api.ubity.com/recordings/2018/02/15/out/43_20180215105055_15551113333_vgw99-1518709855.9602776.mp3?key=KKKK" --output recording.mp3
Delete one recording from that list
You can just follow the URL available in the list. (headers are not needed), and use the method DELETE.
curl -X DELETE "https://api.ubity.com/recordings/2018/02/15/out/43_20180215105055_15551113333_vgw99-1518709855.9602776.mp3?key=KKKK"
Get a specific call recording from and ID
In some case, you would want to download a recording from and ID received from a callback.
This endpoint allows your application to retrieve the recording of a specific call using its callid
.
The response is the actual MP3 file, with a Content-Type: audio/mpeg
header.
GET https://api.ubity.com/recording
Parameter | Description |
---|---|
key | Your Ubity API key |
callid | The call's unique identifier string |
curl "https://api.ubity.com/recording?key=KKKK&callid=vgw99-9518705130.2593504" --output recording.mp3
Delete a specific call recording from and ID
In some case, you would want to delete a recording from and ID received from a callback.
This endpoint allows your application to retrieve the recording of a specific call using its callid
.
The response is the actual MP3 file, with a Content-Type: audio/mpeg
header.
DELETE https://api.ubity.com/recording
Parameter | Description |
---|---|
key | Your Ubity API key |
callid | The call's unique identifier string |
curl -X DELETE "https://api.ubity.com/recording?key=KKKK&callid=vgw99-9518705130.2593504"
Check if a call recording actualy exists
Your application might want to know if a call recording exists before exposing it to the use (eg: if it's a web application). This endpoint allows your application to tell if a recording exists for a specific call.
GET https://api.ubity.com/recording_exists
Parameter | Description |
---|---|
key | Your Ubity API key |
callid | The call's unique identifier string |
curl -H "Accept: application/json;version=0" "https://api.ubity.com/recording_exists?key=KKKK&callid=vgw99-9518705130.2593504"
{
"api_key": "KKKK",
"code": 200,
"diagnostic": "Success",
"exists": true,
"mode": "normal",
"stamp": "2018-02-15 12:03",
"url": "https://api.ubity.com/recording_exists?key=KKKK&callid=vgw99-9518705130.2593504",
"version": 0
}
Pause recording while on call
You may want to pause recording while on call temporarly (for example when somebody is about to say his credit card number).
GET https://api.ubity.com/pause_recording
Parameter | Description |
---|---|
key | Your Ubity API key |
extension | extension with an active call |
state | 1 for pause 0 for unpause |
Tested scenarios are:
- Incoming call to extension
- Outgoing call from extension
- Blind or assisted transfer to extension
curl -H "Accept: application/json;version=0" "https://api.ubity.com/pause_recording?key=KKKK&extension=42&state=1'
{
"api_key": "KKKK",
"code": 200,
"details": {
"SIP/xxxxxxx-xxxxxxx": {
"reason": "",
"success": true
}
},
"diagnostic": "Success",
"mode": "normal",
"stamp": "2018-09-26 09:03",
"url": "https://api.ubity.com/pause_recording?key=KKKK&extension=42&state=1",
"version": 0
}%