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

# List Voices

`GET /voices`

## Request

- Base URL: `https://api.moda.app/v1`
- URL: `https://api.moda.app/v1/voices`
- Auth: HTTP bearer

Search the managed voice catalog: ElevenLabs and Inworld premade voices and Fish Audio's library.

Each voice names its ``provider``; a voice renders only on its own engine's models
(``compatible_models``). Every filter is enforced server-side and echoed in
``filters_applied``. The opaque ``next_cursor`` is bound to these filters; changing them with
a cursor is ``400 invalid_cursor``.

## Query parameters

- `query` string, nullable
- `language` string, nullable
- `accent` string, nullable
- `use_case` string, nullable
- `gender` string, nullable
- `provider` string, nullable: elevenlabs, fishaudio or inworld: only that engine's voices.
- `category` string, nullable: premade (ElevenLabs and Inworld stock voices), featured (Fish Audio voices whose rights Fish secured, celebrity and creator voices included) or community (popular public Fish Audio voices).
- `include_unavailable` boolean
- `cursor` string, nullable
- `limit` integer

## Headers

- `X-Voice-Engines` string, nullable: The voice engines this client understands, comma-separated: elevenlabs,fishaudio,inworld. ElevenLabs is always on; Fish Audio models and voices appear only for a client that lists fishaudio (or, on GET /v1/voices, asks for provider=fishaudio or a featured/community category), and Inworld's only for a client that lists inworld (or asks for provider=inworld).
- `Moda-Version` '2026-04-12' | '2026-05-01'

## Response `200`

Successful Response

- VoicePage
  - `object` 'list'
  - `data` Voice[], required
    - `object` 'voice'
    - `id` string, required
    - `name` string, required
    - `description` string, nullable, required
    - `provider` 'elevenlabs' | 'fishaudio' | 'inworld', required
    - `category` string, required
    - `source` string, required
    - `creator_name` string, nullable, required
    - `labels` VoiceLabels, required
      - `accent` string, nullable, required
      - `age` string, nullable, required
      - `gender` string, nullable, required
      - `use_case` string, nullable, required
      - `descriptive` string, nullable, required
    - `languages` VoiceLanguage[], required
      - `language` string, required
      - `accent` string, nullable, required
      - `locale` string, nullable, required
    - `compatible_models` string[], required
    - `recommended_models` string[], required
    - `preview` VoicePreview, required
      - `url` string, required
      - `mime_type` string
      - `expires_at` string, nullable
    - `availability` VoiceAvailability, required
      - `status` string, required
      - `reason` string, nullable, required
      - `revoked_at` string, nullable, required
    - `catalog_refreshed_at` string, required
  - `next_cursor` string, nullable, required
  - `returned` integer, required
  - `has_more` boolean, required
  - `limit` integer, required
  - `total` integer, required
  - `filters_applied` VoiceFiltersApplied, required
    - `query` string, nullable, required
    - `language` string, nullable, required
    - `accent` string, nullable, required
    - `use_case` string, nullable, required
    - `gender` string, nullable, required
    - `provider` 'elevenlabs' | 'fishaudio' | 'inworld', nullable, required
    - `category` string, nullable, required
    - `include_unavailable` boolean, required

## Other responses

- `401`: Authentication required.
- `402`: Insufficient credits for a metered operation.
- `403`: Permission denied for this scope.
- `404`: Resource not found.
- `409`: Conflict (idempotency / resource state).
- `422`: Request validation failed.
- `429`: Rate limit exceeded.
- `500`: Internal error.

## Changes

- **2026-11-03** `9ac6a3abc0f8`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/moda/apis/moda-public-api/changes/voices/get.md)

---

[API](https://skmtc.dev/moda/apis/moda-public-api.md) - [All operations](https://skmtc.dev/moda/apis/moda-public-api/llms.txt) - [OpenAPI document](https://skmtc.dev/moda/apis/moda-public-api/revisions/9ac6a3abc0f8?raw)
