Xuquuqda API

Isticmaal TTS.ai codsiyadaaga oo leh API-keena REST. OpenAI-ka-qaybgal ah qaabka u dhaqaaqista fudud.

REST API OpenAI la jaanqaada Jawaabaha JSON taageerada Streaming

Aragtida guud

The TTS.ai API siiyaa access programmic si ay dhammaan astaamaha platform: qoraal-to-dhaqanka, hadal-to-dhaqanka, codka isku-dhafan, audio kordhinta, iyo in ka badan. API isticmaalaa REST standard heshiisyada la JSON codsiga / jawaabta jirka.

Fadlan dooro

Ka hesho furaha API ka Goobaha xisaabta. Laga heli karaa qorshayaasha Pro iyo Enterprise.

URL-ka aasaasiga ah

https://api.tts.ai/v1/

Awoodsiinta

Tallaabo qaade Authorization madaxa

Aaminaad

dhammaan codsiyada API u baahan yihiin xaqiijinta iyada oo loo marayo calaamad qaade ah ee Authorization madaxa.

Madaxa HTTP
Authorization: Bearer sk-tts-your-api-key-here
Ilaalinta aad API sirta ah. Ha wadaagaan in code dhinac macaamiisha, repositories dadweynaha, ama logs. Dooro furaha si joogto ah oo ka mid ah settings xisaabtaada.

SDK-yada

SDKs rasmi ah waxay fududeeyaan in la isku daro TTS.ai codsigaaga. Labaduba waa asal furan oo ku yaal GitHub.

Python

pip install ttsai
from tts_ai import TTSClient

client = TTSClient(api_key="sk-tts-...")
audio = client.generate(
    text="Hello world!",
    model="kokoro"
)
client.save(audio, "output.wav")
GitHub

JavaScript / Node.js

npm install @ttsainpm/ttsai
const { TTSClient } = require('@ttsainpm/ttsai');

const client = new TTSClient({
  apiKey: 'sk-tts-...'
});
const audio = await client.generate({
  input: 'Hello world!',
  model: 'kokoro'
});
await client.saveToFile(audio, 'output.wav');
GitHub

URL-ka aasaasiga ah

URL-ka aasaasiga ah: https://api.tts.ai/v1/

dhammaan dhamaadka waa la xiriira this URL-ka. tusaale ahaan, TTS dhamaadka waa:

POST https://api.tts.ai/v1/tts/

Xaddidaadda

API heerka xaddidaadda kala duwanaan karaan qorshaha:

Qorshe Talooyin/daqiiqo Isku-dhafan Dhererka ugu badan ee qoraalka
Bilaash 10 2 500 xarfo
Bilow 30 3 100,000 xarfo
Pro 60 5 100,000 xarfo
Shirkad 300 20 50,000 xarfo

Heerka xaddidaadda headers waxaa ku jira jawaab kasta: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset.

Qiimaha deynta

Adeeg Qiimaha Midab
TTS (models Bilaash ah: Piper, VITS, MeloTTS) 1,000 xaraf 1,000 xaraf kasta
TTS (Standard noocyada: Kokoro, CosyVoice 2, iwm) 2,000 xarfo 1,000 xaraf kasta
TTS (Models Premium: Tortoise, Chatterbox, iwm.) 4,000 xarfo 1,000 xaraf kasta
Hadal u beddel qoraal 2,000 xarfo per minute of audio
Duubista Codka 4,000 xarfo 1,000 xaraf kasta
Isbedelka Codka 3,000 xaraf per minute of audio
Kordhinta Muuqaalka 2,000 xarfo per minute of audio
Voice ka saarka / Qaybta 3,000-4,000 xarfo per minute of audio
Tarjumaadda hadalka 5,000 xarfo per minute of audio
Hadal hadal ah 3,000 xaraf wareeg kasta
Key Finder BPM Bilaash --
Audio Beddelaan Bilaash --

Qoraalka u beddel hadal

POST /v1/tts/

U beddel qoraalka hadalka audio. Ku soo celiya faylka audio ee qaabka la dalbaday.

Fadliga dalabka

FalanqayntaNoocWaa in la buuxiyaaFaahfaahin
model string Haa Magaca qaabka (tusaale ahaan, kokoro, chatterbox, piper)
text string Haa Qoraalka loo beddelo hadalka (max 100,000 xarfaha codsiga kasta)
voice string Haa Aqoonsiga Codka (u isticmaal /v1/voices/ si aad u soo bandhigto codadka jira)
format string Ha Nooca natiijada: mp3 (default), wav, flac, ogg
speed float Ha Kaaliyaha xawaaraha hadalka. Default: 1.0. Range: 0.5 to 2.0
language string Ha Koodka afka (tusaale ahaan, en, es). Si otomaatig ah ayaa loo ogaan doonaa haddii la joojiyo.
stream boolean Ha Fur jawaabta qulqulka. Fadlan: false

