Ana içeriğe atla

İstek Gövdesi

Senkron istek zaman aşımı: Bu chat dışı endpoint, yönlendirilen modelin tamamlanmasını bekler. Büyük girdiler, uzun sesler veya büyük batch’ler yaygın 30s istemci varsayılanlarını aşabilir; bu yüzden HTTP istemcisi zaman aşımını en az 120s olarak ayarlayın. Desteklenen isteğe bağlı alanlar model ailesine göre değişir. TokenLab bu alan matrisini yönlendirmeden önce doğrular: OpenAI TTS voice, instructions, response_format, stream_format ve speed kabul eder; MiniMax speech voice, voice_id, response_format, stream_format ve speed kabul eder; Gemini TTS prompt, language_code, voice, response_format, stream_format, speed ve temperature kabul eder; daha dar Vidu/Kling tarzı TTS rotaları yalnızca input ve stream_format kabul edebilir. user dahil bilinmeyen üst seviye alanlar yok sayılmaz, 400 unsupported_parameter döndürür.
model
string
varsayılan:"tts-1"
TTS modeli. Örnekler: tts-1, gpt-4o-mini-tts, speech-02-hd ve gemini-2.5-flash-tts. Güncel liste için GET /v1/models?recommended_for=tts sorgulayın.
input
string
gerekli
Ses üretilecek metin. Maksimum 4096 karakter.
voice
string | object
Ses seçici. nova gibi yerleşik bir ses, Kore gibi Gemini sesi veya uyumlu özel sesler için { "id": "voice-id" } gibi bir nesne gönderin.
voice_id
string
MiniMax uyumlu speech modelleri için sağlayıcıya özgü ses seçici.
instructions
string
Destekleyen OpenAI uyumlu TTS modelleri için isteğe bağlı stil veya okuma talimatları.
prompt
string
Gemini TTS modelleri için isteğe bağlı konuşma stili prompt’u.
language_code
string
Gemini, xAI ve uyumlu TTS route’ları için isteğe bağlı dil kodu, örneğin en-US.
response_format
string
Ses formatı. Yaygın değerler mp3, opus, aac, flac, wav ve pcm; desteklenen değerler model ailesine göre değişir.
stream_format
string
varsayılan:"audio"
TokenLab teslim formatı: audio veya sse. tts-1 ve tts-1-hd için stream_format=sse desteklenmez.
speed
number
Destekleyen model aileleri için konuşma hızı (0.25 ile 4.0 arası).
temperature
number
Gemini uyumlu TTS route’ları için sampling temperature (0 ile 2 arası).

Yanıt

İstenen formatta ses dosyasını döndürür.
curl -X POST "https://api.tokenlab.sh/v1/audio/speech" \
  -H "Authorization: Bearer sk-your-api-key" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "tts-1-hd",
    "voice": "nova",
    "input": "Hello, welcome to TokenLab!"
  }' \
  --output speech.mp3
from openai import OpenAI

client = OpenAI(
    api_key="sk-your-api-key",
    base_url="https://api.tokenlab.sh/v1"
)

response = client.audio.speech.create(
    model="tts-1-hd",
    voice="nova",
    input="Hello, welcome to TokenLab!"
)

response.stream_to_file("speech.mp3")
import OpenAI from 'openai';
import fs from 'fs';

const client = new OpenAI({
  apiKey: 'sk-your-api-key',
  baseURL: 'https://api.tokenlab.sh/v1'
});

const response = await client.audio.speech.create({
  model: 'tts-1-hd',
  voice: 'nova',
  input: 'Hello, welcome to TokenLab!'
});

const buffer = Buffer.from(await response.arrayBuffer());
fs.writeFileSync('speech.mp3', buffer);
<?php
$ch = curl_init('https://api.tokenlab.sh/v1/audio/speech');

curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POST => true,
    CURLOPT_HTTPHEADER => [
        'Content-Type: application/json',
        'Authorization: Bearer sk-your-api-key'
    ],
    CURLOPT_POSTFIELDS => json_encode([
        'model' => 'tts-1-hd',
        'voice' => 'nova',
        'input' => 'Hello, welcome to TokenLab!'
    ])
]);

$audio = curl_exec($ch);
curl_close($ch);

file_put_contents('speech.mp3', $audio);

Ses Örnekleri

SesAçıklama
alloyNötr, dengeli
ashSakin, ölçülü
balladMelodik, etkileyici
coralSıcak, davetkar
echoSıcak, konuşma tarzında
fableEtkileyici, anlatımsal
novaDostane, net
onyxDerin, otoriter
sageBilge, düşünceli
shimmerYumuşak, nazik
verseDinamik, çok yönlü

Yanıt örneği

<binary audio data>

Önemli alanlar

Content-Type
string
API tarafından dönen event veya message type.
body
binary
Ham yanıt gövdesi. JSON olarak parse etmeden doğrudan kaydedin.