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

# List persisted voice sessions

> Returns a paginated list of voice sessions stored in the database. Use the status query parameter to filter by session status (active, completed).

Returns a paginated list of voice sessions stored in the database.
Use the `status` query parameter to filter by session status (active, completed).

### Query parameters

<ParamField query="status" type="string">
  Filter by status (active, completed, transferred, failed)
</ParamField>

<ParamField query="search" type="string">
  Case-insensitive search across phone, agent, summary, and transcript
</ParamField>

<ParamField query="started_after" type="string">
  Return only sessions started after the given RFC3339 timestamp
</ParamField>

<ParamField query="sort" type="string">
  Sort by started\_at asc or desc
</ParamField>

<ParamField query="limit" type="integer (int64)">
  Maximum results (default 50, max 200)
</ParamField>

<ParamField query="offset" type="integer (int64)">
  Pagination offset
</ParamField>

### Response

No response body — list of voice sessions.

### Status codes

| Code  | Meaning                                        |
| ----- | ---------------------------------------------- |
| `200` | List of voice sessions                         |
| `401` | Unauthorized - invalid or missing bearer token |
| `500` | Internal server error                          |
| `503` | Database not configured - set DATABASE\_URL    |

<RequestExample>
  ```bash cURL theme={null}
  curl --request GET \
    --url 'https://api.voice.stateset.com/api/v1/voice-sessions' \
    --header 'Authorization: Bearer YOUR_API_KEY'
  ```
</RequestExample>
