Overview
| ENDPOINT | /admin/api/nexbro/v1/call/call-detail-records |
| Methods Supported | GET |
| Description | This endpoint is used to retrieve call detail records (CDRs) from the Nexbro. |
Parameters
The following parameters can be used to filter call detail records (CDRs):
| Parameter Name | Parameter Requirement | Parameter Data Type | Example | Description |
| from | optional | Date time | 2026-01-01 00:00:00 | Start date and time to filter call records from. |
| to | optional | Date time | 2026-01-01 23:59:59 | End date and time to filter call records until. |
| call_status | optional | String | answered/missed | Filter call records based on call status. |
| extension | optional | Integer | 234 | Filter call records by a specific extension number. |
| extension_call_status | optional | String | answered/missed | Filter call records for a specific extension based on call status. |
| call_direction | optional | Array | local/inbound/outbound | Filter call records by call direction. Can filter records of multiple call directions. |
| sort_by | optional | String | start_time | Sort call records by a specific field (default: start_time) |
| direction | optional | String | desc/asc | Sort call records by a latest or oldest records. |
| per_page | optional | Integer | 15 | Number of call records to return per page for pagination. Max 100 |
| query | optional | String | rupinder | Search term to filter call records by caller_id_number,caller_destination or destination number fields. |
Response Codes
The following response codes are returned by the API.
| HTTP CODE | Summary | Description |
| 200 | HTTP_OK | Returned when the call detail record request is processed successfully. |
| 500 | INTERNAL_SERVER_ERROR | Returned when an unexpected error occurs on the server while processing the request. |
Example
GET https://nexbro.com/admin/api/nexbro/v1/call-detail-records?from=2026-01-16 00:00:00&to=2026-01-16 12:33:59&extension=234&extension_call_status=answered&call_direction[0]=local&per_page=1&sort_by=start_time
{
"message": "Success.",
"data": {
"current_page": 1,
"data": [
{
"xml_cdr_uuid": "6075d782-1fd2-40a4-bcfe-d29638f2d598",
"caller_id_number": "9876543210",
"caller_id_name": "Outbound Call",
"caller_destination": "234",
"destination_number": "8556900900",
"direction": "outbound",
"start_epoch": "2026-01-16 12:14:19",
"answer_epoch": "2026-01-16 12:14:29",
"end_epoch": "2026-01-16 12:15:04",
"duration": "00:00:45",
"status": "ANSWERED",
"hangup_cause": "Call was terminated normally by either party.",
"call_back": null,
"call_flow": [
{
"destination_number": "8556900900",
"forwarding_enabled": false,
"start_time": "2026-01-16 12:14:19",
"answer_time": "2026-01-16 12:14:29",
"last_hold_time": null,
"end_time": "2026-01-16 12:15:04",
"duration": "00:00:45",
"answer_duration": "00:00:35",
"time_to_answer": "00:00:10",
"hold_duration": null
},
{
"destination_number": "234",
"forwarding_enabled": false,
"start_time": "2026-01-16 12:14:19",
"answer_time": "2026-01-16 12:14:21",
"last_hold_time": "2026-01-16 12:14:51",
"end_time": "2026-01-16 12:15:04",
"duration": "00:00:45",
"answer_duration": "00:00:43",
"time_to_answer": "00:00:02",
"hold_duration": "00:00:04"
}
],
"audio_stats": {
"inbound": {
"mos": "4.46",
"raw_bytes": "380120",
"flaw_total": "63",
"media_bytes": "378228",
"packet_count": "2210",
"mean_interval": "20.36",
"largest_jb_size": "0",
"cng_packet_count": "0",
"jitter_loss_rate": "0.00",
"dtmf_packet_count": "0",
"jitter_burst_rate": "0.00",
"skip_packet_count": "51",
"flush_packet_count": "11",
"media_packet_count": "2199",
"quality_percentage": "96.00",
"jitter_max_variance": "114.35",
"jitter_min_variance": "0.39",
"jitter_packet_count": "0"
},
"outbound": {
"raw_bytes": "329724",
"media_bytes": "329724",
"packet_count": "1917",
"cng_packet_count": "0",
"rtcp_octet_count": "0",
"dtmf_packet_count": "0",
"rtcp_packet_count": "0",
"skip_packet_count": "0",
"media_packet_count": "1917"
},
"error_log": [
{
"start": "2026-01-16 12:14:25.000",
"stop": "2026-01-16 12:14:28.000",
"flaws": "3",
"duration_seconds": 3.011
}
]
},
"technical": {
"dtmf_type": "info",
"read_codec": "PCMU",
"read_rate": "8000",
"write_codec": "PCMU",
"write_rate": "8000",
"local_media_ip": "10.1.1.159",
"local_media_port": "18570",
"remote_media_ip": "10.1.1.11",
"remote_media_port": "8008",
"audio_media_flow": "sendrecv",
"post_dial_delay": "444"
}
}
],
"first_page_url": "https://nexbro.com/admin/api/nexbro/v1/call-detail-records?page=1",
"from": 1,
"last_page": 4095,
"last_page_url": "https://nexbro.com/admin/api/nexbro/v1/call-detail-records?page=4095",
"links": [
{
"url": null,
"label": "« Previous",
"active": false
},
{
"url": "https://nexbro.com/admin/api/nexbro/v1/call-detail-records?page=1",
"label": "1",
"active": true
},
{
"url": "https://nexbro.com/admin/api/nexbro/v1/call-detail-records?page=2",
"label": "2",
"active": false
},
{
"url": null,
"label": "...",
"active": false
},
{
"url": "https://nexbro.com/admin/api/nexbro/v1/call-detail-records?page=4094",
"label": "4094",
"active": false
},
{
"url": "https://nexbro.com/admin/api/nexbro/v1/call-detail-records?page=4095",
"label": "4095",
"active": false
},
{
"url": "https://nexbro.com/admin/api/nexbro/v1/call-detail-records?page=2",
"label": "Next »",
"active": false
}
],
"next_page_url": "https://nexbro.com/admin/api/nexbro/v1/call-detail-records?page=2",
"path": "https://nexbro.com/admin/api/nexbro/v1/call-detail-records",
"per_page": 1,
"prev_page_url": null,
"to": 1,
"total": 4095
}
}