Skip to content
Integration

Fish Audio integrations and automation

Describe what should happen in Fish Audio, and when, in plain words. Whenever builds the workflow and runs it on a schedule, on a webhook, or when another app sends an event.

Connection requirements, provider permissions and optional AI usage apply. Read the runtime limits.

Start for freeNo credit card requiredAI building has weekly usage limits.

Fish Audio on Whenever

About Fish Audio

Fish Audio provides speech synthesis, transcription, voice cloning, and conversational voice-agent APIs.

How Whenever connects

Through its API, using the credentials and permissions required by the provider.

Build it from your AI client

Connect Claude, Cursor or Codex to the Whenever MCP server and your coding agent can build and deploy the Fish Audio workflow. It runs on Whenever afterwards, on its schedule or webhook, with the chat closed.

Set up the Whenever MCP server

Plan your Fish Audio workflow

Fish Audio turns text into speech in a chosen voice, and most automation around it is narration: reading a blog post aloud, voicing a daily briefing, producing the same announcement in several voices. The API centres on one call, text to speech, which takes the text and a reference to a voice and streams back audio. A voice is either a voice model saved in Fish Audio, identified by a reference_id, or a short reference recording sent with the request for zero-shot cloning. Fish Audio recommends creating a voice model from your reference audio first, saying this improves quality and reduces latency.

The output settings are explicit, which helps if the file is headed for a particular platform. The request chooses mp3, wav, pcm or opus, the sample rate and, for mp3 and opus, the bitrate. The model is chosen with a request header, and Fish Audio's reference lists several, including a free developer tier model and a preview model whose behaviour may change; if the header is missing, a default is used. Newer models in the S2 family accept dialogue with speaker tags in the text and one voice per speaker, which suits a two-host recap without stitching clips together.

Speech generation is not deterministic. Parameters such as temperature and top_p control how expressive and varied the reading is, so the same paragraph can sound slightly different on each run. For a recurring jingle or legal disclaimer, generate it once and reuse the file. A 402 response means the account has run out of paid balance, so a workflow should stop and tell someone rather than retry. Voice cloning raises consent questions: only clone voices you have the right to use.

Whenever sends the request with your API key and stores or forwards the returned audio. Long articles are best split at paragraph boundaries, generated in order and kept as separate files or joined afterwards.

Fish Audio workflow examples

Authored starter briefs to configure with your accounts, not preconfigured workflows.

Audio version of each new blog post

Narrate new posts with one saved voice model and attach the file to the post record.

Build this workflow

Two-voice weekly team recap

Use speaker tags with two saved voices to produce a short dialogue recap of the week's highlights.

Build this workflow

Store announcements in several languages

Generate one audio file per translated announcement for in-store playback.

Build this workflow

Related apps for your workflows

All integrations

Fish Audio FAQs

What is a reference_id in Fish Audio?

It is the ID of a voice model saved in Fish Audio. Passing it in the text-to-speech request makes the output use that voice. Without it, the request can include reference audio directly for zero-shot cloning.

Which audio formats can the API return?

The text-to-speech reference lists mp3, wav, pcm and opus, with selectable sample rates and, for mp3 and opus, bitrates.

Can one request contain more than one speaker?

Yes, with the S2 family and the drama preview model listed in the docs. Text is tagged per speaker and reference_id becomes a list of voices. The s1 model does not support this.

Why does the same text sound different on each run?

Generation is sampled, and temperature and top_p control how varied it is. Lower values are more consistent; for content that must never change, generate once and reuse the file.

What happens when my Fish Audio balance runs out?

The API returns a 402 payment-required response. The workflow should stop and alert you rather than retry the same request.

Agents should build your automations, not be them

Describe your first workflow in plain words. One stays live for free, no credit card.

No credit card required