Get a CDR

Retrieves the details of a CDR, including the main record and the call leg records.

Request URL

GET {base_url}/uc-creport/api/v1/cdr/{uid}

Request parameters

Headers
Parameter Required Type Description
Authorization Yes String The access token used for authentication.

Format: Bearer {access_token}.

x-tenant-code Yes String The tenant name.
Note: You can obtain tenant name using the Query Tenants interface.
Path parameters
Parameter Required Type Description
uid Yes String The UID of the CDR to query. You can obtain the UID using the Query CDRs interface.

Response parameters

Parameter Type Description
requestId String The unique ID of the request, which can be used to quickly locate the request.
code String The HTTP status code of the request.
  • 200: Request succeeded.
  • Non-200 value: Request failed.
message String The status message of the request.
detailMessage String The detailed error information.

When the request is successful, this parameter returns empty.

result Object<CDR_Detail> The details of the CDR.
CDR_Detail
Parameter Type Description
main Object<CDR_Main_Message> The main record of the CDR.
legs Array<CDR_Leg_Message> The list of call leg records of the CDR.
CDR_Main_Message
Parameter Type Description
id String The ID of the CDR.
callId String The unique identifier of the call.
traceId String The trace ID of the call.
uid String The business UID of the CDR.
callType String

The call type:

  • inbound: An inbound call.
  • outbound: An outbound call.
  • internal: An internal call.
timestamp String The start time of the call, in Unix timestamp format (microseconds).
totalDuration Integer The total duration of the call, in seconds.
lastCallStatus String

The final call status:

  • answered
  • no_answer
  • abandoned
  • busy
  • failed
  • voicemail
caller Object<Party_Info> The caller of the call.
callee Object<Party_Info> The callee of the call.
secondCallee Object<Party_Info> The second callee of the call.
lastCallee Object<Party_Info> The last callee of the call.
waitDuration Integer The wait duration of the call, in seconds.
pureTalkDuration Integer The pure talk duration of the call (excluding hold time), in seconds.
holdDuration Integer The hold duration of the call, in seconds.
segments Integer The number of call segments (the number of transfers plus 1).
hangupBy String

The party that hung up the call:

  • caller
  • callee
  • system

An empty string indicates that the call was not answered.

hangupCause String The hangup cause of the call.
hasRecording Boolean

Whether the call has a recording.

  • true: The call has a recording.
  • false: The call has no recording.
enableTimeline Boolean

Whether the call timeline is enabled for display.

  • true: Enabled.
  • false: Disabled.
initialSourceTrunk String The name of the initial source trunk.
initialDidNumber String The initial DID number.
finalDestinationTrunk String The name of the final destination trunk.
queues Array<Call_Feature> The list of queues that the call passed through.
ringGroups Array<Call_Feature> The list of ring groups that the call passed through.
ivrs Array<Call_Feature> The list of IVRs that the call passed through.
aiReceptionists Array<Call_Feature> The list of AI receptionists that the call passed through.
eventData String The extended field in JSON format, which stores the raw event data.
createdAt String The time when the CDR was created, in Unix timestamp format (microseconds).
updatedAt String The time when the CDR was last updated, in Unix timestamp format (microseconds).
hasAiTranscription Boolean

Whether the call has an AI transcription.

  • true: The call has an AI transcription.
  • false: The call has no AI transcription.
recordingTranscriptionStatus String

The status of the recording transcription task:

  • NOT_SUBMITTED
  • PENDING
  • PROCESSING
  • COMPLETED
  • FAILED

An empty string indicates that no transcription task exists.

hasCollectedInfo Boolean

Whether the call has collected information.

  • true: The call has collected information.
  • false: The call has not collected information.
Party_Info
Parameter Type Description
number String The number of the party.
name String The name of the party.
avatar String The URL of the party's avatar.
featureType String The type of the call feature associated with the party.
featureNumber String The number of the call feature associated with the party.
featureName String The name of the call feature associated with the party.
type String

The type of the party's number:

  • extension: An extension.
  • extension_mobile: An extension user with a bound mobile number.
  • personal_contact: A personal contact.
  • company_contact: A company contact.
  • external: An external number.
presence String The presence status of the party. This parameter is returned only when type is extension or extension_mobile.
online Boolean

Whether the party is online.

  • true: The party is online or has a registered phone.
  • false: The party is offline.

This parameter is meaningful only when type is extension or extension_mobile.

companyName String The company name of the party. This parameter is returned only when type is company_contact.
extensionNumber String The extension number that the mobile number is bound to. This parameter is returned only when type is extension_mobile.
Call_Feature
Parameter Type Description
name String The name of the call feature.
number String The number of the call feature.
callStatus String

The status of the call feature:

  • answered
  • no_answer
  • busy
  • failed
