What are CDRs (Call Detail Record)?
CDR is the data produced during phone calls. It contains all the call attributes such as the call time, its duration, the hangup time and cause and much more. CDR have two main interests: their analysis can provide insightful data, especially at scale and they are essential to diagnostic and debug a faulty telephone system.
CDRs offer a vast amount of call metrics, including: calling and called number, type of number, caller country and region if possible, precise timeline of the call (time of call initialization, answered and hang up), who hang up, total duration of the call, its price, precise timeline of the key(s) pressed, etc.
We distinguish between inbound CDR and outbound CDR that offer slightly different information.
Where to access the CDRs?
In your CALLR Console
You can visualize your CALLR account data on the Analytics page of your console:
You can also export the CDR in a .csv format on the Logs page of your console. You can to filter the CDRs according to a range of date, the traffic type (inbound or outbound), and the number or app used.
With our API
Different methods are available to consult call analytics according to your needs. The full list of call analytics methods is available in our documentation.
You can get a synthesis (daily or weekly) of your CDRs delivered by mail. Contact our support to set it up.
How to read the CDRs?
The table below details the meaning of every CDR entry. Here are some additional precisions regarding formats:
- Datetime (Answer, Hangup, Start) YYYY-MM-DD HH:MM:SS in UTC timezone. Example: "2012-04-24 23:42:00"
- Price amount (billing_customer_credit_eur, billing_customer_debit_eur) are in cents with 2 decimals. Example: "1000.00" for 10 USD or EUR
- Phone number: International E.164 format "+CCNSN". Example: "+16467890800", "+447890123456", or "+33678912345".
|answer||Call answer date and time. Format: datetime.|
|billing_customer_cost_label||Billing destination name|
|billing_customer_credit_eur||Call credit (cents) Format: price amount.|
|billing_customer_debit_eur||Call debit (cents) Format: price amount.|
|callid||Unique call ID|
|callid_in||Unique call ID of the inbound call (if available)|
|cli_country_code||CLI country code if available. Format: country_code (ISO 3166-1 alpha-2 country code. Example: "US")|
|cli_name||CLI name if available|
|cli_number||CLI number if available. Format: phone_number.|
|cli_number_type||CLI number type if available Check our article about number types.|
"allowed_passed_screen": the CLI was displayed on the recipient's phone
"prohib_passed_screen": the CLI was not displayed on the recipient's phone
|customer_field||Custom CDR field Format: cdr_customer_field (32 alphanumeric characters maximum)|
|did_hash||DID unique ID. Format: hash (Unique object identifier)|
|did_intl_number||DID number. Format: phone_number.|
|duration||Call total duration in seconds (from dialing to hang up)|
|duration_answered||Call answered duration in seconds (from callee answering to hang up)|
|duration_billed||Call billed duration in seconds|
|hangup||Call hangup date and time. Format: datetime.|
|hangupcause||All ISDN Cause Codes and their meaning are listed here.|
"CALLEE": the call's callee (recipient) hang up
"CALLER": the caller hang up
"GATEWAY": service provider hang up (happens in case of no answer for instance)
|invalid_number||Number is invalid (it will not be retried), possible reasons:
MISSIG DIGIT: number is not complete
WRONG INTERNATIONAL PREFIX : the E.164 international prefix (+XX) is not valid
|number||Outbound number. Format: phone_number.|
|number_country_code||Number country code Format: country_code (ISO 3166-1 alpha-2 country code. Example: "US")|
|number_type||Number type. Check our article about number types.|
|package_name||Package name (technical name relative to the voice app used)|
|sip_response_code||All SIP Response Codes and their meaning are listed here.|
|scenario_hash||Voice app ID Format: hash (Unique object identifier)|
|scenario_name||Voice app name|
|start||Call start date and time. Format: datetime.|