---
title: "Get all calls"
method: GET
path: "/{sub_domain}/api/calls"
tags: ["Calls"]
---

# Get all calls

`GET /{sub_domain}/api/calls`

## Request

- Base URL: `https://api.commpeak.com/pbx`
- URL: `https://api.commpeak.com/pbx/{sub_domain}/api/calls`
- Auth: API key in header `Authorization`

Retrieve calls handled by the Cloud PBX, newest first.

**When to use.** Historical and audit views of call activity. For the detailed call records behind the Call Analytics report, use `GET /cdrs`.

**Filtering and shape.** Filter, order, limit and select fields by any response field. See [Core API Concepts](https://td.commpeak.link/ReadMe-PBX-api-docs). Common filters are `caller_user_id`, `start_at` and `end_at` (ISO-8601 UTC), `status`, `dst` and `dst_country`. The response is wrapped as `{ "calls": [ ... ], "total_calls": N }`.

**Example.** `GET /api/calls/start_at/2020-09-01T00:00:00/limit/50;0`

Gateway note: custom call fields defined on the account can be used as filter keys (path segments, see the `_filtered` variant) and are returned on each record alongside the standard fields.

## Path parameters

- `sub_domain` string, required: PBX Name (subdomain)

## Response `200`

Successful Response

- CallsResponse
  - `calls` CallItem[], required
    - `id` integer, nullable: Call ID.
    - `object_type_id` integer, nullable: Call object type: 1 = Campaign Lead Call, 2 = PhoneBook Call.
    - `object_id` integer, nullable
    - `caller_user_id` integer, nullable: ID of the user who placed the call.
    - `caller_user` string, nullable: Embedded caller user object.
    - `call_uuid` string, nullable: Unique call UUID.
    - `start_at` string, nullable: Call start timestamp.
    - `end_at` string, nullable: Call end timestamp.
    - `src` string, nullable: Source number.
    - `dst` string, nullable: Destination number.
    - `call_duration` integer, nullable: Total call duration in seconds.
    - `call_bill_duration` integer, nullable: Billed call duration in seconds.
    - `cost` number, nullable: Call cost.
    - `status` string, nullable: Call status.
    - `q850` integer, nullable: Q.850 hangup cause code.
    - `sip_term_status` integer, nullable: SIP termination status.
    - `agent_callerid_name` string, nullable
    - `agent_callerid_number` string, nullable
    - `client_callerid_name` string, nullable
    - `client_callerid_number` string, nullable
    - `record_file` string, nullable: Recording file name, if any.
    - `created_at` string, nullable
  - `total_calls` integer, nullable: Total number of matching calls.

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/commpeak/apis/commpeak-pbx-api.md) - [All operations](https://skmtc.dev/commpeak/apis/commpeak-pbx-api/llms.txt) - [OpenAPI document](https://skmtc.dev/commpeak/apis/commpeak-pbx-api/revisions/0b1e8c7fd3f6?raw)