Talooyin tusaale ah

cURL
curl -X POST https://api.tts.ai/v1/tts/ \
  -H "Authorization: Bearer sk-tts-your-key" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "kokoro",
    "text": "Hello from TTS.ai! This is a test.",
    "voice": "af_bella",
    "format": "mp3"
  }' \
  --output output.mp3

Jawaab

Faylka maqalka wuxuu ku soo celiyaa sida xogta laba-geesoodka ah oo leh Content-Type oo ku habboon (audio/mpeg, audio/wav, iwm.)

Madaxa jawaabta
Content-Type: audio/mpeg
Content-Length: 48256
X-Credits-Used: 2
X-Credits-Remaining: 498

Hadal u beddel qoraal

POST /v1/stt/

Dhageyso audio in qoraalka. taageertaa 99 luqadood oo leh auto-ogaanshaha.

Fadliga dalabka (multipart/form-data)

FalanqayntaNoocWaa in la buuxiyaaFaahfaahin
file file Haa Audio file (MP3, WAV, FLAC, OGG, M4A, MP4, WebM). Max 100MB.
model string Ha STT qaab: whisper (default), faster-whisper, sensevoice
language string Ha Koodka afka. auto si loo ogaado si otomaatig ah (default).
timestamps boolean Ha Ku dar calaamadaha wakhtiga ee heerka ereyga. Fadlan: false
diarize boolean Ha Faahfaahin: false

Jawaab

Jawaab JSON
{
  "text": "Hello, this is a transcription test.",
  "language": "en",
  "duration": 3.5,
  "segments": [
    {
      "start": 0.0,
      "end": 1.8,
      "text": "Hello, this is",
      "speaker": "SPEAKER_00"
    },
    {
      "start": 1.8,
      "end": 3.5,
      "text": "a transcription test.",
      "speaker": "SPEAKER_00"
    }
  ]
}

Duubista Codka

POST /v1/tts/clone/

abuuro hadalka in codka la duubtay. soo dejisan tilmaame audio iyo qoraalka.

Fadliga dalabka (multipart/form-data)

FalanqayntaNoocWaa in la buuxiyaaFaahfaahin
reference_audio file Haa Codka codka ee codka ah (10-30 ilbiriqsi oo la soo jeediyay). Max 20MB.
text string Haa qoraalka lagu hadli doono codka lakala soocay.
model string Ha Qaab-dhismeedka isku-dhafka: chatterbox (default), cosyvoice2, gpt-sovits
format string Ha Nidaamka soo bixitaanka: mp3 (default), wav, flac
language string Ha Koodka afka la doonayo. Waa in ay taageeraan qaabka la doortay.

Jawaab

Ku soo celin doonaa faylka audio sida xogta binary, sida TTS endpoint.

Isbedelka Codka

POST /v1/voice-convert/

Audio u beddelaan si ay u maqlaan sida codka kala duwan. Upload audio asalka ah oo dooro codka la doonayo.

Fadliga dalabka (multipart/form-data)

FalanqayntaNoocWaa in la buuxiyaaFaahfaahin
file file Haa Faylka audio asalka ah (MP3, WAV, FLAC). Max 50MB.
target_voice string Haa Target voice ID to convert to (use /v1/voices/ to list available voices)
model string Ha Muuqaalka isbeddelka codka: openvoice (default), knn-vc
format string Ha Nooca natiijada: wav (default), mp3, flac

Talooyin tusaale ah

cURL
curl -X POST https://api.tts.ai/v1/voice-convert/ \
  -H "Authorization: Bearer sk-tts-your-key" \
  -F "file=@source_audio.mp3" \
  -F "target_voice=af_bella" \
  -F "model=openvoice" \
  -o converted.wav

Jawaab

Ku soo celin doonaa file audio la beddelay sida xogta binary.

Tarjumaadda hadalka

POST /v1/speech-translate/

Translate audio ku hadla ka afka mid kale. isku darka hadal-to-text, tarjumaadda, iyo qoraalka-to-speech in a telefoonka kaliya.

Fadliga dalabka (multipart/form-data)

FalanqayntaNoocWaa in la buuxiyaaFaahfaahin
file file Haa Faylka maqalka ee asalka ah. Max 100MB.
target_language string Haa Koodka afka la doonayo (tusaale, es, fr, de, ja)
voice string Ha Codka loo yaqaan "%s"
preserve_voice boolean Ha Dambiil si loo ilaaliyo astaamaha codka afka asalka ah. Default: false

