grok-ttsdefaultGrok TTS API — how to connect and pay
xAI Grok TTS — speech synthesis from xAI: 28 voices, 20 languages including Russian. Up to 15000 characters per request. Priced per 1000 characters, charged in proportion to the text length.
Channel comparison
last 7 days
| Channel | Price |
|---|---|
Flow grok-ttsdefault | from $0.02 / 1,000 chars |
Build the result you need
grok-ttsThis model only publishes its minimum price in the catalog.
What is Grok TTS
xAI Grok TTS — speech synthesis from xAI: 28 voices, 20 languages including Russian. Up to 15000 characters per request. Priced per 1000 characters, charged in proportion to the text length.
Contract at a glance
- Input
- text
- Output
- audio
- Mode
- async (job + polling)
- Status polling
- every 3 s · up to 90 s
Strengths
- Pricing: per 1K characters
- Inputs: text
- 28 configurable options
- One API key for media generation
Where it is used
- Video voiceovers
- Voice scripts
- Audio versions of text
- Recording cleanup
API contract
Generation runs asynchronously: create a job, then poll its status until completion.
- Create job
- POST /api/media/generate
- Check status
- GET /api/media/jobs/{jobId}
- Input
- text
- Output
- audio
- Polling
- every 3 s · up to 90 s
- Authentication
- Authorization: Bearer sk-pv-…
Example request
Pass your key in the Bearer header. The API returns jobId for polling the status.
curl -sS https://getvibeapi.com/api/media/generate \
-H "Authorization: Bearer $GETVIBE_API_KEY" \
-H "Content-Type: application/json" \
--data-binary '{"model":"grok-tts","prompt":"a beautiful landscape","opts":{"voice":"eve","language":"auto"}}'JavaScript
const response = await fetch('https://getvibeapi.com/api/media/generate', {
method: 'POST',
headers: {
Authorization: `Bearer ${process.env.GETVIBE_API_KEY}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({
"model": "grok-tts",
"prompt": "a beautiful landscape",
"opts": {
"voice": "eve",
"language": "auto"
}
}),
});
if (!response.ok) throw new Error(`GetVibe API: ${response.status}`);
const { jobId } = await response.json();
console.log(jobId);API request parameters
Parameters for requests to Grok TTS via the GetVibe API.
promptreq.voicelanguage| Parameter | Type | Values | Default | Price |
|---|---|---|---|---|
promptreq. | text | text description | required | — |
voice | option selection | Eve (default) · Ara · Rex · Sal · Leo · Carina · Zagan · Helix · Orion · Luna · Iris · Altair · Zenith · Perseus · Helios · Lux · Kepler · Rigel · Cosmo · Celeste · Ursa · Sirius · Lumen · Castor · Naksh · Atlas · Aurora · Liora | Eve | Included in the base price |
language | option selection | Auto (default) · Russian · English · German · French · Spanish (Spain) · Spanish (Mexico) · Italian · Portuguese (Brazil) · Portuguese (Portugal) · Turkish · Chinese · Japanese · Korean · Hindi · Bengali · Indonesian · Vietnamese · Arabic (Egypt) · Arabic (Saudi Arabia) · Arabic (UAE) | Auto | Included in the base price |
Request: POST https://getvibeapi.com/api/media/generate. Prices in USD.
Price of Grok TTS
The cost of Grok TTS: from $0.02 per 1K characters. The price is calculated dynamically at the current exchange rate, and the final charge is shown in the API response (priceRub). Payment in USD, no subscriptions.
What a default request costs
With no parameters sent, the request uses these values: Voice — Eve, Language — Auto. That request costs $0.02.
Channels and prices for every parameter combination
For every channel, the price of every parameter combination. It is exactly the amount a successful generation is charged, and the same figure as in the machine-readable table linked below.
Flowgrok-ttsfrom $0.02 / 1,000 charsexact prices
| Price | Price |
|---|---|
| Flow | $0.02 / 1,000 chars |
Price per 1,000 characters of text. The charge is this price × the number of characters.
Every combination as JSON: /api/media/price-table?model=grok-tts
README
The machine-readable contract for Grok TTS contains the request schema, operations, limits, polling and response examples.
# Grok TTS
Public model: grok-tts
Create job: POST /api/media/generate
Check status: GET /api/media/jobs/{jobId}
## Input parameters
- `prompt` (text): text description; default: required
- `voice` (option selection): Eve (default) · Ara · Rex · Sal · Leo · Carina · Zagan · Helix · Orion · Luna · Iris · Altair · Zenith · Perseus · Helios · Lux · Kepler · Rigel · Cosmo · Celeste · Ursa · Sirius · Lumen · Castor · Naksh · Atlas · Aurora · Liora; default: Eve
- `language` (option selection): Auto (default) · Russian · English · German · French · Spanish (Spain) · Spanish (Mexico) · Italian · Portuguese (Brazil) · Portuguese (Portugal) · Turkish · Chinese · Japanese · Korean · Hindi · Bengali · Indonesian · Vietnamese · Arabic (Egypt) · Arabic (Saudi Arabia) · Arabic (UAE); default: Auto
## Public variants
- `grok-tts`: FlowFAQ about the Grok TTS API
How much does Grok TTS cost?
The price of Grok TTS: from $0.02 per 1K characters. The price is calculated dynamically at the current exchange rate.
Is it compatible with the OpenAI SDK?
Yes, the API is fully OpenAI-compatible. Just change base_url to https://getvibeapi.com/v1 and set your key — the rest of the code stays the same.