---
title: "Get Call Batch"
method: GET
path: "/agents/calls/batches/{batch_id}"
tags: ["Agents"]
---

# Get Call Batch

`GET /agents/calls/batches/{batch_id}`

Retrieves a batch and the current status of each of its recipients.

## Path parameters

- `batch_id` string, required

## Headers

- `Cartesia-Version` '2026-03-01', date, required

## Response `200`

The batch, including its recipients.

- AgentCallBatch
  - `id` string, required — The unique identifier for the batch.
  - `name` string, required — The batch's label.
  - `agent_id` string, required — The identifier of the agent that handles the batch's calls.
  - `from_number_id` string, required — The identifier of the phone number the batch dials from.
  - `region` 'US' | 'EU' | 'APAC', required — The deployment region whose dispatcher drains the batch.
  - `target_concurrency_limit` integer, required — Maximum number of calls from this batch dialed concurrently.
  - `status` 'pending' | 'in_progress' | 'completed' | 'failed' | 'cancelled', required — The lifecycle status of a batch, derived at read time from dispatch progress.
  - `total_calls_scheduled` integer, required — Total recipients queued in the batch.
  - `total_calls_dispatched` integer, required — Recipients handed to the dialer so far, including those that failed before a call could be placed.
  - `total_calls_finished` integer, required — Recipients whose latest call attempt reached a terminal state (completed or failed), including pre-dial failures.
  - `retry_count` integer, required — Number of times the batch has been retried. `0` until the first retry.
  - `created_at` string, date-time, required — When the batch was created.
  - `last_updated_at` string, date-time, required — When the batch was last updated.
  - `scheduled_at` string, date-time — The scheduled dispatch time, in RFC3339 UTC format. Omitted for batches that dispatch immediately.
  - `admitted_at` string, date-time — The actual dispatch time, in RFC3339 UTC format. The batch may stay unadmitted in the queue due to scheduling or unavailable concurrency.
  - `recipients` AgentCallBatchRecipient[] — The batch's recipients. Returned only on `GET /agents/calls/batches/{batch_id}`.
    - `id` string, required — The unique identifier for the recipient within the batch.
    - `to_number` string, required — Destination phone number, in E.164 format (e.g., `+14155559876`).
    - `status` string, required — The status of a recipient within a batch. Before dispatch it reflects the queue state; after dispatch it reflects the latest call attempt.
    - `agent_call_id` string — The agent call ID, used to fetch per-call information via [Get Call](/api-reference/agents/calls/get-call). Set once the call has been dispatched.
    - `end_reason` 'agent_hangup' | 'client_hangup' | 'api_cancelled' | 'max_duration' | 'inactivity' | 'client_disconnected' | 'dial_busy' | 'dial_failed' | 'dial_no_answer' | 'error' — A machine-readable enum indicating why a call ended.
    - `error_message` string — Why the request failed before a call could be placed. Returned in place of `agent_call_id` when the recipient never reached a dial attempt.
    - `metadata` object, nullable — Custom metadata passed to the agent code deployment.
    - `created_at` string, date-time, required — When the recipient was queued.

## Other responses

- `404` — Batch not found.

---

[API](https://skmtc.net/cartesia/apis/cartesia-api.md) · [All operations](https://skmtc.net/cartesia/apis/cartesia-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/cartesia/cartesia-api/revisions/8910812440d3/schema)