Jawaab

Jawaab JSON
{
  "original_text": "Hello, how are you?",
  "translated_text": "Hola, como estas?",
  "source_language": "en",
  "target_language": "es",
  "audio_url": "https://api.tts.ai/v1/results/translate_abc123.mp3",
  "credits_used": 5
}

Hadal ilaa Hadal

POST /v1/speech-to-speech/

U beddel qaabka hadalka, dareenka, ama soo bandhigida inta lagu jiro xakamaynta waxyaabaha. Faa'iido u ah hagaajinta toonta, pacing, iyo expressionness.

Fadliga dalabka (multipart/form-data)

FalanqayntaNoocWaa in la buuxiyaaFaahfaahin
file file Haa Fayl maqal ah. Max 50MB.
voice string Haa Target voice ID for the output speech
model string Ha Midab: openvoice (default), chatterbox
emotion string Ha Target emotion: neutral, happy, sad, angry, excited
speed float Ha Isbeddelka xawaaraha. Default: 1.0. Range: 0.5 to 2.0

Jawaab

Ku soo celin doonaa faylka audio la beddelay sida xogta binary.

Qalabka Dhagaysiga

Audio processing endpoints si kor loogu qaado, tirtirka codka, stem kala qaybinta, iyo in ka badan.

POST /v1/audio/enhance/

Kordhinta tayada audio: denoise, hagaajinta caddaaladda, go'aan super.

file fileFayl maqal ah oo la xoojinayo
denoise booleanSamee xakamaynta codka (default: true)
enhance_clarity booleanKor u qaad caddaaladda hadalka (default: true)
super_resolution booleanTayada maqalka u kordhi (default: false)
strength integer1-3 (cagaaran, dhexdhexaad ah, xoog leh). Default: 2
POST /v1/audio/separate/

kala sooca vocals ka instrumentals (joojin vocal) ama kala qaybsan yihiin in ay tiir.

file fileFaylka audio ee la kala saari doono
model stringdemucs (default) ama spleeter
stems integerTirada dhir: 2, 4, 5, ama 6 (default: 2)
format stringNidaamka soo bixitaanka: wav, mp3, flac
POST /v1/audio/dereverb/

Ka saar echo iyo reverb ka recordings audio.

file fileFaylka maqalka ee la xalin doono
type stringecho or reverb (default: both)
intensity integer1-5 (default: 3)
POST /v1/audio/analyze/ Bilaash

Falanqee audio si ay u ogaadaan furaha, BPM, iyo waqti saxiixa.

file fileFadlan dooro faylka la doonayo in la faallo
Jawaab
{
  "key": "C",
  "scale": "Major",
  "bpm": 120.0,
  "time_signature": "4/4",
  "camelot": "8B",
  "compatible_keys": ["C Major", "G Major", "F Major", "A Minor"]
}
POST /v1/audio/convert/ Bilaash

Audio u beddelaan u dhexeeya qaabab.

file fileFaylka audio ee la beddeli doono
format stringNidaamka la rabo: mp3, wav, flac, ogg, m4a, aac
bitrate integerBitrate soo bixitaan oo ku jira kbps: 64, 128, 192, 256, 320
sample_rate integerTirada tusaale: 22050, 44100, 48000
channels stringmono ama stereo

Hadal hadal ah

POST /v1/voice-chat/

U dir audio ama qoraalka iyo hel jawaabta AI la hadalka synthesized.

Fadliga dalabka (multipart/form-data ama JSON)

FalanqayntaNoocWaa in la buuxiyaaFaahfaahin
audio file Ha* Input audio (ama audio ama text ayaa loo baahan yahay)
text string Ha* Input-ka qoraalka (ama audio ama text ayaa loo baahan yahay)
voice string Ha Codka jawaabta AI. Fadlan: af_bella
tts_model string Ha Midab TTS oo loogu talagalay jawaabta. Fadlan: kokoro
system_prompt string Ha Qalabka codsiga ee loogu talagalay AI
conversation_id string Ha Ku sii wad wada hadalka jira

Jawaab

Jawaab JSON
{
  "conversation_id": "conv_abc123",
  "user_text": "What is the capital of France?",
  "ai_text": "The capital of France is Paris.",
  "audio_url": "https://api.tts.ai/v1/audio/tmp/resp_xyz.mp3",
  "credits_used": 3
}

TTS

POST /v1/tts/batch/

