Skip to content
TriedDocs
Voices

Get voice preview

Get a short MP3 sample of a catalog voice, generated with ElevenLabs.

GEThttps://api.tried.com.au/voice-preview/{voice_id}

Needs keys Returns a short MP3 of a catalog voice saying "Hi, thanks for calling. How can I help you today?". It needs ELEVENLABS_API_KEY. Without it the endpoint returns 404, and the dashboard voice picker falls back to the browser's speech synthesis.

The sample is always generated through ElevenLabs text to speech, so use it with 11labs- catalog voices. Workspace voices (custom_voice_) are not supported.

Request#

Path parameter Type Required Description
voice_id string Yes A catalog voice ID, for example 11labs-Rachel.
Query parameter Type Required Description
model string No ElevenLabs model ID. Default eleven_flash_v2_5.

Example request#

curl https://api.tried.com.au/voice-preview/11labs-Rachel \
  -H "Authorization: Bearer $TRIED_API_KEY" \
  -o rachel.mp3
import { writeFile } from "node:fs/promises";

const res = await fetch("https://api.tried.com.au/voice-preview/11labs-Rachel", {
  headers: { Authorization: `Bearer ${process.env.TRIED_API_KEY}` },
});
await writeFile("rachel.mp3", Buffer.from(await res.arrayBuffer()));
import os, requests

res = requests.get(
    "https://api.tried.com.au/voice-preview/11labs-Rachel",
    headers={"Authorization": f"Bearer {os.environ['TRIED_API_KEY']}"},
)
open("rachel.mp3", "wb").write(res.content)

Response#

200 OK

The body is MP3 audio (Content-Type: audio/mpeg, 44.1 kHz, 64 kbps) with Cache-Control: private, max-age=86400. The API caches each voice and model pair in memory, so repeat requests do not call ElevenLabs again.

Errors#

Status When
401 Missing or invalid API key.
403 The key's IP allowlist or scopes reject the request. This route needs the agents scope.
404 Voice <voice_id> not found when the ID is not a catalog voice, or Voice previews are unavailable: ELEVENLABS_API_KEY is not set.
429 Rate limit exceeded. See Rate limits.
502 ElevenLabs request failed: ... or ElevenLabs returned <status>.

See Errors for the body format.