aiStatus String

The AI processing status. This parameter is returned only when the call feature is an AI receptionist:

  • completed
  • transferred
  • failed
CDR_Leg_Message
Parameter Type Description
id String The ID of the call leg record.
mainId String The ID of the associated main record.
legId String The unique identifier of the call leg.
legType String

The type of the call leg:

  • a_leg
  • b_leg
transactionId String The transaction ID, which is used to associate multiple call legs.
uid String The business UID of the call.
callType String

The call type:

  • inbound: An inbound call.
  • outbound: An outbound call.
  • internal: An internal call.
callStatus String

The call status:

  • answered
  • no_answer
  • abandoned
  • busy
  • failed
  • voicemail
caller Object<Party_Info> The caller of the call leg.
callee Object<Party_Info> The callee of the call leg.
callerAddr String The IP address of the caller.
sourceTrunk String The name of the source trunk.
destinationTrunk String The name of the destination trunk.
didNumber String The DID number. This parameter is used for inbound calls.
dodNumber String The DOD number. This parameter is used for outbound calls.
timestamp String The start time of the call leg, in Unix timestamp format (microseconds).
totalDuration Integer The total duration of the call leg, in seconds.
ringDuration Integer The ring duration of the call leg, in seconds.
pureTalkDuration Integer The pure talk duration of the call leg (excluding hold time), in seconds.
holdDuration Integer The hold duration of the call leg, in seconds.
recordFile String The name of the recording file.
recordPath String The path of the recording file.
callFeature String The call feature that the call leg passed through, such as a queue, ring group, or IVR.
callFeatureNumber String The number of the call feature.
pinCode String The PIN code of the outbound route.
hangupBy String

The party that hung up the call:

  • caller
  • callee
  • system
hangupCause String The hangup cause of the call.
createdAt String The time when the call leg record was created, in Unix timestamp format (microseconds).
details Array<CDR_Detail_Message> The list of detailed event records during the call.
aiStatus String

The AI processing status. This parameter is returned only for the call leg of an AI receptionist:

  • completed
  • transferred
  • failed
shakenAttestation String

The SHAKEN attestation level of the call:

  • A
  • B
  • C
  • Invalid
  • Unsigned
  • Unknown

An empty string indicates that the attestation is not applicable.

CDR_Detail_Message
Parameter Type Description
id String The ID of the detail record.
mainId String The ID of the associated main record.
eventName String The name of the event.
eventTime String The time when the event occurred, in Unix timestamp format (microseconds).
eventData String The event data in JSON format, which stores the raw FreeSwitch event.
createdAt String The time when the detail record was created, in Unix timestamp format (microseconds).
eventType String The category of the event type.

Example

Request example

GET /uc-creport/api/v1/cdr/20261021113931LROGJ HTTP/1.1
Host: api.cn.novoone.com
Authorization: Bearer eyJraWQiOiJjbi0wLWtleS0xIiwiYWxnIjoiUlMyNTYifQ.eyJzdWIiOiIxMDAwQGNvbG9ydGVzdDIiLCJncmFudF90eXBlIjoicGFzc3dvcmQiLCJ1c2VyX25hbWUiOiIxMDAwQGNvbG9ydGVzdDIiLCJzY29wZSI6WyJyZWFkIiwid3JpdGUiXSwiY2xpZW50X2V4dCI6eyJkZXNjcmlwdGlvbiI6IueuoeeQhuWQjuWPsFdlYuW6lOeUqCIsInBsYXRmb3JtIjoid2ViIn0sImV4cCI6MTc5MzM1NTUwMiwiaWF0IjoxNzkzMzMzOTAyLCJqdGkiOiIxMGQwNGYwYy0yMTIxLTRiMzktYjFlZC1kNDY5MDY0ODlhODQiLCJjbGllbnRfaWQiOiJub3ZvLWFkbWluLXdlYiIsInNpZCI6IjlkMTg5NjI3LTZhZTAtNDYxMC04ZTFhLWNiZWJmYzdlYTdmZiIsInVzZXJfZXh0Ijp7InJvbGVJZHMiOlsxMDJdLCJwdWlkIjozMDc2OTEzNjQ0OTE1OTk4NzIwLCJ0ZW5hbnRJZCI6MjA3OTUwNDIwNTMwOTE5NDI0MSwicGFyZW50VWNJZCI6MzA3NjkxMzY0NDg5MDgzMjg5NiwidGVuYW50Q29kZSI6ImNvbG9ydGVzdDIiLCJ0eXBlIjoiVF9VU0VSIiwidXNlcklkIjoyMDc5NzQ2OTE1Mzg4MDc2MDMzLCJlbWFpbCI6Imxlb0BzYW1wbGUuY29tIiwidXNlcm5hbWUiOiIxMDAwQGNvbG9ydGVzdDIiLCJ1Y0lkIjozMDc2OTEzNjQ0ODkwODMyODk2fX0.cpY9aTg-Twaa1itEHREfJRX2RaYmalfGeof0An6DYSYBl9moSYvsjsZwImpId5xKb1qsPsec0KSXTmASV9kMgonf1uv6AtNRw702SroZxYTHwA9_lwxM8TY66aOAyoeiewHhA0sCDtg-ZGiDaatHxSitiLMi4MMr8qyzvuXF_44bcucYSaf8Z7Iokiud9cM67Z4dAFdxQ_SSbmFtAmTa78VuSPA0R7fFyq86Fn-p6Xk767i0AXJI8a7H7GNKMPwuc5NJ3BtWcbWx8M_DKKNVO58wMO2d9_Q13-qjlmX44h0ml_GqtqSqkZS7wz3Bg2jPT3Q2yc7Ijm9rxqr1UvbGLg
x-tenant-code: jint

