Skip to main content
Voice format: FishAudio.<Model>.<VoiceId> Fish Audio is a Telnyx-hosted external TTS provider. Telnyx exposes a hand-vetted shortlist of Fish Audio voices from their public Voice Library.
Fish Audio is cross-lingual — any voice can speak any language from the input text. The language field in the voice listing is the voice’s native accent only, not a synthesis constraint.

Models

ModelDescription
s2.1-proLatest generation. Improved quality, latency, and throughput. Default.
s2-proPrevious generation. Multi-speaker, expression control.
s1Oldest generation.
All curated voices are available under all three models.

Curated Voices

VoiceGenderNative LanguageVoice ID
AriaFemaleEnglish933563129e564b19a115bedd57b7406a
NovaFemaleEnglishb545c585f631496c914815291da4e893
PaulaFemaleEnglishc2623f0c075b4492ac367989aee1576f
ClaireFemaleFrench5567200c7d8341738f0892bbacd3be3c
YukiFemaleJapanese5161d41404314212af1254556477c17d
EthanMaleEnglish536d3a5e000945adb7038665781a4aca
AtlasMaleEnglishc5f56a6cc2ec4fa8920cb4c5889a3fb7
MaxMaleEnglish802e3bc2b27e49c2995d23ef70e6ac89
AdrianMaleEnglishbf322df2096a46f18c579d0baa36f41d
MateoMaleSpanish35199d5438854f5d9157c500479ab684
Only curated catalog voices are accepted for synthesis. Arbitrary Fish Voice-Library reference_ids cannot be used under the Telnyx API key.

WebSocket

Query Parameters

ParameterTypeDefaultDescription
audio_formatstringlinear16mp3, wav, linear16 (maps to PCM).
sample_rateinteger24000Depends on format (see table below).

Voice Settings

Fish Audio does not support speed, pitch, or emotion controls. Voice settings are limited to format and sample rate overrides:
FieldTypeDefaultDescription
formatstringpcmmp3, wav, pcm, opus.
sample_rateinteger24000Sample rate in Hz (valid values depend on format).
{
  "text": " ",
  "voice_settings": {
    "format": "mp3",
    "sample_rate": 44100
  }
}

REST API

Fields

FieldTypeDefaultDescription
formatstringpcmmp3, wav, pcm, opus.
sample_rateinteger24000Sample rate in Hz (valid values depend on format).
output_typestringbinary_outputbinary_output, base64_output, or audio_id.

Response

Default (binary_output): chunked audio bytes. With output_type: "base64_output": JSON with base64-encoded audio. With output_type: "audio_id": JSON with an audio_url for deferred retrieval.

Audio Formats & Sample Rates

Each format has a fixed set of accepted sample rates:
FormatAccepted Sample Rates (Hz)
pcm8000, 16000, 24000, 32000, 44100
wav8000, 16000, 24000, 32000, 44100
mp332000, 44100
opus48000
On WebSocket, the audio_format query parameter and voice_settings.format are independent parameters with different vocabularies. The audio_format query param accepts mp3, wav, and linear16 (which maps to pcm). The voice_settings.format field accepts mp3, wav, pcm, and opus directly. If both are set, voice_settings.format takes precedence.

In-Call Playback

Fish Audio is available for in-call TTS via Call Control speak and TeXML <Say>. For telephony playback, the gateway automatically delivers MP3 at 44.1 kHz to ensure correct resampling by the call-control audio pipeline. See In-Call Playback for details.

Provider Docs