List Voices
Changed onSearch 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.
Request
- Base URLhttps://api.moda.app/v1
- URLhttps://api.moda.app/v1/voices
- AuthHTTP bearer
Query parameters
elevenlabs, fishaudio or inworld: only that engine's voices.
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).
Headers
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).
Calendar-dated API version pin. New integrations should pin 2026-05-01 to opt into the newest response shapes. For back-compat the server also accepts requests with no header and resolves them to the current default (today: 2026-04-12); that default advances on each sunset date. Any unsupported value returns 400 unsupported_version.
Response
Successful Response
Changes
- info
endpoint added
- info