Soo gudbinta qoraalo badan oo isku xigta TTS dhalasho. Haddii aad rabto, ka heli callback webhook marka shaqada oo dhan dhamaystiran.

_Barnaamijyada

_BarnaamijyadaNoocTilmaamaha
textsarrayArray of objects: {text, model, voice}. Max 50 items.
webhook_urlstringOptional URL to POST results when batch completes.

Jawaab

Jawaab JSON
{
  "batch_id": "abc123",
  "total": 3,
  "completed": 0,
  "status": "processing"
}

Horumarka codbixinta la GET /v1/tts/batch/result/?batch_id=abc123

Dhaqdhaqaaqa

POST /v1/voice-embed/

Ka hor-dhis codka ku dhejisan ka soo xigasho audio. U isticmaal embed_id ku soo laabtay codka ka dib codka ku dhejin codka ee soo saarida ku dhow-instant.

_Barnaamijyada

_BarnaamijyadaNoocTilmaamaha
filefileReference audio file (WAV, MP3, FLAC).
modelstringCloning model (default: chatterbox). Supported: chatterbox, cosyvoice2, openvoice, gpt-sovits, spark, indextts2, qwen3-tts.

Jawaab

Jawaab JSON
{
  "embed_id": "emb_abc123",
  "model": "chatterbox",
  "duration_ms": 450
}

Tijaabada caafimaad

GET /v1/health/

Ka hubi xaaladda GPU server, qaabab la soo dejiyey, iyo miisaanka fariinta. Aan la xaqiijin loo baahnaa. Cached for 30 seconds.

Jawaab

Jawaab JSON
{
  "status": "online",
  "latency_ms": 45,
  "queue_size": 3,
  "models_loaded": ["kokoro", "chatterbox", "cosyvoice2"]
}

Liiska qaababka

GET /v1/models/

Ku soo laabtaa liiska dhammaan qaababka la heli karo oo leh awoodahooda.

Jawaab

Jawaab JSON
{
  "models": [
    {
      "id": "kokoro",
      "name": "Kokoro",
      "type": "tts",
      "tier": "standard",
      "languages": ["en", "ja", "ko", "zh", "fr"],
      "supports_cloning": false,
      "supports_streaming": true,
      "credits_per_1k_chars": 2
    },
    {
      "id": "chatterbox",
      "name": "Chatterbox",
      "type": "tts",
      "tier": "premium",
      "languages": ["en"],
      "supports_cloning": true,
      "supports_streaming": true,
      "credits_per_1k_chars": 4
    }
  ]
}

Liiska Codadka

GET /v1/voices/

Ku soo celiya liiska codadka oo dhan oo la heli karo, si ikhtiyaari ah ayaa loo cusbooneysiiyay qaabka ama afka.

Qiyaamada Su'aasha

FalanqayntaNoocFaahfaahin
model string Ciwaanka qaabka (tusaale ahaan, kokoro)
language string Ciwaanka luqadda (tusaale ahaan, en)
gender string Ciwaanka jinsiga: male, female, neutral

Jawaab

Jawaab JSON
{
  "voices": [
    {
      "id": "af_bella",
      "name": "Bella",
      "model": "kokoro",
      "language": "en",
      "gender": "female",
      "preview_url": "https://api.tts.ai/v1/voices/preview/af_bella.mp3"
    }
  ],
  "total": 142
}

Codsiyada tusaale ahaan

Qoraalka u beddel hadal

Python - requests
import requests

API_KEY = "sk-tts-your-key"

# Text to Speech
response = requests.post(
    "https://api.tts.ai/v1/tts/",
    headers={"Authorization": f"Bearer {API_KEY}"},
    json={
        "model": "kokoro",
        "text": "Hello from TTS.ai!",
        "voice": "af_bella",
        "format": "mp3"
    }
)

with open("output.mp3", "wb") as f:
    f.write(response.content)

print(f"Credits used: {response.headers.get('X-Credits-Used')}")

Hadal u beddel qoraal

Python - requests
# Speech to Text
with open("recording.mp3", "rb") as f:
    response = requests.post(
        "https://api.tts.ai/v1/stt/",
        headers={"Authorization": f"Bearer {API_KEY}"},
        files={"file": f},
        data={"model": "faster-whisper", "timestamps": "true"}
    )

result = response.json()
print(result["text"])

Duubista Codka

Python - requests
# Voice Cloning
with open("reference.wav", "rb") as ref:
    response = requests.post(
        "https://api.tts.ai/v1/tts/clone/",
        headers={"Authorization": f"Bearer {API_KEY}"},
        files={"reference_audio": ref},
        data={
            "text": "This speech uses a cloned voice.",
            "model": "chatterbox"
        }
    )

