---
title: "Get list of CDRs"
method: GET
path: "/api/v4/reporting/cdrs"
tags: ["Reporting"]
---

# Get list of CDRs

`GET /api/v4/reporting/cdrs`

Returns a paginated list of Call Detail Records (CDRs). Use the cursor returned in metadata.next_cursor to continue fetching records beyond the first 10000 results. When cursor is not provided, pagination is limited to the first 10000 records using limit and offset.

## Query parameters

- `limit` integer
- `offset` integer
- `cursor` string
- `type` union
  - 'call' | 'conversation' | 'hlr_lookup' | 'sms'
  - string[]
- `account_id` union
  - string
  - string[]
- `subtype` union
  - 'inbound' | 'outbound' | 'click_to_call' | 'dialer' | 'scheduled_callback' | 'queue_callback' | 'chat' | 'facebook' | 'instagram' | 'telegram' | 'viber' | 'whatsapp' | 'hlr_lookup' | 'outbound_sms'
  - string[]
- `disposition` union
  - 'busy' | 'answered' | 'vm_answered' | 'machine_answered' | 'abandoned' | 'dialer_abandoned' | 'system_abandoned' | 'rejected' | 'system_rejected' | 'no_answer' | 'missed' | 'failed' | 'active' | 'archived' | 'initiated' | 'waiting' | 'available' | 'unavailable' | 'unknown' | 'sent' | 'delivered' | 'not_sent' | 'not_delivered' | 'route_unavailable'
  - string[]
- `wrapup_code` union
  - string
  - string[]
- `end_reason` union
  - 'agent' | 'busy' | 'customer' | 'dncr_failure' | 'dncr_restricted' | 'failed' | 'machine' | 'machine_answered' | 'manager' | 'no_answer' | 'rejected' | 'remote_party' | 'system_reject' | 'timeout'
  - string[]
- `tag` union
  - 'monitor' | 'whisper' | 'barge_in' | 'intercept' | 'terminate' | 'forward' | 'consult_transfer' | 'blind_transfer' | 'all_transfers' | 'conference' | 'call_score'
  - string[]
- `from_phone_number` union
  - string, phone
  - string[]
- `to_phone_number` union
  - string, phone
  - string[]
- `from_phone_number_like` string
- `to_phone_number_like` string
- `from_channel_account_id` union
  - string, uuid
  - string[]
- `to_channel_account_id` union
  - string, uuid
  - string[]
- `from_channel_profile_id` union
  - integer
  - integer[]
- `to_channel_profile_id` union
  - integer
  - integer[]
- `user_id` union
  - integer
  - integer[]
- `team_id` union
  - integer
  - integer[]
- `queue_id` union
  - integer
  - integer[]
- `campaign_id` union
  - integer
  - integer[]
- `related_call_id` union
  - string, uuid
  - string[]
- `destination_country` union
  - string
  - string[]
- `conversation_score` union
  - number, float
  - RangeFilterFloat — Numeric range filter with comparison operators.
    - `eq` number, float
    - `gt` number, float
    - `gte` number, float
    - `lt` number, float
    - `lte` number, float
- `duration_overall` union
  - number, float
  - RangeFilterFloat — Numeric range filter with comparison operators.
    - `eq` number, float
    - `gt` number, float
    - `gte` number, float
    - `lt` number, float
    - `lte` number, float
- `duration_dialing` union
  - number, float
  - RangeFilterFloat — Numeric range filter with comparison operators.
    - `eq` number, float
    - `gt` number, float
    - `gte` number, float
    - `lt` number, float
    - `lte` number, float
- `duration_ivr` union
  - number, float
  - RangeFilterFloat — Numeric range filter with comparison operators.
    - `eq` number, float
    - `gt` number, float
    - `gte` number, float
    - `lt` number, float
    - `lte` number, float
- `duration_queue` union
  - number, float
  - RangeFilterFloat — Numeric range filter with comparison operators.
    - `eq` number, float
    - `gt` number, float
    - `gte` number, float
    - `lt` number, float
    - `lte` number, float
