Turn text into speech
Read up to 2,000 characters aloud into a WAV in the media library, for $0.03 a call.
Pick one of six narrator voices (Sulafat, Charon, Kore, Achird, Erinome, Schedar) or pass a character from GET /api/characters to speak in that actor's designed or cloned voice. Energy is calm, confident, energetic or hype, and a style line adds direction in plain words. The WAV key goes into a video edit or a post.
Ask in plain words
- "read this script aloud in a calm female voice"
- "text to speech API for my videos"
- "say this in my cloned voice"
- "make a voiceover for the launch clip"
From an agent host (MCP)
Server: https://shapelessai.com/mcp (add it to your host).
tools_runwith{ "name": "speak", "input": { ... } }: the input is the REST body below;tools_listprints its JSON Schema.
From code (REST)
Bearer API key with the scope each call names (auth, OpenAPI).
POST /api/speech(write scope): Text to speech (tool speak): {text (<= 2000 chars), voice? (Sulafat, Charon, Kore, Achird, Erinome, Schedar), character? (id or slug, reads in its voice), energy? (calm|confident|energetic|hype), style?, name?, budgetUsd?}. Output mediaKey is a WAV.
From a terminal (CLI)
shapeless tools run speak --input '<json>'(tools show speakprints the schema)
Example
Refusals
| Status | Meaning |
|---|---|
| 400 | The input does not match the tool's schema; the message names the field. |
| 402 | Not enough credit to hold budgetUsd, or the call costs more than budgetUsd. |
| 404 | No such tool on this deployment. |
| 422 | The tool refused this input; nothing was charged. |
| 502 | The tool failed; nothing was charged. |
