Building blocks
Text-to-speech
Turn a script into speech audio with one of your cloned voices. Useful on its own, and the same engine video jobs use internally when you pass them a script.
Synthesize speech
POST/api/partner/v1/tts
Costs 10 credits per 1,000 characters (minimum 10), charged immediately. The voice_id must be one of your voices — someone else's id returns 404. The speech engine is fixed; there's nothing to configure.
| Field | Type | Description |
|---|---|---|
| voice_id | string required | From POST /voices — cloned or library. |
| text | string ≤5000 required | What to say, spoken verbatim. |
| language_code | string | Spoken-language hint, e.g. en, ar. |
| voice_settings | object | Partial override of the voice settings: stability, similarity_boost, style, speed (0.7–1.2 on this model; default 1.2), use_speaker_boost. Omit for tuned defaults. |
Request — every param populated
curl -X POST https://platform.promoat.ai/api/partner/v1/tts \
-H "Authorization: Bearer $PROMOAT_KEY" \
-H "Content-Type: application/json" \
-d '{
"voice_id": "VOICE_ID",
"text": "Welcome back! Here is what is new this week.",
"language_code": "en",
"voice_settings": {
"stability": 0.4,
"similarity_boost": 0.75,
"style": 0.3,
"speed": 1.1,
"use_speaker_boost": true
}
}'Response
{
"audio_url": "https://…/tts-audio.mp3",
"duration_sec": 4.02,
"asset_id": "…",
"credits_charged": 10
}When to call this directly
- Preview a voice before committing a video job to it — 10 credits to hear the clone say your actual script.
- Audio-only products — voice notes, IVR lines, podcast inserts.
- Pre-generating narration you'll reuse: pass the resulting
audio_urlto a talking-head video instead of a script, so multiple videos share the exact same take.
For a normal one-off video you can skip this endpoint entirely — POST /videos with a script runs TTS inside the job.
Try it
Grab a voice_id from the list first, then paste it into the body:
Try itGET/api/partner/v1/voicesfree
Add your API key in the sidebar to enable this.
Try itPOST/api/partner/v1/ttscharges ~10 credits
Add your API key in the sidebar to enable this.