## List voices for speaker assignment

`video_translate.voices.list(VoiceListParams**kwargs)  -> VoiceListResponse`

**get** `/v1/video-translate/voices`

Lists the voices that can be used as values in `config.speaker_voices`.
`voice_id` is the external voice ID to submit. `name` and `is_favorite` reflect the
authenticated account's personalization; `default_name` is the catalog name.
Ordered by favorites first, then `name` (case-insensitive), then `voice_id`.

### Parameters

- `application: Optional[str]`

  Case-insensitive exact match on the voice's application (use case), for example `narration` (max 100 characters).

- `favorite: Optional[bool]`

  Only favorites (`true`) or only non-favorites (`false`).

- `gender: Optional[Literal["Male", "Female", "Other"]]`

  Case-insensitive gender filter.

  - `"Male"`

  - `"Female"`

  - `"Other"`

- `language: Optional[str]`

  Case-insensitive exact match on the voice's primary language or any of its verified languages (max 100 characters).

- `limit: Optional[int]`

  Page size. Non-integers and values below 1 are rejected with 400; values above 100 are clamped to 100.

- `offset: Optional[int]`

  Number of items to skip. Non-integers and negative values are rejected with 400.

- `search: Optional[str]`

  Case-insensitive substring of the voice's effective (account-personalized) name.

### Returns

- `class VoiceListResponse: …`

  - `pagination: Pagination`

    - `limit: int`

      Applied page size.

    - `offset: int`

      Applied result offset.

    - `total: int`

      Total number of matching records.

  - `voices: List[Voice]`

    - `application: str`

      Intended use case, for example `narration`.

    - `default_name: str`

    - `description: str`

    - `gender: Literal["Male", "Female", "Other"]`

      - `"Male"`

      - `"Female"`

      - `"Other"`

    - `is_favorite: bool`

      Whether the authenticated account marked this voice as a favorite.

    - `language: str`

      Primary language label.

    - `name: str`

      Effective name (the account's custom name when set, otherwise `default_name`).

    - `voice_id: str`

      External voice ID. Use this value in `config.speaker_voices`.

### Example

```python
import os
from chamelaion import Chamelaion

client = Chamelaion(
    bearer_token=os.environ.get("CHAMELAION_BEARER_TOKEN"),  # This is the default and can be omitted
)
voices = client.video_translate.voices.list()
print(voices.pagination)
```

#### Response

```json
{
  "voices": [
    {
      "voice_id": "21m00Tcm4TlvDq8ikWAM",
      "name": "Rachel (narration)",
      "default_name": "Rachel",
      "description": "Calm, young adult female voice.",
      "language": "en",
      "application": "narration",
      "gender": "Female",
      "is_favorite": true
    }
  ],
  "pagination": {
    "limit": 50,
    "offset": 0,
    "total": 1
  }
}
```
