/
Downloading Call Recordings in Bulk

Downloading Call Recordings in Bulk

Sharpen’s Insights tool provides native access to listen to and download recordings. However, some may want to retrieve call recordings outside of the to application interface. This document describes how to leverage a few Sharpen APIs to download several call recordings in bulk.

Screenshots below are taken from Postman, a common REST API tool. If you are scripting the API calls, this is more likely to be done in a scripting language such as python. Visual examples are provided to show expected inputs and outputs.

  1. Gather array of QCMIDs from spreadsheet or datasource.

    1. Commonly done via the queryAPI

  2. Build loop that executes the getInteraction api for each QCMID

    1. Executing through Postman looks like this

       

  3. Parse through results to pull the “mixmonFileName”

    1. Depending on how you’ll be organizing the results, it may be helpful to pull in other attributes such as cidNumber, queueCallManagerID, inboundNumber, etc.

  4. Using the results, execute (in a looping fashion again) the getObjectLink api using the value from “mixmonFileName” retrieved in the previous step for filename. Additionally the getObjectLink api requires bucketName which for IZ0 is “mixrec”, or IZ1 is “iz-iz1-mixrec”.

    1. Results look like this.

  5. From here you have the recording URL which can be interfaced with a command like wget to download the file.

  6. Iterate through GET requests to the returned URL to download recording

    1. Keep in mind there’s an expiration date in unix time on that file. Attempting to retrieve the file after that time will result in failure.

  7. Move downloaded files to final destination


API Reference

baseUrl

Isolation Zone 0 (IZ0)

Isolation Zone 1 (IZ1)

Isolation Zone 0 (IZ0)

Isolation Zone 1 (IZ1)

api.sharpencx.com

api-current.iz1.sharpen.cx

Replace {{baseUrl}} with the appropriate base URL for the isolation zone your organization uses.

  • IZ0 - Your users login to app.sharpencx.com

  • IZ1 - Your users login to app.iz1.sharpen.cx

QueryAPI:

Method: POST
URL: https://{{baseUrl}}/V2/query/
cKey1: your company cKey1
cKey2: your company cKey2
method: query
q: queryAPI MySQL query (e.g.. SELECT * FROM `fathomQueues`.`queueCDR` WHERE `endTime` > “2023-12-01”)

Get Interaction:

Method: POST
URL: https://{{baseUrl}}/V2/queues/getInteraction/
cKey1
cKey2
uKey: uKey of user with permissions on customer account (we can help get the right user ukey for you)
queueCallManagerID

Get AWS file:

Method: POST
URL: https://{{baseUrl}}/V2/aws/getObjectLink/
cKey1
cKey2
bucketName: mixrec
fileName: mixmonFileName from getInteraction api

Related content

Creating a Call Recording URL
Creating a Call Recording URL
More like this
Ghost Calls / SIP Scanners
Ghost Calls / SIP Scanners
Read with this
Call Recording
More like this
API Gateway Setup
Read with this
WebRTC Internals Logs
WebRTC Internals Logs
More like this