Skip to main content

Voice Log Download

Download voice recordings for completed calls. This API provides programmatic access to call recordings in various formats.

Download Voice Recording​

GET /v3/accounts/<account_sid>/calls/<call_sid>/voice-logs

Path Parameters​

ParameterTypeDescription
account_sidStringYour Exotel account SID
call_sidStringUnique identifier of the call

Query Parameters​

ParameterTypeRequiredDescription
formatStringNoAudio format: mp3 (default) or wav
channelStringNosingle (mixed, default) or dual (separate agent/customer tracks)

Example Request​

curl -X GET \
'https://<api_key>:<api_token>@api.exotel.com/v3/accounts/<account_sid>/calls/abc123/voice-logs?format=mp3' \
-H 'Content-Type: application/json'

Response​

{
"request_id": "req_log_001",
"method": "GET",
"http_code": 200,
"response": {
"voice_log": {
"call_sid": "abc123",
"recording_url": "https://s3-ap-southeast-1.amazonaws.com/exotelrecordings/your_account_sid/abc123.mp3",
"recording_duration": 295,
"recording_size_bytes": 472000,
"format": "mp3",
"channel": "single",
"created_at": "2024-06-15T10:35:00.000Z",
"expires_at": "2024-09-15T10:35:00.000Z"
}
}
}
info

Recording URLs are time-limited signed URLs. They expire after the period shown in expires_at. Request a new URL if the link has expired.

Recording Status Values​

StatusDescription
availableRecording is ready for download
processingRecording is being processed
not_availableNo recording exists for this call
expiredRecording URL has expired; make a new request to get a fresh URL

HTTP Status Codes​

CodeDescription
200Success — Recording available
400Bad Request — Invalid parameters
401Unauthorized — Invalid credentials
404Not Found — Call or recording does not exist
429Too Many Requests — Rate limit exceeded