CDR: CDR
A call detail record capturing telephony event data including parties, timing, network routing, quality, and billing.
CDR definition shipped with DemandFlow. Administrators can add, remove, rename, or re-type fields, change which ones are required, and alter the layout from the Definitions screen in Settings. Your tenant's current schema may differ from what is shown here. To read the current definition at any time, GET the DEFINITION object whose id matches CDR.Entity properties
| Property | Value |
|---|---|
| Entity code | CDR |
| Display name | CDR |
| Plural | CDRs |
| Level | 320 |
Use cases
CDR is a telecoms-specific entity that stores individual call detail records. Each record represents a single telephony event (voice, video, SMS, data, VoLTE, etc.) with comprehensive metadata across five panels. The General panel captures call identification (call ID, session ID), type, direction, status, and the parties involved (A-number/B-number, IMSI, IMEI). The Network panel records the infrastructure path (originating/terminating switches, trunks, cell IDs, LACs, MSCs) and flags for roaming and international calls.
Fields
General: Call Information
| Field | Type | Required | Notes |
|---|---|---|---|
name | text | Yes | Read-only. Unique identifier for this CDR |
callId | text | Network call identifier | |
sessionId | text | SIP session identifier | |
callType | enum | Yes | Call Type. Valid ids: 1 (Voice), 2 (Video), 3 (SMS), 4 (MMS), 5 (Data), 6 (VoLTE), 7 (VoWiFi), 8 (Conference), 9 (Emergency). |
direction | enum | Yes | Direction. Valid ids: 1 (Inbound), 2 (Outbound), 3 (Internal), 4 (Transit), 5 (Forwarded). |
callStatus | enum | Yes | Call Status. Valid ids: 1 (Answered), 2 (No Answer), 3 (Busy), 4 (Failed), 5 (Abandoned), 6 (Voicemail), 7 (Transferred), 8 (Blocked). |
General: Parties
| Field | Type | Required | Notes |
|---|---|---|---|
callingNumber | text | Yes | Calling Number (A-Number). |
calledNumber | text | Yes | Called Number (B-Number). |
originalCalledNumber | text | Before any forwarding | |
finalCalledNumber | text | After all redirections | |
callingName | text | Calling Party Name. | |
calledName | text | Called Party Name. | |
imsi | text | International Mobile Subscriber Identity | |
imei | text | International Mobile Equipment Identity |
General: Timing
| Field | Type | Required | Notes |
|---|---|---|---|
startTime | datetime | Yes | Start Time. |
answerTime | datetime | Answer Time. | |
endTime | datetime | Yes | End Time. |
duration | number | Read-only. Duration (seconds). | |
billableDuration | number | Billable Duration (seconds). | |
ringDuration | number | Ring Duration (seconds). | |
holdDuration | number | Hold Duration (seconds). |
Network: Network Elements
| Field | Type | Required | Notes |
|---|---|---|---|
originatingSwitch | text | Originating Switch. | |
terminatingSwitch | text | Terminating Switch. | |
transitSwitches | text (multi-line) | Intermediate switches in call path | |
originatingTrunk | text | Originating Trunk. | |
terminatingTrunk | text | Terminating Trunk. | |
routingNumber | text | Routing Number. |
Network: Location
| Field | Type | Required | Notes |
|---|---|---|---|
originatingCell | text | Originating Cell ID. | |
terminatingCell | text | Terminating Cell ID. | |
originatingLAC | text | Location Area Code | |
terminatingLAC | text | Terminating LAC. | |
originatingMSC | text | Mobile Switching Center | |
terminatingMSC | text | Terminating MSC. | |
roamingIndicator | boolean | Roaming. | |
internationalCall | boolean | International. |
Technical: Call Quality
| Field | Type | Required | Notes |
|---|---|---|---|
codec | enum | Codec. Valid ids: 1 (G.711), 2 (G.729), 3 (G.722), 4 (AMR), 5 (AMR-WB), 6 (EVS), 7 (Opus), 8 (H.264), 9 (H.265). | |
mos | number | Mean Opinion Score (1-5) | |
jitter | number | Jitter (ms). | |
packetLoss | number | Packet Loss (%). | |
latency | number | Latency (ms). | |
rtpPacketsSent | number | RTP Packets Sent. | |
rtpPacketsReceived | number | RTP Packets Received. |
Technical: Protocol Details
| Field | Type | Required | Notes |
|---|---|---|---|
protocol | enum | Signaling Protocol. Valid ids: 1 (SIP), 2 (H.323), 3 (SS7), 4 (ISUP), 5 (MGCP), 6 (IMS). | |
sipResponseCode | text | SIP Response Code. | |
releaseCode | text | Release Code. | |
releaseCause | text | Release Cause. | |
q850Cause | number | Q.850 Cause Code. |
Billing: Charging Information
| Field | Type | Required | Notes |
|---|---|---|---|
chargeAmount | number | Charge Amount. | |
currency | reference → CURRENCY | Currency. | |
rateApplied | number | Rate per minute/unit | |
rateType | enum | Rate Type. Valid ids: 1 (Peak), 2 (Off-Peak), 3 (Weekend), 4 (Holiday), 5 (Special). | |
billingClass | enum | Billing Class. Valid ids: 1 (Local), 2 (National), 3 (International), 4 (Premium), 5 (Toll-Free), 6 (Mobile), 7 (Roaming). |
Billing: Account Information
| Field | Type | Required | Notes |
|---|---|---|---|
accountNumber | text | Account Number. | |
customerCode | text | Customer Code. | |
costCenter | text | Cost Center. | |
projectCode | text | Project Code. | |
taxAmount | number | Tax Amount. | |
taxRate | number | Tax Rate (%). |
Analysis: Analytics & Fraud Detection
| Field | Type | Required | Notes |
|---|---|---|---|
fraudScore | gauge | Read-only. Fraud Score. | |
fraudIndicators | multiselect | Fraud Indicators. | |
qualityScore | gauge | Read-only. Quality Score. | |
customerExperience | enum | Customer Experience. Valid ids: 1 (Excellent), 2 (Good), 3 (Fair), 4 (Poor). | |
tags | multiselect | Tags. |
Relationships
- Lookups:
currencypoints at aCURRENCYrecord.
Creating a CDR via the API
POST /v1/objects
Authorization: Bearer <your-pat>
Content-Type: application/json
{
"entity": "CDR",
"level": 320,
"comboKey": "SUB:<your-sub-id>|ENT:",
"name": "CDR ID",
"callType": "1",
"direction": "1",
"callId": "Call ID"
}
Listing CDRs records
GET /v1/entities/CDR/SUB