Call Detail Records (CDR) API

If you'd like to get detailed call information out of Genius for reporting or integration purposes, the Call Detail Records (CDR) API is likely what you will need.

This API can help you accomplish the following goals:

  • Download detailed call data for storing in a Data Warehouse / Data Lake
  • Retrieve call data for use in a Business Intelligence (BI) tool - such as PowerBI or Tableau
  • Integrate key call data between Genius and other critical business systems
  • Retrieve call recordings for calls (via the provided link and downloading the recording)

See API Documentation for technical documentation on how the API functions and is formatted. See API Access and Token Management for details on how to retrieve an API Key for use with the CDR API.

 

CDR API Contents

The CDR API will provide every call of yours that is stored in Genius with a variety of detail that we have stored about that call.

Filters:

To be able to pull back just the subset of data you need, we provide the following filters you can specify as parameters in your API call:

  • Call Start Oldest
  • Call Start Newest
  • Call End Oldest
  • Call End Newest
  • Limit 
    • # of call records that will be returned
  • Offset 
    • Number of call records to skip
  • Timezone
    • What timezone you would like to see any date/times represented in
    • E.g. America/Denver, America/Atlanta, UTC

Fields:

For each call record that is returned, you may (depending on call type and routing details) see the following fields (each field in bold, with additional information provided):

  • AVOXI Call ID
    • This is the Call ID we display in Genius and generally how we uniquely refer to each call
  • To
    • The dialed number (e164 format) or user extension
  • From
    • The number the call is from (e164 format) or user extension
  • From Country
    • Country Code of the number the call is from
  • To Country
    • Country code of the number the call is to
  • Status
    • Whether the call was Answered, Unanswered, or Voicemail
  • Direction
    • Inbound, Outbound, or Internal
  • Date Start
    • Timestamp for when the call started
  • Date Answered
    • Timestamp for when the call was answered (e.g. by an Agent or Voicemail)
  • Date End
    • Timestamp for when the call ended
  • Duration
    • Duration of the call, including ring time
    • Seconds
    • Formatted 
      • (HH:MM:SS)
  • Forwarded To
    • If the call was forwarded - this will show where the call was sent
  • Sorted Dispositions
    • Dispositions sorted by the priority field. Can contain multiple dispositions.
    • Priority
    • Title
      • Which disposition was answered
    • Values
      • The answer provided to that particular disposition question
  • Charged
    • Amount USD
      • How much the call cost (in USD)
    • Quantity (seconds)
      • How many seconds we charged for this call
  • Call Recording URL
    • A link to the call recording, if available. Valid for 24 hours before the link expires.
  • Friendly Name
    • Friendly name of the billed number
  • Agent Actions
    • List of actions taken by an Agent for the call (e.g. Handled) 
    • Event
      • Specific event/action that occurred
    • User ID
      • ID of the Agent who performed the action
    • User Name
      • Name of the Agent who performed the action
    • Timestamp
      • When the action occurred
  • Voicemail Details
    • If the call went to Voicemail, this will contain key details about the call before it went to Voicemail. This is to help identify which Agent a call went to before it hit Voicemail, and also includes calls that went to a Team (Queue) or Call Group. Does not display if a call was sent to Voicemail via a Flow.
    • Extension
      • Which extension was last called and forwarded the call to Voicemail
    • Type
      • Which type of destination the call hit before going to Voicemail (Agent, Queue, or Call Group)
    • Name
      • The name associated to the extension e.g. the Agent's name
  • Forward Destination
    • The final destination of the call before termination (e.g. a number, extension, or SIP address)
  • Billing Group Details
    • List of any Billing Groups associated with the call
    • Billing Group ID
      • The ID of the Billing Group
    • Billing Group Name
      • The Name of the Billing Group
  • Rate Type
    • The rate type we used for the call (e.g. Fixed, Mobile, Universal, or Unknown)

 

API Timeouts

The standard API timeout in Genius is 60 seconds. If you try to pull back data which will take longer than 1 minute your API call will timeout and fail.

When pulling a large volume of call records it is best to batch and only pull a certain amount of records at a time.

 

 

 

Give feedback about this article

Was this article helpful?

Have more questions? Submit a request

Updated:

July 11th, 2025

Author:

Curtis Foster

Updated By:

Curtis Foster

KB ID:

3397618

Page Views:

109

Tags:

telecom api, phone records

Can’t find what you’re looking for?

Contact our award-winning customer care team.