# Get All Voice AI Agent Executions API

## GET /v2/agent/{agent_id}/executions

### Try it

```bash
curl --request GET \
  --url 'https://api.bolna.ai/v2/agent/{agent_id}/executions?page_number=1&page_size=20' \
  --header 'Authorization: Bearer <token>'
```

### Response
#### 200

```json
{
  "page_number": 123,
  "page_size": 123,
  "total": 123,
  "has_more": true,
  "data": [
    {
      "id": "4c06b4d1-4096-4561-919a-4f94539c8d4a",
      "agent_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "batch_id": "baab7cdc833145bf8dd260ff1f0a3f21",
      "conversation_time": 123,
      "total_cost": 123,
      "status": "scheduled",
      "error_message": "<string>",
      "answered_by_voice_mail": true,
      "transcript": "<string>",
      "created_at": "2024-01-23T01:14:37Z",
      "updated_at": "2024-01-29T18:31:22Z",
      "cost_breakdown": {
        "llm": 4.2,
        "network": 1.2,
        "platform": 2,
        "synthesizer": 6.8,
        "transcriber": 0.7
      },
      "telephony_data": {
        "duration": 42,
        "to_number": "+10123456789",
        "from_number": "+19876543007",
        "recording_url": "https://bolna-call-recordings.s3.us-east-1.amazonaws.com/AC1f3285e7c353c7d4036544f8dac36b98/REb1c182ccde4ddf7969a511a267d3c669",
        "hosted_telephony": true,
        "provider_call_id": "CA42fb13614bfcfeccd94cf33befe14s2f",
        "call_type": "outbound",
        "provider": "twilio",
        "hangup_by": "Caller",
        "hangup_reason": "Normal Hangup",
        "hangup_provider_code": 4000,
        "ring_duration": 17,
        "post_dial_delay": 1,
        "to_number_carrier": "Reliance Jio Infocomm Ltd (RJIL)"
      },
      "transfer_call_data": {
        "provider_call_id": "CA42fb13614bfcfeccd94cf33befe14s2f",
        "status": "completed",
        "duration": 42,
        "cost": 123,
        "to_number": "+10123456789",
        "from_number": "+19876543007",
        "recording_url": "https://bolna-call-recordings.s3.us-east-1.amazonaws.com/AC1f3285e7c353c7d4036544f8dac36b98/REb1c182ccde4ddf7969a511a267d3c669",
        "hangup_by": "Caller",
        "hangup_reason": "Normal Hangup",
        "hangup_provider_code": 4000
      },
      "batch_run_details": {
        "status": "completed",
        "created_at": "2024-01-23T01:14:37Z",
        "updated_at": "2024-01-29T18:31:22Z",
        "retried": 0
      },
      "extracted_data": {
        "user_interested": true,
        "callback_user": false,
        "address": "42 world lane",
        "salary_expected": "42 bitcoins"
      },
      "context_details": {}
    }
  ]
}
```

### Pagination

This API supports pagination using the `page_number` and `page_size` query parameters. You can utilize `has_more` in the API response to determine if you should fetch the next page.

### Authorizations

**Authorization**  
`string`  
header  
required  
Bearer authentication header of the form `Bearer <token>`, where `<token>` is your auth token.

### Path Parameters
- **agent_id**: `string<uuid>`  
required  
The unique `id` of the agent.

### Query Parameters
- **page_number**: `integer`  
default:1  
The page number to retrieve (starts from `1`)
  
Required range: `x >= 1`
- **page_size**: `integer`  
default:20  
Number of results per page. Maximum allowed is `50`.
  
Required range: `x >= 1`
- **status**: `enum<string>`  
Fetch executions filtered by call status.
Available options:
  - `scheduled`
  - `queued`
  - `rescheduled`
  - `ringing`
  - `initiated`
  - `in-progress`
  - `call-disconnected`
  - `completed`
  - `balance-low`
  - `busy`
  - `no-answer`
  - `canceled`
  - `failed`
  - `stopped`
  - `error`
- **call_type**: `enum<string>`  
Filter `inbound` calls or `outbound` calls.
Available options:
  - `inbound`
  - `outbound`
- **provider**: `enum<string>`  
Filter by conversation provider.
Available options:
  - `plivo`
  - `twilio`
  - `websocket`
  - `web-call`
- **answered_by_voice_mail**: `boolean`  
default:false  
Filter by voicemail.
- **batch_id**: `string`  
Filter executions by a specific `batch_id`.
- **from**: `string<date-time>`  
Fetch executions where the `created_at` timestamp is greater than or equal to this UTC datetime in ISO 8601 format with UTC indication.
- **to**: `string<date-time>`  
Fetch executions where the `created_at` timestamp is less than or equal to this UTC datetime in ISO 8601 format with UTC indication.
