Xuquuqda API

Isticmaal TTS.ai barnaamijyadaada oo leh API-keena REST. OpenAI-ka u dhigma qaabka u dhaqaaqista fudud.

REST API OpenAI la jaanqaada Jawaabaha JSON taageerada Streaming

Aragtida guud

The TTS.ai API provides programmatic access to all platform features: text-to-speech synthesis, speech-to-text transcription, voice cloning, audio enhancement, and more. The API uses standard REST conventions with JSON request/response bodies.

Fursada API-ga

Ka hesho furaha API ka Xeerarka 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.

URL-ka aasaasiga ah

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

Dhammaan endpoints waa ku xiran tahay this URL salka. tusaale ahaan, TTS endpoint waa:

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

Xaddidaadda Qiimaha

API qiimaha xaddidaadda kala duwanaan karaan by qorshaha:

Qorshaha Talooyin/daqiiqo Concurrent Dhererka ugu badan ee qoraalka
Pro 60 5 5,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

Adeegga Qiimaha Unit
TTS (models Bilaash ah: Piper, VITS, MeloTTS) 1 credit 1,000 xaraf kasta
TTS (Standard noocyada: Kokoro, CosyVoice 2, iwm) 2 credits 1,000 xaraf kasta
TTS (Models Premium: Tortoise, Chatterbox, iwm.) 4 credits 1,000 xaraf kasta
Hadal u beddel qoraal 2 credits per minute of audio
Duubista Codka 4 credits 1,000 xaraf kasta
Isbedelka Codka 3 credits per minute of audio
Kordhinta Muuqaalka 2 credits per minute of audio
Ka saarka codka / kala qaybinta codka 3-4 credits per minute of audio
Tarjumaadda hadalka 5 credits per minute of audio
Hadal hadal ah 3 credits 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

FalanqayntaNoocLoo BaahanaaFaahfaahin
model string Haa Magaca qaabka (tusaale ahaan, kokoro, chatterbox, piper)
text string Haa Qoraalka si ay u beddelaan hadalka (max 5,000 xarafka ee Pro, 50,000 ee Enterprise)
voice string Haa Aqoonsiga Codka (u isticmaal /v1/voices/ si aad u soo bandhigto codadka jira)
format string _Haa Nooca natiijada: mp3 (default), wav, flac, ogg
speed float _Haa Dhibcaha xawaaraha hadalka. Default: 1.0. Range: 0.5 to 2.0
language string _Haa Koodka afka (tusaale ahaan, en, es). Si otomaatig ah ayaa loo ogaan doonaa haddii la joojiyo.
stream boolean _Haa 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

Returns the audio file as binary data with appropriate Content-Type header (audio/mpeg, audio/wav, etc.).

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)

FalanqayntaNoocLoo BaahanaaFaahfaahin
file file Haa Audio file (MP3, WAV, FLAC, OGG, M4A, MP4, WebM). Max 100MB.
model string _Haa STT qaab: whisper (default), faster-whisper, sensevoice
language string _Haa Koodka afka. auto si loo ogaado si otomaatig ah (default).
timestamps boolean _Haa Ku dar calaamadaha wakhtiga ee heerka ereyga. Fadlan: false
diarize boolean _Haa 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)

FalanqayntaNoocLoo BaahanaaFaahfaahin
reference_audio file Haa Raadinta codka audio (10-30 ilbiriqsi oo lagu taliyey). Max 20MB.
text string Haa qoraalka lagu hadli doono codka la duubtay.
model string _Haa Duub moodel: chatterbox (default), cosyvoice2, gpt-sovits
format string _Haa Nooca natiijada: mp3 (default), wav, flac
language string _Haa Koodhka afka la doonayo. Waa in ay taageeraan qaabka la doortay.

Jawaab

Ku soo celiya faylka audio sida xogta binary, la mid ah 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)

FalanqayntaNoocLoo BaahanaaFaahfaahin
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 _Haa Muuqaalka isbeddelka codka: openvoice (default), knn-vc
format string _Haa 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 hadalka audio ka mid ah afka kale. isku darka hadalka-to-text, tarjumaadda, iyo qoraalka-to-speech in telefoonka keliya.

