Sample code for 30+ languages & platforms
CkPython

CallRail API - Retrieve a Call Recording

See more CallRail Examples

Returns a CallRail URL pointing to an MP3 recording of the specified call, and then downloads the MP3 to a local file.

Chilkat CkPython Downloads

CkPython
import sys
import chilkat

success = False

# This example assumes the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.

http = chilkat.CkHttp()

# Implements the following CURL command:

# curl -H "Authorization: Token token=abc1234" \
#   https://api.callrail.com/v3/a/{account_id}/calls/{call_id}/recording.json

# Use the following online tool to generate HTTP code from a CURL command
# Convert a cURL Command to HTTP Source Code

http.SetRequestHeader("Authorization","Token token=abc1234")

sbResponseBody = chilkat.CkStringBuilder()
success = http.QuickGetSb("https://api.callrail.com/v3/a/{account_id}/calls/{call_id}/recording.json",sbResponseBody)
if (success == False):
    print(http.lastErrorText())
    sys.exit()

jResp = chilkat.CkJsonObject()
jResp.LoadSb(sbResponseBody)
jResp.put_EmitCompact(False)

print("Response Body:")
print(jResp.emit())

respStatusCode = http.get_LastStatus()
print("Response Status Code = " + str(respStatusCode))
if (respStatusCode >= 400):
    print("Response Header:")
    print(http.lastHeader())
    print("Failed.")
    sys.exit()

# Sample JSON response:

# {
#   "url": "http://app.callrail.com/calls/CAL11df32690b7d46123456789123456789/recording/redirect?access_key=241sa242sadqwerty123"
# }

url = jResp.stringOf("url")

# Download to a .mp3 file
success = http.Download(url,"call_recordings/CAL11df32690b7d46123456789123456789.mp3")
if (success == False):
    print(http.lastErrorText())
else:
    print("success.")