> ## Documentation Index
> Fetch the complete documentation index at: https://docs.telzino.com/llms.txt
> Use this file to discover all available pages before exploring further.

# List Outbound Calls

> Returns a paginated list of outbound calls placed by an agent

## Path Parameters

<ParamField path="agentId" type="string" required>
  The agent ID to list outbound calls for (UUID format)
</ParamField>

## Query Parameters

<ParamField query="page" type="integer" default="1">
  Page number for pagination (1-indexed)
</ParamField>

<ParamField query="limit" type="integer" default="50">
  Number of items per page (max 100)
</ParamField>

<ParamField query="status" type="string">
  Filter by [lifecycle status](/api-reference/outbound-calls/overview#call-lifecycle), e.g. `completed`, `no_answer`, `failed`
</ParamField>

## Response

<ResponseField name="data" type="array">
  Array of outbound call objects — same shape as [Get Outbound Call](/api-reference/outbound-calls/get), newest first
</ResponseField>

<ResponseField name="pagination" type="object">
  <Expandable title="properties">
    <ResponseField name="page" type="integer">Current page</ResponseField>
    <ResponseField name="limit" type="integer">Items per page</ResponseField>
    <ResponseField name="total" type="integer">Total matching calls</ResponseField>
    <ResponseField name="totalPages" type="integer">Total pages</ResponseField>
    <ResponseField name="hasNext" type="boolean">Whether a next page exists</ResponseField>
    <ResponseField name="hasPrev" type="boolean">Whether a previous page exists</ResponseField>
  </Expandable>
</ResponseField>

<RequestExample>
  ```bash cURL theme={null}
  curl "https://api.telzino.com/v1/agents/123e4567-e89b-12d3-a456-426614174000/outbound-calls?page=1&limit=25&status=completed" \
    -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
  ```

  ```javascript JavaScript theme={null}
  const agentId = '123e4567-e89b-12d3-a456-426614174000';

  const response = await fetch(
    `https://api.telzino.com/v1/agents/${agentId}/outbound-calls?page=1&limit=25`,
    { headers: { 'Authorization': 'Bearer YOUR_ACCESS_TOKEN' } }
  );

  const { data, pagination } = await response.json();
  data.forEach(call => {
    console.log(`${call.created_at} → ${call.to_number}: ${call.status} (${call.duration ?? '-'}s)`);
  });
  ```

  ```python Python theme={null}
  import requests

  agent_id = '123e4567-e89b-12d3-a456-426614174000'

  response = requests.get(
      f'https://api.telzino.com/v1/agents/{agent_id}/outbound-calls',
      params={'page': 1, 'limit': 25},
      headers={'Authorization': 'Bearer YOUR_ACCESS_TOKEN'},
  )

  body = response.json()
  for call in body['data']:
      print(f"{call['created_at']} -> {call['to_number']}: {call['status']}")
  ```
</RequestExample>

<ResponseExample>
  ```json 200 theme={null}
  {
    "data": [
      {
        "id": "0fc6daf8-7251-4553-9488-867ba0b82d8e",
        "agent_id": "123e4567-e89b-12d3-a456-426614174000",
        "to_number": "+18135551234",
        "status": "completed",
        "request_metadata": { "crm_id": "123" },
        "transcript_id": "de79aee6-ae41-4003-a3f4-ba9d77b59bd8",
        "created_at": "2026-06-11T12:49:28.898751+00:00",
        "answered_at": "2026-06-11T12:50:03.843960+00:00",
        "ended_at": "2026-06-11T12:54:15.354244+00:00",
        "duration": 251,
        "error": null,
        "sip_status_code": null
      }
    ],
    "pagination": {
      "page": 1,
      "limit": 25,
      "total": 1,
      "totalPages": 1,
      "hasNext": false,
      "hasPrev": false
    }
  }
  ```
</ResponseExample>