- `duration_talk` union
  - number, float
  - RangeFilterFloat — Numeric range filter with comparison operators.
    - `eq` number, float
    - `gt` number, float
    - `gte` number, float
    - `lt` number, float
    - `lte` number, float
- `duration_hold` union
  - number, float
  - RangeFilterFloat — Numeric range filter with comparison operators.
    - `eq` number, float
    - `gt` number, float
    - `gte` number, float
    - `lt` number, float
    - `lte` number, float
- `started_at` union
  - string, date-time
  - RangeFilterDateTime — Date-time range filter with comparison operators.
    - `eq` string, date-time
    - `gt` string, date-time
    - `gte` string, date-time
    - `lt` string, date-time
    - `lte` string, date-time
- `ended_at` union
  - string, date-time
  - RangeFilterDateTime — Date-time range filter with comparison operators.
    - `eq` string, date-time
    - `gt` string, date-time
    - `gte` string, date-time
    - `lt` string, date-time
    - `lte` string, date-time

## Response `200`

OK

- object
  - `cdrs` Cdr[]
    - union — Call detail record for reporting.
      - CdrRecordCall — Common CDR fields.
        - `id` string, uuid — The unique identifier of the CDR.
        - `type` 'call' — The CDR type.
        - `subtype` 'inbound' | 'outbound' | 'click_to_call' | 'dialer' | 'scheduled_callback' | 'queue_callback' — The CDR subtype.
        - `disposition` 'busy' | 'answered' | 'vm_answered' | 'machine_answered' | 'abandoned' | 'dialer_abandoned' | 'system_abandoned' | 'rejected' | 'system_rejected' | 'no_answer' | 'missed' | 'failed' — Call disposition.
        - `from` CdrPartyPhoneNumber — Party information for a phone number.
          - `type` 'phone_number' — The party type.
          - `phone_number` string, phone — The party phone number.
        - `to` CdrPartyPhoneNumber — Party information for a phone number.
          - `type` 'phone_number' — The party type.
          - `phone_number` string, phone — The party phone number.
        - `account_id` string, nullable — An identifier assigned to the contact in an external application, such as a CRM.
        - `user` object, nullable — Reference metadata captured in the CDR.
          - `id` integer — The unique identifier of the user.
          - `name` string — The name of the user.
          - `email` string, email — The email address of the user.
          - `name_snapshot` string, nullable — Name snapshot captured at the time of the interaction.
          - `deleted` boolean — Whether the referenced record is deleted.
        - `cost` string, nullable — Cost of the interaction.
        - `tags` string[], nullable — Event tags.
        - `started_at` string, date-time — The date and time the interaction started.
        - `ended_at` string, date-time, nullable — The date and time the interaction ended.
        - `data` object — Type-specific CDR payload.
          - `queue` object, nullable — Reference metadata captured in the CDR.
            - `id` integer — The unique identifier of the queue.
            - `name` string — The name of the queue.
            - `name_snapshot` string, nullable — Name snapshot captured at the time of the interaction.
            - `deleted` boolean — Whether the referenced record is deleted.
          - `campaign` object, nullable — Reference metadata captured in the CDR.
            - `id` integer — The unique identifier of the campaign.
            - `name` string — The name of the campaign.
            - `name_snapshot` string, nullable — Name snapshot captured at the time of the interaction.
            - `deleted` boolean — Whether the referenced record is deleted.
          - `destination_country` string, nullable — Destination country for outbound calls.
          - `durations` object — Duration breakdown of the call.
            - `overall` number, float — Total duration in seconds.
            - `dialing` number, float — Dialing time in seconds.
            - `ivr` number, float — IVR time in seconds.
            - `queue` number, float — Queue wait time in seconds.
            - `talk` number, float — Talk time in seconds.
            - `hold` number, float — Hold time in seconds.
          - `end_reason` 'agent' | 'busy' | 'customer' | 'dncr_failure' | 'dncr_restricted' | 'failed' | 'machine' | 'machine_answered' | 'manager' | 'no_answer' | 'rejected' | 'remote_party' | 'system_reject' | 'timeout', nullable — End reason for the call.
          - `wrapup_code` WrapupCodeSnapshot — Wrap-up code snapshot.
            - `code_snapshot` string — Wrap-up code value.
          - `summary` string, nullable — Call summary.
          - `conversation_score` number, float, nullable — Conversation score.
          - `mos` number, float, nullable — Mean opinion score (MOS) for the call.
          - `mos_tc` number, float, nullable — Mean opinion score (MOS) threshold value.
      - CdrRecordConversation — Common CDR fields.
        - `id` string, uuid — The unique identifier of the CDR.
        - `type` 'conversation' — The CDR type.
        - `subtype` 'chat' | 'facebook' | 'instagram' | 'telegram' | 'viber' | 'whatsapp' — The CDR subtype.
        - `disposition` 'active' | 'archived' | 'initiated' | 'waiting' — Disposition of the CDR.
        - `from` union — Sender party details.
          - CdrPartyChannelAccount — Party information for a channel account.
            - `type` 'channel_account' — The party type.
            - `channel_account` object — Reference metadata captured in the CDR.
              - …
          - CdrPartyChannelProfile — Party information for a channel profile.
            - `type` 'channel_profile' — The party type.
            - `channel_profile` object — Reference metadata captured in the CDR.
              - …
        - `to` union — Recipient party details.
          - CdrPartyChannelAccount — Party information for a channel account.
            - `type` 'channel_account' — The party type.
            - `channel_account` object — Reference metadata captured in the CDR.
              - …
          - CdrPartyChannelProfile — Party information for a channel profile.
            - `type` 'channel_profile' — The party type.
            - `channel_profile` object — Reference metadata captured in the CDR.
              - …
        - `account_id` string, nullable — An identifier assigned to the contact in an external application, such as a CRM.
        - `user` object, nullable — Reference metadata captured in the CDR.
          - `id` integer — The unique identifier of the user.
          - `name` string — The name of the user.
          - `email` string, email — The email address of the user.
          - `name_snapshot` string, nullable — Name snapshot captured at the time of the interaction.
          - `deleted` boolean — Whether the referenced record is deleted.
        - `cost` string, nullable — Cost of the interaction.
        - `tags` string[], nullable — Event tags.
        - `started_at` string, date-time — The date and time the interaction started.
        - `ended_at` string, date-time, nullable — The date and time the interaction ended.
        - `data` object — Type-specific CDR payload.
          - `channel` string — Channel for the conversation.
          - `flow` object, nullable — Reference metadata captured in the CDR.
            - `id` string, uuid — The unique identifier of the flow.
            - `name` string — The name of the flow.
            - `name_snapshot` string, nullable — Name snapshot captured at the time of the interaction.
            - `deleted` boolean — Whether the referenced record is deleted.
          - `queue` object, nullable — Reference metadata captured in the CDR.
            - `id` integer — The unique identifier of the queue.
            - `name` string — The name of the queue.
            - `name_snapshot` string, nullable — Name snapshot captured at the time of the interaction.
            - `deleted` boolean — Whether the referenced record is deleted.
          - `wrapup_code` WrapupCodeSnapshot — Wrap-up code snapshot.
            - `code_snapshot` string — Wrap-up code value.
          - `durations` object — Duration breakdown of the conversation.
            - `overall` number, float — Total duration in seconds.
            - `queue` number, float — Queue wait time in seconds.
            - `talk` number, float — Contact time in seconds.
          - `service_level_agreements` object — Service level agreements for the conversation.
            - `first_response` CdrServiceLevelAgreement — Service level agreement details.
              - …
            - `resolution` CdrServiceLevelAgreement — Service level agreement details.
              - …
            - `avg_reply` CdrServiceLevelAgreement — Service level agreement details.
              - …
      - CdrRecordHlrLookup — Common CDR fields.
        - `id` string, uuid — The unique identifier of the CDR.
        - `type` 'hlr_lookup' — The CDR type.
        - `subtype` 'hlr_lookup' — The CDR subtype.
        - `disposition` 'available' | 'unavailable' | 'unknown' — Disposition of the CDR.
        - `from` CdrPartyPhoneNumber — Party information for a phone number.
          - `type` 'phone_number' — The party type.
          - `phone_number` string, phone — The party phone number.
        - `to` CdrPartyPhoneNumber — Party information for a phone number.
          - `type` 'phone_number' — The party type.
          - `phone_number` string, phone — The party phone number.
        - `account_id` string, nullable — An identifier assigned to the contact in an external application, such as a CRM.
        - `user` object, nullable — Reference metadata captured in the CDR.
          - `id` integer — The unique identifier of the user.
          - `name` string — The name of the user.
          - `email` string, email — The email address of the user.
          - `name_snapshot` string, nullable — Name snapshot captured at the time of the interaction.
          - `deleted` boolean — Whether the referenced record is deleted.
        - `cost` string, nullable — Cost of the interaction.
        - `tags` string[], nullable — Event tags.
        - `started_at` string, date-time — The date and time the interaction started.
        - `ended_at` string, date-time, nullable — The date and time the interaction ended.
        - `data` object — Type-specific CDR payload.
          - `reachable` boolean — Whether the destination is reachable.
          - `roaming` boolean, nullable — Whether the destination is roaming.
          - `related_call` CallShort — Reference to a call record.
            - `id` string, uuid — The unique identifier of the call.
      - CdrRecordSms — Common CDR fields.
        - `id` string, uuid — The unique identifier of the CDR.
        - `type` 'sms' — The CDR type.
        - `subtype` 'outbound_sms' — The CDR subtype.
        - `disposition` 'sent' | 'delivered' | 'not_sent' | 'not_delivered' | 'route_unavailable' — Disposition of the CDR.
        - `from` CdrPartyPhoneNumber — Party information for a phone number.
          - `type` 'phone_number' — The party type.
          - `phone_number` string, phone — The party phone number.
        - `to` CdrPartyPhoneNumber — Party information for a phone number.
          - `type` 'phone_number' — The party type.
          - `phone_number` string, phone — The party phone number.
        - `account_id` string, nullable — An identifier assigned to the contact in an external application, such as a CRM.
        - `user` object, nullable — Reference metadata captured in the CDR.
          - `id` integer — The unique identifier of the user.
          - `name` string — The name of the user.
          - `email` string, email — The email address of the user.
          - `name_snapshot` string, nullable — Name snapshot captured at the time of the interaction.
          - `deleted` boolean — Whether the referenced record is deleted.
        - `cost` string, nullable — Cost of the interaction.
        - `tags` string[], nullable — Event tags.
        - `started_at` string, date-time — The date and time the interaction started.
        - `ended_at` string, date-time, nullable — The date and time the interaction ended.
        - `data` object — Type-specific CDR payload.
          - `sent` boolean — Whether the message was sent successfully.
          - `segments_count` integer — Number of SMS segments.
          - `message` string — SMS message content.
          - `canned_message` object, nullable — Reference metadata captured in the CDR.
            - `id` integer — The unique identifier of the canned message.
            - `name` string — The name of the canned message.
            - `name_snapshot` string, nullable — Name snapshot captured at the time of the interaction.
            - `deleted` boolean — Whether the referenced record is deleted.
          - `related_call` CallShort — Reference to a call record.
            - `id` string, uuid — The unique identifier of the call.
  - `metadata` object — Pagination metadata for list responses.
    - `total` integer — The total number of items available for the requested resource.
    - `next_cursor` string, nullable — Cursor for fetching the next page of results. Treat this value as an opaque token and pass it back unchanged as the cursor query parameter. Returns null once there are no further records. A page that returns fewer than limit records is the last page and includes next_cursor: null. If the final page happens to be exactly limit records long, next_cursor is non-null and the following request returns an empty page with next_cursor: null. In all cases, stop paginating when next_cursor is null.

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden

---

[API](https://skmtc.net/voiso/apis/voiso-api.md) · [All operations](https://skmtc.net/voiso/apis/voiso-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/voiso/voiso-api/versions/3d34cfd8f064/schema)