Fadliga dalabka (multipart/form-data)

FalanqayntaNoocLoo BaahanaaFaahfaahin
file file Haa Faylka asalka ah ee afka asalka ah. Max 100MB.
target_language string Haa Koodka afka la doonayo (tusaale, es, fr, de, ja)
voice string _Haa Codka loogu talagalay natiijada la turjumay. si otomaatig ah ayaa loo doortaa haddii la joojiyo.
preserve_voice boolean _Haa Ku dadaal in aad ilaaliso hadalka asalka ah

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 beddelo qaabka hadalka, dareenka, ama gudbinta iyadoo la ilaalinayo waxyaabaha. Faa'iido u leh hagaajinta toonta, pacing, iyo expressivity.

Fadliga dalabka (multipart/form-data)

FalanqayntaNoocLoo BaahanaaFaahfaahin
file file Haa Fayl maqal ah. Max 50MB.
voice string Haa Target voice ID for the output speech
model string _Haa Model: openvoice (default), chatterbox
emotion string _Haa Target emotion: neutral, happy, sad, angry, excited
speed float _Haa Default: 1.0. Range: 0.5 to 2.0

Jawaab

Ku soo celiya 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 booleanKor u qaad tayada maqalka (default: false)
strength integer1-3 (cagaaran, dhexdhexaad ah, xoog leh). Default: 2
POST /v1/audio/separate/

Qaybta vocals ka instrumentals (joojin vocal) ama ku kala qaybsan yihiin geedo.

file fileFayl maqal ah oo la kala sooci doono
model stringdemucs (default) ama spleeter
stems integerTirada caleemaha: 2, 4, 5, ama 6 (default: 2)
format stringNooca natiijada: wav, mp3, flac
POST /v1/audio/dereverb/

Ka saar echo iyo reverb ka recordings audio.

file fileFayl maqal ah oo la xalin doono
type stringecho or reverb (default: both)
intensity integer1-5 (default: 3)
POST /v1/audio/analyze/ Bilaash

Analyze audio si ay u ogaadaan muhiimka ah, BPM, iyo waqtiga saxiixa.

file fileFadlan dooro faylka la doonayo in la fuliyo
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 fileFayl maqal ah oo la beddelayo
format stringNidaamka la rabo: mp3, wav, flac, ogg, m4a, aac
bitrate integerWax soo saarka bitrate in 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)

FalanqayntaNoocLoo BaahanaaFaahfaahin
audio file _Haa* Input audio (ama audio ama text ayaa loo baahan yahay)
text string _Haa* Input-ka qoraalka (ama audio ama text ayaa loo baahan yahay)
voice string _Haa Codka jawaabta AI. Fadlan: af_bella
tts_model string _Haa Midabka TTS ee jawaabta. Default: kokoro
system_prompt string _Haa Farriinta nidaamka ee loogu talagalay AI
conversation_id string _Haa 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
}

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.

Falanqaynta 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 goobta.

Noocka Jawaabta Gafafka
{
  "error": {
    "code": "insufficient_credits",
    "message": "You do not have enough credits for this request.",
    "credits_required": 4,
    "credits_available": 2
  }
}
Xaaladda HTTPError CodeFaahfaahin
400 bad_request Falanqaynta codsiga oo aan sharci ahayn. Eeg fariinta khaladaadka ee faahfaahinta.
401 unauthorized Mashiinka API-ga oo maqan ama aan sharci ahayn.
402 insufficient_credits Ma aha credits 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 Faylka la soo dejiyey wuxuu ka sarreeyaa xaddiga xaddidan.
429 rate_limited In badan oo codsiyo ah. Imtixaanka heerka xaddidaadda madaxyada.
500 internal_error Xadgudub server. Markale isku day ka dib.
503 model_loading Nidaamka ayaa la soo dejinaya. Dib u deji dhowr ilbiriqsi gudahood.

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 in la soo dejiyo 24 saacadood ka dib dhamaystirka. Hubso in aad iyaga soo dejisan si degdeg ah.

Oo diyaar u ah in ay dhisaan?

Ka hel furaha API-gaaga oo bilow inaad ku darto TTS.ai codsiyadaaga.