get
https://{defaultHost}/api/v4/reporting/cdrs/
Returns detailed information about a specific Call Detail Record (CDR).
The Get CDR endpoint returns a single CDR record from
Voiso
reporting.
Requirements: Base URL, Authentication, Error codes
Scope: reporting.cdrs.read
What this does
When you send a Get CDR request with a CDR ID,
Voiso
returns one CDR record.
The response is polymorphic, meaning the type field determines the shape of the data object:
callconversationhlr_lookupsms
When to use it
- Retrieve full details for a record returned by Get list of CDRs
- Inspect type specific details stored in
data - Troubleshoot a specific interaction using a single CDR ID
Endpoint
GET /api/v4/reporting/cdrs/{cdr_id}
Path parameters
- cdr_id
The unique identifier of the CDR record (UUID).
Example request
curl -X GET "https://{cluster_id}.voiso.com/api/v4/reporting/cdrs/775a5558-59a6-4468-a502-0deef2a3315d" \
-H "Authorization: Bearer <contact_center_api_key>" \
-H "Content-Type: application/json"Response examples
CALL
{
"cdr": {
"id": "775a5558-59a6-4468-a502-0deef2a3315d",
"type": "call",
"subtype": "outbound",
"disposition": "answered",
"from": {
"type": "phone_number",
"phone_number": "12025550123"
},
"to": {
"type": "phone_number",
"phone_number": "33123456789"
},
"user": {
"id": "0b97ce11-b6e0-49b4-8f92-68040aa324bf",
"name": "Jane Doe",
"email": "[email protected]",
"name_snapshot": "Jane Doe",
"deleted": false
},
"cost": 0.055,
"tags": [
"conference",
"whisper"
],
"started_at": "2026-02-05T11:32:43.413Z",
"ended_at": "2026-02-05T11:33:11.031Z",
"data": {
"queue": {
"id": 1,
"name": "Technical Support"
},
"campaign": null,
"destination_country": "France",
"durations": {
"overall": 27.618,
"dialing": 5.783,
"ivr": 0,
"queue": 10.796,
"talk": 21.835,
"hold": 0
},
"end_reason": "customer",
"wrapup_code": {
"code_snapshot": "0000"
},
"summary": "The agent called the customer to follow up on a previous inquiry.",
"conversation_score": 3.3,
"mos": 4.37,
"mos_tc": 3.9
}
}
}CONVERSATION
{
"cdr": {
"id": "9ba5cd12-e248-4b89-b7f2-d354a6c5a8ef",
"type": "conversation",
"subtype": "whatsapp",
"disposition": "handled",
"from": null,
"to": null,
"user": {
"id": "0b97ce11-b6e0-49b4-8f92-68040aa324bf",
"name": "Jane Doe",
"email": "[email protected]",
"name_snapshot": "Jane Doe",
"deleted": false
},
"cost": 0,
"tags": [],
"started_at": "2026-02-05T16:34:52.456Z",
"ended_at": "2026-02-05T18:08:29.000Z",
"data": {
"channel": "whatsapp",
"flow": {
"id": "0b62763c-40d6-4ec8-8380-3cb94e442a75",
"name": "Lead Qualification"
},
"queue": {
"id": 1,
"name": "Technical Support"
},
"wrapup_code": {
"code_snapshot": "DIGI-01"
},
"durations": {
"overall": 5596.544
},
"service_level_agreements": {
"time_to_first_response": null,
"time_to_reply": null,
"time_to_resolution": null
}
}
}
}HLR_LOOKUP
{
"cdr": {
"id": "54ae2354-2f6e-485a-bad5-dbdf1463ea2d",
"type": "hlr_lookup",
"subtype": "single",
"disposition": "completed",
"from": null,
"to": {
"type": "phone_number",
"phone_number": "447414992548"
},
"user": {
"id": "0b97ce11-b6e0-49b4-8f92-68040aa324bf",
"name": "Jane Doe",
"email": "[email protected]",
"name_snapshot": "Jane Doe",
"deleted": false
},
"cost": 0.002,
"tags": [],
"started_at": "2026-02-05T10:00:00.000Z",
"ended_at": "2026-02-05T10:00:01.120Z",
"data": {
"reachable": true,
"roaming": false,
"related_call": null
}
}
}SMS
{
"cdr": {
"id": "2c7bf3e2-8b26-4c65-8a1c-2aef0b7d3c2a",
"type": "sms",
"subtype": "outbound",
"disposition": "sent",
"from": {
"type": "phone_number",
"phone_number": "12025550123"
},
"to": {
"type": "phone_number",
"phone_number": "15551234567"
},
"user": {
"id": "0b97ce11-b6e0-49b4-8f92-68040aa324bf",
"name": "Jane Doe",
"email": "[email protected]",
"name_snapshot": "Jane Doe",
"deleted": false
},
"cost": 0.01,
"tags": [],
"started_at": "2026-02-05T09:10:00.000Z",
"ended_at": "2026-02-05T09:10:02.000Z",
"data": {
"sent": true,
"segments_count": 1,
"message": "Thank you for your payment of 49.99.",
"canned_message": null,
"related_call": null
}
}
}Notes
- The
typefield determines which fields exist insidedata. - Some fields can be null depending on the interaction type and routing path.
Troubleshooting
404 Not found
This usually means the CDR ID does not exist, or you do not have access to it.
What to check:
- Confirm the ID using Get list of CDRs.
401 Unauthorized, 403 Forbidden
See: Authentication and Error codes