
Output
audio
LLM-ready
API & LLM schema
Exact request contract for this model. Agents can fetch it from /api/v1/models?id=fal-ai/gemini-3.1-flash-tts.
POST
/api/v1/generate12 fields · 2 required| Field | Type | Requirement | Contract |
|---|---|---|---|
model_id | constant | Required | ArtEmotion model identifier. |
extra | object | Optional | Model-specific settings may also be nested here. |
max_credits | number | Optional | Reject before submission if the estimated list price exceeds this cap. · Range: 1–… |
webhook_url | string | Optional | Format: uri |
webhook_secret | string | Optional | Optional model input. |
folder_id | string | Optional | Optional model input. |
prompt | string | Required | Optional model input. |
voice | string | Optional | Gemini TTS voice. Click to preview any voice. · Allowed: Achernar, Achird, Algenib, Algieba, Alnilam, Aoede, Autonoe, Callirrhoe, Charon, Despina, Enceladus, Erinome, Fenrir, Gacrux, Iapetus, Kore, Laomedeia, Leda, Orus, Puck, Pulcherrima, Rasalgethi, Sadachbia, Sadaltager, Schedar, Sulafat, Umbriel, Vindemiatrix, Zephyr, Zubenelgenubi · Default: Kore |
language_code | string | Optional | Steers the model to speak in the specified language. Auto-detected from the text if not set. · Allowed: Arabic (Egypt), Bangla (Bangladesh), Dutch (Netherlands), English (India), English (US), French (France), German (Germany), Hindi (India), Indonesian (Indonesia), Italian (Italy), Japanese (Japan), Korean (South Korea), Marathi (India), Polish (Poland), Portuguese (Brazil), Romanian (Romania), Russian (Russia), Spanish (Spain), Tamil (India), Telugu (India), Thai (Thailand), Turkish (Turkey), Ukrainian (Ukraine), Vietnamese (Vietnam), Afrikaans (South Africa), Albanian (Albania), Amharic (Ethiopia), Arabic (World), Armenian (Armenia), Azerbaijani (Azerbaijan), Basque (Spain), Belarusian (Belarus), Bulgarian (Bulgaria), Burmese (Myanmar), Catalan (Spain), Cebuano (Philippines), Chinese Mandarin (China), Chinese Mandarin (Taiwan), Croatian (Croatia), Czech (Czech Republic), Danish (Denmark), English (Australia), English (UK), Estonian (Estonia), Filipino (Philippines), Finnish (Finland), French (Canada), Galician (Spain), Georgian (Georgia), Greek (Greece), Gujarati (India), Haitian Creole (Haiti), Hebrew (Israel), Hungarian (Hungary), Icelandic (Iceland), Javanese (Java), Kannada (India), Konkani (India), Lao (Laos), Latin (Vatican City), Latvian (Latvia), Lithuanian (Lithuania), Luxembourgish (Luxembourg), Macedonian (North Macedonia), Maithili (India), Malagasy (Madagascar), Malay (Malaysia), Malayalam (India), Mongolian (Mongolia), Nepali (Nepal), Norwegian Bokmal (Norway), Norwegian Nynorsk (Norway), Odia (India), Pashto (Afghanistan), Persian (Iran), Portuguese (Portugal), Punjabi (India), Serbian (Serbia), Sindhi (India), Sinhala (Sri Lanka), Slovak (Slovakia), Slovenian (Slovenia), Spanish (Latin America), Spanish (Mexico), Swahili (Kenya), Swedish (Sweden), Urdu (Pakistan) |
speakers | string | Optional | Multi-speaker voice config. Each entry needs a voice and a speaker ID that matches a prefix in your prompt (e.g. 'Alice: Hello!'). Ignored when empty. |
style_instructions | string | Optional | Optional delivery instructions prepended to the prompt (tone, pace, accent, emotion). Example: 'Speak slowly and warmly.' · Default: |
temperature | number | Optional | Controls variability of the generated speech. Lower = more consistent, higher = more expressive. · Default: 1 · Range: 0–2 |
Minimal request example
{
"model_id": "fal-ai/gemini-3.1-flash-tts",
"prompt": "Describe the result you want to create."
}Raw JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://www.artemotion.ai/api/v1/models?id=fal-ai%2Fgemini-3.1-flash-tts",
"title": "Gemini 3.1 Flash TTS generation request",
"description": "Request body accepted by POST /api/v1/generate for fal-ai/gemini-3.1-flash-tts.",
"type": "object",
"properties": {
"model_id": {
"type": "string",
"const": "fal-ai/gemini-3.1-flash-tts",
"description": "ArtEmotion model identifier."
},
"extra": {
"type": "object",
"additionalProperties": true,
"description": "Model-specific settings may also be nested here."
},
"max_credits": {
"type": "number",
"minimum": 1,
"description": "Reject before submission if the estimated list price exceeds this cap."
},
"webhook_url": {
"type": "string",
"format": "uri",
"maxLength": 2048
},
"webhook_secret": {
"type": "string",
"maxLength": 512
},
"folder_id": {
"type": "string"
},
"prompt": {
"type": "string"
},
"voice": {
"title": "Voice",
"description": "Gemini TTS voice. Click to preview any voice.",
"default": "Kore",
"type": "string",
"enum": [
"Achernar",
"Achird",
"Algenib",
"Algieba",
"Alnilam",
"Aoede",
"Autonoe",
"Callirrhoe",
"Charon",
"Despina",
"Enceladus",
"Erinome",
"Fenrir",
"Gacrux",
"Iapetus",
"Kore",
"Laomedeia",
"Leda",
"Orus",
"Puck",
"Pulcherrima",
"Rasalgethi",
"Sadachbia",
"Sadaltager",
"Schedar",
"Sulafat",
"Umbriel",
"Vindemiatrix",
"Zephyr",
"Zubenelgenubi"
]
},
"language_code": {
"title": "Language",
"description": "Steers the model to speak in the specified language. Auto-detected from the text if not set.",
"type": "string",
"enum": [
"Arabic (Egypt)",
"Bangla (Bangladesh)",
"Dutch (Netherlands)",
"English (India)",
"English (US)",
"French (France)",
"German (Germany)",
"Hindi (India)",
"Indonesian (Indonesia)",
"Italian (Italy)",
"Japanese (Japan)",
"Korean (South Korea)",
"Marathi (India)",
"Polish (Poland)",
"Portuguese (Brazil)",
"Romanian (Romania)",
"Russian (Russia)",
"Spanish (Spain)",
"Tamil (India)",
"Telugu (India)",
"Thai (Thailand)",
"Turkish (Turkey)",
"Ukrainian (Ukraine)",
"Vietnamese (Vietnam)",
"Afrikaans (South Africa)",
"Albanian (Albania)",
"Amharic (Ethiopia)",
"Arabic (World)",
"Armenian (Armenia)",
"Azerbaijani (Azerbaijan)",
"Basque (Spain)",
"Belarusian (Belarus)",
"Bulgarian (Bulgaria)",
"Burmese (Myanmar)",
"Catalan (Spain)",
"Cebuano (Philippines)",
"Chinese Mandarin (China)",
"Chinese Mandarin (Taiwan)",
"Croatian (Croatia)",
"Czech (Czech Republic)",
"Danish (Denmark)",
"English (Australia)",
"English (UK)",
"Estonian (Estonia)",
"Filipino (Philippines)",
"Finnish (Finland)",
"French (Canada)",
"Galician (Spain)",
"Georgian (Georgia)",
"Greek (Greece)",
"Gujarati (India)",
"Haitian Creole (Haiti)",
"Hebrew (Israel)",
"Hungarian (Hungary)",
"Icelandic (Iceland)",
"Javanese (Java)",
"Kannada (India)",
"Konkani (India)",
"Lao (Laos)",
"Latin (Vatican City)",
"Latvian (Latvia)",
"Lithuanian (Lithuania)",
"Luxembourgish (Luxembourg)",
"Macedonian (North Macedonia)",
"Maithili (India)",
"Malagasy (Madagascar)",
"Malay (Malaysia)",
"Malayalam (India)",
"Mongolian (Mongolia)",
"Nepali (Nepal)",
"Norwegian Bokmal (Norway)",
"Norwegian Nynorsk (Norway)",
"Odia (India)",
"Pashto (Afghanistan)",
"Persian (Iran)",
"Portuguese (Portugal)",
"Punjabi (India)",
"Serbian (Serbia)",
"Sindhi (India)",
"Sinhala (Sri Lanka)",
"Slovak (Slovakia)",
"Slovenian (Slovenia)",
"Spanish (Latin America)",
"Spanish (Mexico)",
"Swahili (Kenya)",
"Swedish (Sweden)",
"Urdu (Pakistan)"
]
},
"speakers": {
"title": "Speakers",
"description": "Multi-speaker voice config. Each entry needs a voice and a speaker ID that matches a prefix in your prompt (e.g. 'Alice: Hello!'). Ignored when empty.",
"type": "string"
},
"style_instructions": {
"title": "Style Instructions",
"description": "Optional delivery instructions prepended to the prompt (tone, pace, accent, emotion). Example: 'Speak slowly and warmly.'",
"default": "",
"type": "string"
},
"temperature": {
"title": "Temperature",
"description": "Controls variability of the generated speech. Lower = more consistent, higher = more expressive.",
"default": 1,
"type": "number",
"minimum": 0,
"maximum": 2,
"multipleOf": 0.05
}
},
"required": [
"model_id",
"prompt"
],
"additionalProperties": false
}FAQ
How much does Gemini 3.1 Flash TTS cost on ArtEmotion?
Credit-based pricing. You pay in ArtEmotion credits — every plan and top-up converts USD to credits at a fixed rate.
Do I get my credits back if Gemini 3.1 Flash TTS fails?
Yes — failed generations are never charged. The credits are released back to your balance automatically.
Can I call Gemini 3.1 Flash TTS from the API?
Yes. Use POST /api/v1/generate with model_id: "fal-ai/gemini-3.1-flash-tts". See the API reference for the full schema.
Where are my generations stored?
Every output is saved to your personal Library. You can export or delete everything any time from Privacy & deletion.
Ready to generate with Gemini 3.1 Flash TTS?
Start now →No commitment. New accounts get 50 free credits on signup. See pricing.