---
title: "List Calls"
method: GET
path: "/calls"
tags: ["Calls"]
---

# List Calls

`GET /calls`

## Request

- Base URL: `https://api.puppeteerai.com`
- URL: `https://api.puppeteerai.com/calls`
- Auth: none declared. Required headers: `Authorization`

List calls for the authenticated organization, newest first, using cursor-based pagination.

## Query parameters

- `status` string[], nullable: Filter by call status. Repeat to allow multiple values.
- `call_type` string[], nullable: Filter by call type. Repeat to allow multiple values.
- `direction` string[], nullable: Filter by call direction. Repeat to allow multiple values.
- `from_date` string, nullable: Only include calls created at or after this ISO 8601 date/datetime.
- `to_date` string, nullable: Only include calls created at or before this ISO 8601 date/datetime.
- `thread_id` string, nullable: Only include calls belonging to this thread.
- `project_name` string, nullable: Only include calls belonging to this project.
- `cursor` string, nullable: Base64-encoded pagination cursor from a previous response.
- `limit` integer: Maximum number of calls to return.

## Headers

- `Authorization` string, required

## Response `200`

Successful Response

- CallsListResponse
  - `calls` CallSummary[], required: The page of calls, newest first.
    - `id` string, required: Unique identifier of the call.
    - `thread_id` string, required: Identifier of the thread this call belongs to.
    - `conversation_id` integer, nullable: Identifier of the conversation, or null for scheduled calls that never started.
    - `call_type` string, required: Type of the call, e.g. "phone_call" or "web_call".
    - `status` string, required: Current status, e.g. "scheduled", "ongoing", "ended", "error".
    - `direction` string, nullable: Call direction, "inbound" or "outbound".
    - `from_number` string, nullable: Originating phone number (phone calls only).
    - `to_number` string, nullable: Destination phone number (phone calls only).
    - `scheduled_for` string, nullable: ISO 8601 timestamp the call is scheduled for, or null.
    - `start_timestamp` integer, nullable: Unix timestamp (seconds) when the call started, or null if it has not started.
    - `end_timestamp` integer, nullable: Unix timestamp (seconds) when the call ended, or null if it has not ended.
    - `duration_ms` integer, nullable: Call duration in milliseconds, or null.
    - `disconnection_reason` string, nullable: Deprecated, use contact_result. Raw telephony reason the call ended, if known.
    - `contact_result` string, nullable: Who or what an outbound phone call reached: reached_person, voicemail_left, voicemail_no_message, screener_blocked, phone_menu, no_one_spoke, no_answer, busy, invalid_number, rejected or failed. Null for inbound and web calls, and until the call has ended.
    - `created_at` string, required: ISO 8601 timestamp when the call record was created.
  - `pagination` RoutersCallsCursorPagination, required
    - `cursor` string, nullable, required: Base64-encoded cursor for the next page of results. Null when there are no more results.

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/getpuppeteer/apis/puppeteer-core-api.md) - [All operations](https://skmtc.dev/getpuppeteer/apis/puppeteer-core-api/llms.txt) - [OpenAPI document](https://skmtc.dev/getpuppeteer/apis/puppeteer-core-api/revisions/94b4e928b42f?raw)
