# List voices

`GET https://api.cream-ai.de/api/v1/voices`

Voices of all brands of the company, one entry per voice and language. Sorted by `name`, then `id`. Changes made in mint may take up to 30 seconds to appear.

Scopes: `catalog:read`

## Parameters

- `limit` (query): Page size (1–100).
- `cursor` (query): Opaque cursor from next_cursor of the previous page.
- `language` (query): Only voices of this language (language code, e.g. de).
- `brand_id` (query): Only voices of this brand (id from GET /brands).

## Returns

- 200: One page of the list.

## Errors

- 400: Invalid request (invalid_request, invalid_json, invalid_cursor, idempotency_key_required, invalid_idempotency_key, parent_not_found, max_depth_exceeded, narration_too_long, user_not_in_company, template_not_found, category_not_found, feedback_kind_unsupported, upload_not_found).
- 401: Missing, malformed, revoked or expired API key (unauthorized).
- 403: Not allowed (forbidden_scope, ip_not_allowed, company_inactive, api_not_enabled).
- 429: Too many requests (rate_limited).
- 500: Internal error (internal). Quote the request id when you contact support.
- 503: Temporarily unavailable (service_unavailable). Retry later (after Retry-After seconds, if sent).

## Example request

```sh
curl "https://api.cream-ai.de/api/v1/voices?language=de" \
  -H "Authorization: Bearer $MINT_API_KEY"
```

## Example response (200)

```json
{
  "object": "list",
  "data": [
    {
      "object": "voice",
      "id": "Xb7hH8MSUJpSbSDYk0k2",
      "name": "Clara",
      "language": "de",
      "provider": "elevenlabs",
      "brands": [
        {
          "brand_id": "brand-northwind-x7k2p9",
          "default": true
        }
      ]
    }
  ],
  "has_more": false,
  "next_cursor": null
}
```
