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

# Voices

> List, get, update and delete voices with the SDK.

`voices.list()` returns your voices first (newest first), then the public platform voices. Iterating
it walks every page for you.

<CodeGroup>
  ```ts TypeScript theme={null}
  for await (const voice of client.voices.list()) {
    console.log(voice.id, voice.name, voice.status, voice.language, voice.labels);
  }

  const voice = await client.voices.get("665f1a2b3c4d5e6f7a8b9c0d");
  await client.voices.update(voice.id, { name: "Narrator (UK)", labels: { accent: "british" } });
  await client.voices.delete(voice.id);
  ```
</CodeGroup>

## One page at a time

Ask for a page size to get just the first page, with its totals:

<CodeGroup>
  ```ts TypeScript theme={null}
  const page = await client.voices.list({ page_size: 20 });
  console.log(page.total, page.has_more, page.voices.map((v) => v.name));
  ```
</CodeGroup>

## When a voice can speak

A voice can speak once its `status` is `ready`: check it with
`isReady(voice)`. A voice's `alias` (for example `narrator`) also works as the
`voice` on the [OpenAI-compatible endpoint](/voice-api/openai-compatible).

For the fields on a voice, see the [voice object](/voice-api/voice-object). For filtering by
language, accent and gender, see [Working with voices](/concepts/voices).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.