with open("cloned_output.mp3", "wb") as f:
    f.write(response.content)

Qoraalka u beddel hadal

JavaScript - fetch
const API_KEY = 'sk-tts-your-key';

// Text to Speech
const response = await fetch('https://api.tts.ai/v1/tts/', {
  method: 'POST',
  headers: {
    'Authorization': `Bearer ${API_KEY}`,
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    model: 'kokoro',
    text: 'Hello from TTS.ai!',
    voice: 'af_bella',
    format: 'mp3'
  })
});

const audioBlob = await response.blob();
const audioUrl = URL.createObjectURL(audioBlob);
const audio = new Audio(audioUrl);
audio.play();

Hadal u beddel qoraal

JavaScript - fetch
// Speech to Text
const formData = new FormData();
formData.append('file', audioFile);
formData.append('model', 'faster-whisper');

const response = await fetch('https://api.tts.ai/v1/stt/', {
  method: 'POST',
  headers: { 'Authorization': `Bearer ${API_KEY}` },
  body: formData
});

const result = await response.json();
console.log(result.text);

Qoraalka u beddel hadal

cURL
# Text to Speech
curl -X POST https://api.tts.ai/v1/tts/ \
  -H "Authorization: Bearer sk-tts-your-key" \
  -H "Content-Type: application/json" \
  -d '{"model":"kokoro","text":"Hello!","voice":"af_bella","format":"mp3"}' \
  -o output.mp3

Hadal u beddel qoraal

cURL
# Speech to Text
curl -X POST https://api.tts.ai/v1/stt/ \
  -H "Authorization: Bearer sk-tts-your-key" \
  -F "file=@recording.mp3" \
  -F "model=faster-whisper" \
  -F "timestamps=true"

Duubista Codka

cURL
# Voice Cloning
curl -X POST https://api.tts.ai/v1/tts/clone/ \
  -H "Authorization: Bearer sk-tts-your-key" \
  -F "reference_audio=@reference.wav" \
  -F "text=This uses a cloned voice." \
  -F "model=chatterbox" \
  -o cloned.mp3

Kordhinta Muuqaalka

cURL
# Audio Enhancement
curl -X POST https://api.tts.ai/v1/audio/enhance/ \
  -H "Authorization: Bearer sk-tts-your-key" \
  -F "file=@noisy_audio.mp3" \
  -F "denoise=true" \
  -F "enhance_clarity=true" \
  -o enhanced.mp3

Koodhadhka khaladaadka

khaladaadka oo dhan ku soo laabtaan jawaab JSON la error Isku-darka

Noocka Jawaabta Gafafka
{
  "error": {
    "code": "insufficient_credits",
    "message": "You do not have enough characters for this request.",
    "characters_required": 4000,
    "characters_available": 2000
  }
}
Xaaladda HTTPKoodka khaladaadkaFaahfaahin
400 bad_request Baaritaanku ma aha mid sax ah. Eeg fariinta qaladka ee faahfaahinta.
401 unauthorized Fadlan dooro mid ka mid ah
402 insufficient_credits Ma aha xarfaha ku filan. Iibso in ka badan / pricing /.
403 forbidden API helitaanka aan la heli karin qorshahaaga.
404 not_found Ma jiro qaab ama cod la helay.
413 file_too_large Fayl la soo dejiyey wuxuu ka badan yahay xadka cabbirka.
429 rate_limited In badan oo codsiyo ah. Tijaabi tirada xaddidaadda madaxyada.
500 internal_error Xadgudub server. Markale isku day ka dib.
503 model_loading Muuqaalka ayaa la soo dejinaya. Ku soo celi dhowr ilbiriqsi.

Webhooks

Si ay u shaqeeyaan muddo dheer hawlaha (dhismaha kala qaybinta, batch TTS), waxaad siin kartaa webhook_url parameter. Marka shaqada dhamaystiran, waxaan POST natiijada si aad URL.

Webhook Payload
{
  "event": "task.completed",
  "task_id": "task_abc123",
  "status": "success",
  "result_url": "https://api.tts.ai/v1/results/task_abc123",
  "credits_used": 12,
  "created_at": "2025-01-15T10:30:00Z",
  "completed_at": "2025-01-15T10:30:45Z"
}
Webhook natiijooyinka waxaa laga heli karaa soo dejinta 24 saacadood ka dib dhamaystirka. Hubso inaad iyaga soo dejisan si degdeg ah.

Ku diyaarsan tahay dhismaha?

Ka hel furaha API iyo bilowda isku xirka TTS.ai in codsiyadaada.