List call detail records
cdr_get_detailsRetrieve call detail records for a date range with optional filters to investigate specific calls, verify traffic, or debug call failures.
Instructions
List call detail records (CDRs) for a date range with optional filters, newest first. Use to investigate specific calls, verify traffic, or debug call failures. Pagination is cursor-based: pass the previous response's next_cursor back as cursor to get the following page, and stop when has_more is false. There is no page number and no total count — an exact total over the CDR store is not affordable at platform volume. For aggregate metrics use cdr_get_statistics; for chart data use cdr_get_trends. Returns up to 50 records per page — pass next_cursor to continue; the WARP API itself accepts up to 1000 for direct callers. Errors: INVALID_DATE, INVALID_CURSOR (a bad cursor is a hard error, never a silent restart), CDR_QUERY_FAILED.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| ani | No | Filter by ANI (calling number) | |
| dni | No | Filter by DNI (called number) | |
| limit | No | Rows per page (1-50, default 50) | |
| cursor | No | Opaque cursor from a previous call's next_cursor. Omit for the first page. | |
| end_date | No | End date (YYYY-MM-DD, inclusive) | |
| direction | No | Filter by call direction | |
| start_date | No | Start date (YYYY-MM-DD) | |
| disposition | No | Filter by call disposition (e.g. ANSWERED, NO ANSWER, BUSY, FAILED) | |
| tz_offset_minutes | No | Operator timezone offset in minutes, as returned by JS getTimezoneOffset() (e.g. 420 for US Mountain in summer) |