OpenAdapterOpenAdapter
Endpoints

Text-to-Speech

Generate spoken audio from text using Kokoro TTS. OpenAI-compatible — drop-in replacement for the `/v1/audio/speech` endpoint. Supports multiple voices and outp

Base URL & authentication

Base URL: https://api.openadapter.in

All requests need an Authorization: Bearer sk-cv-... header. Generate or copy your API key from the Dashboard → API Keys page.

Generate spoken audio from text using Kokoro TTS. OpenAI-compatible — drop-in replacement for the /v1/audio/speech endpoint. Supports multiple voices and output formats.

POST https://api.openadapter.in/v1/audio/speech

Quick test (curl)

curl https://api.openadapter.in/v1/audio/speech \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "tts-1", "voice": "alloy", "input": "Hello world!"}' \
  --output speech.mp3
curl https://api.openadapter.in/v1/audio/speech \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "tts-1", "voice": "alloy", "input": "Hello!"}' \
  --output speech.mp3
with client.audio.speech.with_streaming_response.create(
    model="tts-1",
    voice="alloy",
    input="Hello from OpenAdapter!"
) as response:
    response.stream_to_file("speech.mp3")
import fs from 'fs';

const response = await client.audio.speech.create({
  model: 'tts-1',
  voice: 'alloy',
  input: 'Hello from OpenAdapter!',
});

const buffer = Buffer.from(await response.arrayBuffer());
fs.writeFileSync('speech.mp3', buffer);

Voices

Standard OpenAI voices: alloy, echo, fable, onyx, nova, shimmer. You can also use Kokoro-native voice names like af_heart or am_adam.

Output Formats

Set response_format to choose the output encoding: mp3 (default), wav, opus, flac, pcm.

On this page