API reference · Platform
Voices
The roster and your cloned voices — everything speech accepts.
GET/v1/voicesFree (cloning included) — speech is billed per use
Everything /v1/audio/speech accepts as a voice: the roster (kind: "roster") and your clones (kind: "cloned" — pass the clone's id). Characters speak too: use char:<id> instead.
POST /v1/voices clones a voice from audio samples (multipart: name + one or more audio files, 1GB total) — free, synchronous, returns the clone ready to use. DELETE /v1/voices/{id} removes a clone. The paid part is the speech that uses it.
curl https://eroq.ai/v1/voices \
-H "Authorization: Bearer $EROQ_API_KEY"/v1/voices
→ GET /v1/voices
Press run — this replays a real exchange from the docs' own data. No key, no request, no charge.
Response
200 · application/json
{
"voices": [
{ "id": "aria", "name": "Aria", "kind": "roster", "gender": "female" },
{ "id": "b7c2…", "name": "My narrator", "kind": "cloned", "previewUrl": "https://…" }
]
}