---
title: "List Custom Voices"
method: GET
path: "/v1/custom-voices"
tags: ["Custom Voices"]
---

# List Custom Voices

`GET /v1/custom-voices`

## Request

- Base URL: `https://api.typecast.ai`
- URL: `https://api.typecast.ai/v1/custom-voices`
- Auth: API key in header `X-API-KEY`

Lists all non-deleted custom voices owned by the authenticated account, including instant and professional clones. Results can include `pending`, `training`, `completed`, and `failed` voices.

Use `status` to decide whether a voice is ready for synthesis. When `status` is `failed`, `error` contains a safe failure reason; otherwise it is `null`.

## Response `200`

Custom voices retrieved successfully

- CustomVoiceItem[]
  - `name` string, required: Voice name.
  - `error` string, nullable: Failure reason when `status` is `failed`.
  - `model` string, required: TTS model version.
  - `source` string, required: Creation method (`instant` or `professional`).
  - `status` 'pending' | 'training' | 'completed' | 'failed', required: Current creation or training status of a custom voice.
  - `voice_id` string, required: Unique custom voice identifier with the `uc_` prefix.
  - `created_at` string, date-time, required: Creation time in UTC.

## Other responses

- `401`: Authentication failed

---

[API](https://skmtc.dev/typecast/apis/typecast-api.md) · [All operations](https://skmtc.dev/typecast/apis/typecast-api/llms.txt) · [OpenAPI document](https://skmtc.dev/typecast/apis/typecast-api/revisions/41605154de82?raw)
