Models
AudioGoogletext-to-speechvoice

Gemini 3.8 Flash TTS

Google Gemini 3.8 Flash TTS: expressive speech in 30 voices with natural-language style control and inline vocal events like <laugh>.

Model ID: gemini-3.8-flash-tts

Playground

Estimated cost—

Use the same request from code — API docs

Provider prices for this request

Enter a prompt to compare provider prices.

Result

Your generation will appear here.

Pricing by provider

Prices are per unit; requests without a provider are routed to the cheapest provider that supports your parameters.

ProviderOptionPrice (USD)Credits
fal.aiAll options$0.04510% off$0.041 / 1K chars1 / 1K chars

API reference

Endpoints

Base URL: https://01router.com/api/v1

POST/generationsCreate a generation (charges credits)
GET/generations/{id}Get a generation; polls the provider while running
POST/quotePrice a request on every provider (no charge, no key needed)

Authentication

Send your API key as a Bearer token. Requests are billed to the key owner's credits.

Authorization: Bearer sk_xxxxxxxxxxxxxxxx
Get an API key

Request body

NameTypeRequiredDescription
modelstringYes"gemini-3.8-flash-tts"
providerstringNoPin a provider; omit to auto-route to the cheapest. One of: fal
inputobjectYesModel parameters, see the input fields below.

input fields

Unified parameters work on every provider; some providers support a narrower range — check the quote endpoint or the playground.

NameTypeValuesDefault
prompt*text——
voiceenumKore | Puck | Charon | Fenrir | Leda | Orus | Aoede | Zephyr | Callirrhoe | Autonoe | Enceladus | Iapetus | Umbriel | Algieba | Despina | Erinome | Algenib | Rasalgethi | Laomedeia | Achernar | Alnilam | Schedar | Gacrux | Pulcherrima | Achird | Zubenelgenubi | Vindemiatrix | Sadachbia | Sadaltager | SulafatKore
style_instructions
e.g. "cheerful and friendly" (not billed)
string——

Example request

curl https://01router.com/api/v1/generations \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "gemini-3.8-flash-tts",
  "provider": "fal",
  "input": {
    "prompt": "An upbeat synth-pop song about a road trip at sunset",
    "voice": "Kore"
  }
}'

# poll until status is "succeeded" or "failed"
curl https://01router.com/api/v1/generations/<id> -H "Authorization: Bearer $API_KEY"

Response

Pass the model id, its unified input parameters and optionally a provider slug. The response returns immediately with the task id; image models on synchronous providers may already be succeeded.

{
  "id": "gen_6f1c…",
  "object": "generation",
  "model": "gemini-3.8-flash-tts",
  "type": "audio",
  "provider": "fal",
  "status": "processing",
  "input": {
    "prompt": "…",
    "voice": "Kore"
  },
  "outputs": [],
  "error": null,
  "credits": 0,
  "price_usd": 0,
  "created_at": "2026-10-23T08:00:00.000Z",
  "completed_at": null
}

Get the result

Poll every few seconds until status is succeeded or failed. Output URLs are provider-hosted and may expire — download them promptly.

curl https://01router.com/api/v1/generations/gen_6f1c… -H "Authorization: Bearer $API_KEY"

{ "id": "gen_6f1c…", "model": "gemini-3.8-flash-tts", "status": "succeeded", "outputs": ["https://…"], … }

Quote

Same body as creating a generation. Returns every available provider sorted by price, plus the ones that cannot serve the request and why.

curl https://01router.com/api/v1/quote -H "Content-Type: application/json" \
  -d '{"model":"gemini-3.8-flash-tts","input":{"prompt":"…","voice":"Kore"}}'

Auth, routing, billing and error codes are covered in Gateway API reference