Text-to-speech

$0.120 per call · USDC via x402 · POST /api/tts

Convert text to speech with ElevenLabs Eleven v4 Turbo: returns audio (the base64-encoded file in the format asked for: mp3, opus, aac, flac, wav or pcm) with model, voice, format and chars (the characters spoken). Send POST /api/tts with the required field text and pay $0.120 per call over x402 or MPP (there is no free tier). It returns a JSON object with model, provider, voice, format, audio and 1 more.

The ten OpenAI voice names each map to their own ElevenLabs voice, or name one of 21 ElevenLabs voices directly; the answer names the voice that spoke. 90+ languages on ElevenLabs. If ElevenLabs is busy, throttling or down, a backup speech model with fewer voices and languages serves the call and the answer's model field names it. No API key needed; pay per call over x402 or MPP. Text capped at 2000 chars. Model-backed. For high-volume speech where timbre matters less, /api/tts-lite is the same interface on Kokoro-82M at $0.005.

Category: AI & compute · Tags: tts text-to-speech audio voice speech elevenlabs eleven-v4-turbo

TRY IN PLAYGROUND →

Parameters

NameTypeRequiredDescription
textstringyesText to convert to speech (max 2000 chars) Also accepted as content, str, string, input, body, data.
voicestringnoVoice: alloy, ash, ballad, coral, echo, fable, nova, onyx, sage, shimmer (default: alloy), each mapped to its own ElevenLabs voice, or an ElevenLabs voice by name (george, sarah, adam, alice, bella, bill, brian, callum, charlie, chris, daniel, eric, harry, jessica, laura, liam, lily, matilda, river, roger, will)
formatstringnoAudio format: mp3, opus, aac, flac, wav, pcm (default: mp3)

Example request

curl -i -X POST https://agent402.tools/api/tts \
  -H "Content-Type: application/json" \
  -d '{"text":"Hello from Agent402!","voice":"alloy","format":"mp3"}'

Without payment this returns HTTP 402 Payment Required with the exact price for tts; any x402 v2 or MPP client pays it and retries.

Example response

{
  "model": "elevenlabs/eleven-v4-turbo",
  "provider": "openrouter",
  "voice": "river",
  "format": "mp3",
  "audio": "<base64-encoded audio>",
  "chars": 20
}
FieldTypeAlways presentIn the example
modelstringyeselevenlabs/eleven-v4-turbo
providerstringyesopenrouter
voicestringyesriver
formatstringyesmp3
audiostringyes<base64-encoded audio>
charsnumberyes20

From an MCP client

catalog.call {
  "slug": "tts",
  "params": {
    "text": "Hello from Agent402!",
    "voice": "alloy",
    "format": "mp3"
  }
}

The hosted connector at https://agent402.tools/mcp needs a payment for tts; the stdio package pays it from a wallet or from AGENT402_CREDITS_KEY. Local install: npx -y agent402-mcp.

Errors and behavior

Paid call (JavaScript agent)

import { wrapFetchWithPayment } from "@x402/fetch";
import { x402Client } from "@x402/core/client";
import { registerExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";

const client = new x402Client();
client.setSpendControls?.(false); // keep your own spending ceiling in code
registerExactEvmScheme(client, { signer: privateKeyToAccount(KEY) });
const payFetch = wrapFetchWithPayment(fetch, client);

const res = await payFetch("https://agent402.tools/api/tts", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({
    "text": "Hello from Agent402!",
    "voice": "alloy",
    "format": "mp3"
  }),
});

Related tools

Text-to-speech (HD)

$0.240 · POST /api/tts-hd

Convert text to speech with ElevenLabs Eleven v4, its most expressive model (inline audio tags such as [whispering] are …

Text-to-speech (lite)

$0.005 · POST /api/tts-lite

Convert text to speech with Kokoro-82M, a fraction of the price of /api/tts. Returns base64-encoded mp3 or pcm. The same…

Text-to-speech (OpenAI-compatible)

$0.060 · POST /v1/audio/speech

OpenAI-compatible text-to-speech over x402 - point any OpenAI SDK's audio.speech.create() at base_url https://agent402.t…

Speech-to-text

$0.030 · POST /api/transcribe

Transcribe audio to text using OpenAI (gpt-transcribe). Provide a URL to an audio file (mp3, wav, m4a, etc.) and get bac…

Speech-to-text (Pro)

$0.100 · POST /api/transcribe-pro

Transcribe audio to text using OpenAI (gpt-transcribe) - the same model as /api/transcribe with a longer cap. Provide a …

Speech-to-text (OpenAI transcription wire)

$0.030 · POST /v1/audio/transcriptions

OpenAI's own transcription wire: POST multipart/form-data with a `file` part and get the transcript back. Point any Whis…