---
title: "List voices"
method: GET
path: "/v1/voices"
tags: ["Audio Projects"]
---

# List voices

`GET /v1/voices`

## Request

- Base URL: `https://api.magichour.ai`
- URL: `https://api.magichour.ai/v1/voices`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/magichourhq/apis/magic-hour-api/docs/v1/voices/get.ts> (a function with typed inputs; its response is checked against the schema)

List the voices available for text-to-speech. Use a voice's `id` as `style.voice_name` in the AI Voice Generator API. To fetch the next page, pass the response's next_cursor as cursor.

## Query parameters

- `limit` integer
- `cursor` string

## Response `200`

200

- object
  - `voices` object[], required
    - `id` string, required: Unique ID of the voice. Pass it as `style.voice_name` when generating speech. Names are not unique, so use the ID.
    - `name` string, required: Display name of the voice.
    - `avatar_url` string, nullable, required: URL of the voice's avatar image, or null when the voice has no avatar.
    - `preview_url` string, required: URL of an audio sample of the voice.
  - `next_cursor` string, nullable, required: Cursor for the next page, or null when there are no more voices.

## Other responses

- `400`: Invalid Request
- `401`: Unauthorized
- `500`: Internal Server Error

## Changes

- **2026-11-05** `941567d9e419`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/magichourhq/apis/magic-hour-api/changes/v1/voices/get.md)

---

[API](https://skmtc.dev/magichourhq/apis/magic-hour-api.md) - [All operations](https://skmtc.dev/magichourhq/apis/magic-hour-api/llms.txt) - [OpenAPI document](https://skmtc.dev/magichourhq/apis/magic-hour-api/revisions/a855fc569134?raw)