Response example

HTTP/1.1 200 OK
{
  "requestId": "53b3b2093b4c656912983000dad01b62",
  "code": "200",
  "message": "SUCCESS",
  "detailMessage": "",
  "result": {
    "main": {
      "id": "371140423507390464",
      "callId": "139a5e4b62194fe9a8fb2bf13ac84b3a",
      "traceId": "139a5e4b62194fe9a8fb2bf13ac84b3a",
      "uid": "20261021113931LROGJ",
      "callType": "outbound",
      "timestamp": "1792553971653337",
      "totalDuration": 0,
      "lastCallStatus": "failed",
      "caller": {
        "number": "1001",
        "name": "Terrell Smith",
        "avatar": "https://novo-one-tst-self-operated-business.s3.ap-east-1.amazonaws.com/public/platform/jint/user_avatar/1786586587824/2.png",
        "featureType": "",
        "featureNumber": "",
        "featureName": ""
      },
      "callee": {
        "number": "633309873",
        "name": "",
        "avatar": "",
        "featureType": "",
        "featureNumber": "",
        "featureName": ""
      },
      "secondCallee": {
        "number": "",
        "name": "",
        "avatar": "",
        "featureType": "",
        "featureNumber": "",
        "featureName": ""
      },
      "lastCallee": {
        "number": "633309873",
        "name": "",
        "avatar": "",
        "featureType": "",
        "featureNumber": "",
        "featureName": ""
      },
      "waitDuration": 0,
      "pureTalkDuration": 0,
      "holdDuration": 0,
      "segments": 1,
      "hangupBy": "",
      "hangupCause": "MANDATORY_IE_MISSING",
      "hasRecording": false,
      "enableTimeline": true,
      "initialSourceTrunk": "",
      "initialDidNumber": "",
      "finalDestinationTrunk": "ccctest",
      "queues": [],
      "ringGroups": [],
      "ivrs": [],
      "eventData": "",
      "createdAt": "0",
      "updatedAt": "0",
      "aiReceptionists": [],
      "hasAiTranscription": false,
      "recordingTranscriptionStatus": "",
      "hasCollectedInfo": false
    },
    "legs": [
      {
        "id": "371140423507390465",
        "mainId": "0",
        "legId": "",
        "legType": "",
        "transactionId": "20001",
        "uid": "20261021113931LROGJ",
        "callType": "outbound",
        "callStatus": "failed",
        "caller": {
          "number": "1001",
          "name": "Terrell Smith",
          "avatar": "https://novo-one-tst-self-operated-business.s3.ap-east-1.amazonaws.com/public/platform/jint/user_avatar/1786586587824/2.png",
          "featureType": "",
          "featureNumber": "",
          "featureName": ""
        },
        "callee": {
          "number": "633309873",
          "name": "",
          "avatar": "",
          "featureType": "",
          "featureNumber": "",
          "featureName": ""
        },
        "callerAddr": "172.30.142.90",
        "sourceTrunk": "",
        "destinationTrunk": "ccctest",
        "didNumber": "",
        "dodNumber": "1001",
        "timestamp": "1792553971653337",
        "totalDuration": 0,
        "ringDuration": 0,
        "pureTalkDuration": 0,
        "holdDuration": 0,
        "recordFile": "",
        "recordPath": "",
        "callFeature": "",
        "callFeatureNumber": "",
        "pinCode": "",
        "hangupBy": "",
        "hangupCause": "MANDATORY_IE_MISSING",
        "createdAt": "1792553972422061726",
        "details": [],
        "aiStatus": "",
        "shakenAttestation": ""
      }
    ]
  }
}
Note:

The response is condensed. The call in this example has 1 call leg.