API پۈتۈكلىرى
REST API ئارقىلىق TTS.ai نى پروگراممىلىرىڭىزغا بىرلەشتۈرۈڭ. OpenAI-غا ماس كېلىدىغان شەكىلدە ئاسان كۆچۈرۈلىدۇ.
ئومۇمىي كۆرۈنۈش
TTS.ai API پۈتۈن پلاتفورمىنىڭ ئىقتىدارلىرىغا پروگرامما ئارقىلىق ئېرىشىشكە ياردەم بېرىدۇ: تېكىستتىن سۆزگە بىرىكتۈرگۈچ، سۆزدىن تېكىستكە تەرجىمە قىلغۇچ، ئاۋازنى كۆچۈرۈش، ئاۋازنى كۈچەيتىش، ۋە باشقا. API JSON تەلەپ/جاۋاب ئورگانلىرى بىلەن REST كونۋېنسىيىسىنى ئىشلىتىدۇ.
API ئاچقۇچى
API ئاچقۇچىڭىزنى ئېلىش ھېسابات تەڭشىكى. Pro ۋە Enterprise پروگراممىلىرىدا قوللىنىلىدۇ.
ئاساسىي URL
https://api.tts.ai/v1/
ھوقۇق
يەتكۈزگۈچ توكى ئارقىلىق Authorization باشلىق
تونۇشتۇرۇش
/v1/tts/ بىزنىڭ ھەقسىز تىپلىرىمىزنى ئىشلىتىپ، ھەر بىر IP نىڭ كۈندە 5000 ھەرپىگە قەدەر، ھېچقانداق ئىجازەتسىز ئىشلەيسىز (piper, vits, melotts, kokoro). 15000 گە يېقىن بوۋاقنىڭ كىملىكىنى ۋە قىممەتلىك مەشغۇلاتلارنى ئېلىش ئۈچۈن ھەقسىز ھېسابات قۇرۇشقا رۇخسەت قىلىمىز.
ھەممىلا API تەلەپلىرى بىر Bearer token ئارقىلىق ئىجازەت بېرىشنى تەلەپ قىلىدۇ Authorization باشلىق.
Authorization: Bearer sk-tts-your-api-key-here
SDKلار
رەسمىي SDK لار TTS.ai نى پروگراممىڭىزغا ئاسانلا بىرلەشتۈرىدۇ. ئىككىسىمۇ ئېچىۋېتىلگەن مەنبە بولۇپ 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")
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');
ئاساسىي URL
بارلىق ئاخىرلاشتۇرۇش نۇقتىلىرى بۇ ئاساسلىق URL بىلەن مۇناسىۋەتلىك. مەسىلەن، TTS ئاخىرلاشتۇرۇش نۇقتىسى:
سۈرئەتنىڭ چەكلىمىلىرى
API سۈرئىتىنىڭ چەكلىمىلىرى پىلانى بويىچە ئۆزگىرىپ تۇرىدۇ:
| پىلان | تەلەپ/مىنۇت | بىر ۋاقىتتا | ئەڭ چوڭ تېكىست ئۇزۇنلۇقى |
|---|---|---|---|
| بوش | 10 | 2 | 500 ھەرپ |
| باشلىغۇچى | 30 | 3 | 1000000 ھەرپ |
| كەسپىي | 60 | 5 | 1000000 ھەرپ |
| شىركەت | 300 | 20 | 50000 ھەرپ |
ھەربىر جاۋابتا سۈرئەتنىڭ چەكلىمىسىگە ئائىت باشلىقلار بار: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset.
قەرز ھەققى
| خىزمەت | قىممەت | بىرلىك |
|---|---|---|
| TTS (ئوچۇق مودېل: Piper، VITS، MeloTTS) | 1 نومۇر | ھەر 1000 ھەرپ ئۈچۈن |
| TTS (ستاندارت نۇسخىلىرى: Kokoro، CosyVoice 2، قاتارلىقلار) | 2 نومۇر | ھەر 1000 ھەرپ ئۈچۈن |
| TTS (باھالىق نۇسخىلار: Tortoise، Chatterbox، قاتارلىقلار) | 4 نومۇر | ھەر 1000 ھەرپ ئۈچۈن |
| سۆزدىن مەزمۇنغا | 2 نومۇر | ھەر مىنۇتتا ئاۋاز |
| ئاۋازنى كۆچۈرۈش پروگراممىسى | 4 نومۇر | ھەر 1000 ھەرپ ئۈچۈن |
| ئاۋاز ئۆزگەرتكۈچ | 3 نومۇر | ھەر مىنۇتتا ئاۋاز |
| ئاۋازنى ياخشىلاش | 2 نومۇر | ھەر مىنۇتتا ئاۋاز |
| ئاۋازنى چىقىرىۋېتىش / ئاۋازنى بۆلۈش | 3-4 نومۇر | ھەر مىنۇتتا ئاۋاز |
| سۆز تەرجىمە | 5 نومۇر | ھەر مىنۇتتا ئاۋاز |
| ئاۋازلىق سۆھبەت | 3 نومۇر | ھەر قېتىمدا |
| ئاچقۇچ ۋە BPM ئىزلىگۈچ | بوش | -- |
| ئاۋاز ئايلاندۇرغۇچ | بوش | -- |
تېكىستتىن سۆزگە
تېكىستنى ئاۋازغا ئايلاندۇرۇش پروگراممىسى. تەلەپ قىلىنغان پىچىمدىكى ئاۋاز ھۆججىتىنى قايتۇرىدۇ.
تەلەپ ماۋزۇسى
| پارامېتىرلار | تۈر | چوقۇم | چۈشەندۈرۈش |
|---|---|---|---|
| model | string | ئۇنداق ئەمەس | مودېل ID (مەسىلەن kokoro، chatterbox، piper) |
| text | string | ھەئە | سۆزگە ئايلاندۇرىدىغان تېكىست (Pro دىكى ئەڭ كۆپ 5000 ھەرپ، Enterprise دىكى ئەڭ كۆپ 50000 ھەرپ) |
| voice | string | ھەئە | ئاۋاز ID (/v1/voices/ نى ئىشلىتىپ قوللىنىلىدىغان ئاۋازلارنى تىزىملاش) |
| format | string | ئۇنداق ئەمەس | چىقىرىش پىچىمى: mp3 (قەدەملىك)، wav، flac، ogg |
| speed | float | ئۇنداق ئەمەس | سۆزلەش تېزلىكىنىڭ كۆپەيتكۈچىسى. كۆڭۈلدىكى: 1.0. دائىرىسى: 0.5 دىن 2.0 گىچە |
| language | string | ئۇنداق ئەمەس | تىل كودى (مەسىلەن، en، es). ئەگەر قالدۇرۇلسا ئاپتوماتىك بايقايدۇ. |
| instructions | string | ئۇنداق ئەمەس | مەشغۇلات / تەمىنلەش ئۇچۇرلىرى (≤500 ھەرپ). مەسىلەن \ |
| pronunciations | object | array | ئۇنداق ئەمەس | ھەربىر تەلەپ بويىچە سۆزلەشنى ئالماشتۇرىدۇ. {\ |
| stream | boolean | ئۇنداق ئەمەس | سۈرئەتلىك جاۋابنى قوزغىتىش. كۆڭۈلدىكى: false |
مەسىلە تەلەپ قىلىش
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
SSML نىڭ چەكلىمىلىرى
سانلارنى، كۈندىلىكلەرنى، پۇلنى، تېلېفون نومۇرلىرىنى ۋە قىسقارتمىلارنى كۈننىڭ پىچىمى The TTS endpoint queues your request and returns a JSON response with a job UUID. You then poll for the result. Poll this endpoint every 1-2 seconds until Fetch the Streaming alternative: For supported models (Kokoro, MeloTTS), use
چۈشەندۈر كىرگۈزگۈچ سۆزلەنگەن cardinal1234one thousand two hundred thirty-four ordinal21twenty-first date1999-12-31December thirty-first, nineteen ninety-nine time14:30two thirty PM telephone+1-555-867-5309plus one five five five eight six seven… currency$1,234.56one thousand two hundred thirty-four dollars and fifty-six cents spell-outNASAN A S A mdy (ئىنگلىزچە) ۋە dmy (خىتايچە) گە ئوخشاش، format=\ بىلەن ئالماشتۇرغىلى بولىدۇ{
"model": "kokoro",
"voice": "af_bella",
"text": "Your appointment is on <say-as interpret-as=\"date\">2026-04-26</say-as> at <say-as interpret-as=\"time\">14:30</say-as>. Please call <say-as interpret-as=\"telephone\">+1-555-867-5309</say-as> if you need to reschedule."
}جاۋاب
Step 1: Submit request
{
"uuid": "77b71db532874ce98e84a69a2d740d4c",
"job_id": "f21316bb-aefa-480d-8523-701d1e3184ce",
"status": "queued",
"credits_used": 11,
"credits_remaining": 15000
}Step 2: Poll for result
status is completed or failed.{
"status": "completed",
"result_url": "https://api.tts.ai/static/downloads/77b71db5.../output.mp3"
}{
"status": "processing"
}Step 3: Download audio
result_url from the completed response to download the audio file.Full example
import requests, time
API_KEY = "sk-tts-your-key"
BASE = "https://api.tts.ai"
# 1. Submit TTS request
resp = requests.post(f"{BASE}/v1/tts/", json={
"model": "kokoro",
"text": "Hello from TTS.ai!",
"voice": "af_bella"
}, headers={"Authorization": f"Bearer {API_KEY}"})
data = resp.json()
uuid = data["uuid"]
# 2. Poll for result
while True:
result = requests.get(f"{BASE}/v1/speech/results/",
params={"uuid": uuid}).json()
if result["status"] == "completed":
# 3. Download audio
audio = requests.get(result["result_url"])
with open("output.mp3", "wb") as f:
f.write(audio.content)
break
elif result["status"] == "failed":
raise Exception(result.get("error", "Generation failed"))
time.sleep(1.5)POST /v1/tts/stream/ for real-time Server-Sent Events (SSE) streaming — no polling needed.
سۆزدىن مەزمۇنغا
ئاۋازنى تېكىستكە ئايلاندۇرۇش پروگراممىسى. 99 تىلنى قوللايدۇ ۋە ئۆز-ئۆزى بايقايدۇ.
تەلەپ ماۋزۇسى (multipart/form-data)
| پارامېتىرلار | تۈر | چوقۇم | چۈشەندۈرۈش |
|---|---|---|---|
| file | file | ھەئە | ئاۋاز ھۆججىتى (MP3، WAV، FLAC، OGG، M4A، MP4، WebM). ئەڭ كۆپ 100 مېگابايت. |
| model | string | ئۇنداق ئەمەس | STT مودېلى: whisper (قەدەملىك)، faster-whisper، sensevoice |
| language | string | ئۇنداق ئەمەس | تىل كودى. auto ئاپتوماتىك بايقىلىش ئۈچۈن (قەدەملىك). |
| timestamps | boolean | ئۇنداق ئەمەس | سۆز دەرىجىسىدىكى ۋاقىت بەلگىسىنى قوشۇش. كۆڭۈلدىكى: false |
| diarize | boolean | ئۇنداق ئەمەس | ئاڭلىغۇچىنىڭ كۈندىلىك خاتىرىسىگە كىرگۈزۈشنى مەشغۇلاتقا كىرگۈزىدۇ. كۆڭۈلدىكى: false |
جاۋاب
{
"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"
}
]
}
ئاۋازنى كۆچۈرۈش پروگراممىسى
سۈرەتكە ئېلىنغان ئاۋازدا سۆزلەشنى ھاسىل قىلىش پروگراممىسى. ئاۋاز ۋە تېكىستنى كۆچۈرۈش پروگراممىسى
تەلەپ ماۋزۇسى (multipart/form-data)
| پارامېتىرلار | تۈر | چوقۇم | چۈشەندۈرۈش |
|---|---|---|---|
| reference_audio | file | ھەئە | ئاۋازلىق ھۆججەت (10-30 سېكۇنت تەۋسىيە قىلىنىدۇ). ئەڭ چوڭ چوڭلۇقى 20 مېگابايت. |
| text | string | ھەئە | كۆچۈرۈلگەن ئاۋازدا سۆزلەيدىغان تېكىست. |
| model | string | ئۇنداق ئەمەس | كىلۇن مودېلى: chatterbox (قەدەملىك)، cosyvoice2، gpt-sovits |
| format | string | ئۇنداق ئەمەس | چىقىرىش پىچىمى: mp3 (قەدەملىك)، wav، flac |
| language | string | ئۇنداق ئەمەس | نىشان تىل كودى. تاللانغان مودېل بۇنى قوللايدىغان بولۇشى كېرەك. |
جاۋاب
ئۈن ھۆججىتىنى ئىككىلىك سانلىق-مەلۇمات شەكلىدە قايتۇرىدۇ، TTS ئاخىرلاشتۇرۇش نۇقتىسى بىلەن ئوخشاش.
ئاۋاز ئۆزگەرتكۈچ
ئاۋازنى باشقا ئاۋازغا ئايلاندۇرۇش پروگراممىسى. مەنبە ئاۋازنى چۈشۈرۈپ، مەقسەت ئاۋازنى تاللاڭ.
تەلەپ ماۋزۇسى (multipart/form-data)
| پارامېتىرلار | تۈر | چوقۇم | چۈشەندۈرۈش |
|---|---|---|---|
| file | file | ھەئە | مەنبە ئۈن ھۆججىتى (MP3، WAV، FLAC). ئەڭ كۆپ 50MB. |
| target_voice | string | ھەئە | ئايلاندۇرۇشقا تېگىشلىك ئاۋازنىڭ ئىسمى (/v1/voices/ نى ئىشلىتىپ قوللىنىلىدىغان ئاۋازلارنى تىزىپ چىقىرىڭ) |
| model | string | ئۇنداق ئەمەس | ئاۋاز ئۆزگەرتىش مودېلى: openvoice (قەدەملىك)، knn-vc |
| format | string | ئۇنداق ئەمەس | چىقىرىش پىچىمى: wav (قەدەملىك)، mp3، flac |
مەسىلە تەلەپ قىلىش
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
جاۋاب
ئۆزگەرتىلگەن ئۈن ھۆججىتىنى ئىككىلىك سانلىق-مەلۇمات شەكلىدە قايتۇرىدۇ.
سۆز تەرجىمە
سۆزلەنگەن ئاۋازنى بىر تىلدىن يەنە بىر تىلغا تەرجىمە قىلىش پروگراممىسى. سۆزدىن تېكىستكە، تەرجىمەدىن تېكىستكە ۋە تېكىستتىن سۆزگە بىرلەشتۈرىدۇ.
تەلەپ ماۋزۇسى (multipart/form-data)
| پارامېتىرلار | تۈر | چوقۇم | چۈشەندۈرۈش |
|---|---|---|---|
| file | file | ھەئە | مەنبە ئاۋاز ھۆججىتى. ئەڭ چوڭ چوڭلۇقى 100 مېگابايت. |
| target_language | string | ھەئە | نىشان تىل كودى (مەسىلەن es، fr، de، ja) |
| voice | string | ئۇنداق ئەمەس | تەرجىمە قىلىش ئۈچۈن ئىشلىتىلىدىغان ئاۋاز. ئەگەر قالدۇرۇلسا ئاپتوماتىك تاللىنىدۇ. |
| preserve_voice | boolean | ئۇنداق ئەمەس | ئەسلى ئاڭلىغۇچىنى ساقلاشنى سىنايدۇ |
جاۋاب
{
"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
}
سۆزدىن سۆزگە
سۆزلەش ئۇسلۇبى، ھېسسىيات، ياكى يەتكۈزۈش ئۇسۇلىنى ئۆزگەرتىش، ئەمما مەزمۇننى ساقلاش. ئاۋازنى تەڭشەش، تېزلىكنى تەڭشەش ۋە ئىپادىلەشكە پايدىلىق.
تەلەپ ماۋزۇسى (multipart/form-data)
| پارامېتىرلار | تۈر | چوقۇم | چۈشەندۈرۈش |
|---|---|---|---|
| file | file | ھەئە | مەنبە سۆزلەش ئاۋاز ھۆججىتى. ئەڭ چوڭ 50MB. |
| voice | string | ھەئە | ئاۋاز چىقىرىش ئۈچۈن مەقسەت ئاۋاز ID |
| model | string | ئۇنداق ئەمەس | تىپ: openvoice (قەدەملىك)، chatterbox |
| emotion | string | ئۇنداق ئەمەس | مەقسەتلىك ھېسسىيات: تەرەپسىز، خۇشال، ھەسرەتلىك، ئاڭغۇر، خۇشال |
| speed | float | ئۇنداق ئەمەس | تېزلىك تەڭشەش. كۆڭۈلدىكى: 1.0. دائىرىسى: 0.5دىن 2.0غىچە |
جاۋاب
ئۆزگەرتىلگەن ئۈن ھۆججىتىنى ئىككىلىك سانلىق-مەلۇمات شەكلىدە قايتۇرىدۇ.
ئاۋاز قورالى
ئاۋازنى ياخشىلاش، ئاۋازنى چىقىرىۋېتىش، ئاۋازنى پارچىلاش ۋە باشقا ئىشلار ئۈچۈن ئاۋازنى تەھرىرلىگۈچ.
ئاۋازنىڭ سۈپىتىنى ئۆستۈرىدۇ: ئاۋازنى ئاجىزلاشتۇرىدۇ، ئېنىقلىقىنى ئاشۇرىدۇ، ئېنىقلىقىنى يۇقىرى كۆتۈرىدۇ.
| file file | كۈچەيتىدىغان ئۈن ھۆججىتى |
| denoise boolean | ئاۋازنى يوقىتىشنى مەشغۇلاتقا كىرگۈزىدۇ (قەدەملىگۈچ: true) |
| enhance_clarity boolean | سۆزنى ئاڭلىتىشنى ياخشىلاش (قەدەملىك: راست) |
| super_resolution boolean | ئۈننىڭ سۈپىتىنى ئۆستۈرىدۇ (قەدەملىك: خاتا) |
| strength integer | 1-3 (ئاچچىق، ئوتتۇرا، قاتتىق). كۆڭۈلدىكى: 2 |
ئاۋازلىق سۆزلەرنى ئاۋازسىز سۆزلەر بىلەن ياكى ئاۋازلىق سۆزلەرنى ئاۋازسىز سۆزلەر بىلەن ئايرىۋېتىش.
| file file | ئايرىلىدىغان ئۈن ھۆججىتى |
| model string | demucs (مەۋھۇم) ياكى spleeter |
| stems integer | قەدەم سانى: 2، 4، 5 ياكى 6 (قەدەم سانى: 2) |
| format string | چىقىرىش پىچىمى: wav، mp3، flac |
ئاۋاز خاتىرىلىگۈچتىن ئېقىش ۋە قايتا ئاۋازنى چىقىرىۋېتىش پروگراممىسى
| file file | بىر تەرەپ قىلىنىدىغان ئۈن ھۆججىتى |
| type string | echo or reverb (default: both) |
| intensity integer | 1-5 (default: 3) |
ئاۋازنى تەھلىل قىلىپ، ئاۋاز، BPM ۋە ۋاقىت بەلگىسىنى بايقايدۇ.
| file file | تەھلىل قىلىنىدىغان ئۈن ھۆججىتى |
{
"key": "C",
"scale": "Major",
"bpm": 120.0,
"time_signature": "4/4",
"camelot": "8B",
"compatible_keys": ["C Major", "G Major", "F Major", "A Minor"]
}
ئۈننى پىچىملەر ئارىسىدا ئايلاندۇرۇش پروگراممىسى.
| file file | ئايلاندۇرىدىغان ئۈن ھۆججىتى |
| format string | نىشان پىچىم: mp3، wav، flac، ogg، m4a، aac |
| bitrate integer | چىقىرىش بىيت سۈرئىتى (كىلوبىتس) 64، 128، 192، 256، 320 |
| sample_rate integer | تەكشۈرۈش نىسبىتى: 22050، 44100، 48000 |
| channels string | mono ياكى stereo |
ئاۋازلىق سۆھبەت
ئاۋازنى ياكى تېكىستنى ئەۋەتىپ ئالماشتۇرۇلغان سۆز بىلەن AI جاۋابىنى ئېلىش پروگراممىسى
تەلەپ ماۋزۇسى (multipart/form-data ياكى JSON)
| پارامېتىرلار | تۈر | چوقۇم | چۈشەندۈرۈش |
|---|---|---|---|
| audio | file | ئۇنداق ئەمەس* | ئاۋاز كىرگۈزگۈچ (audio ياكى text كېرەك) |
| text | string | ئۇنداق ئەمەس* | تېكىست كىرگۈزگۈچ (audio ياكى text كېرەك) |
| voice | string | ئۇنداق ئەمەس | AI جاۋابىنىڭ ئاۋازى. كۆڭۈلدىكى: af_bella |
| tts_model | string | ئۇنداق ئەمەس | جاۋاب ئۈچۈن TTS مودېلى. كۆڭۈلدىكى: kokoro |
| system_prompt | string | ئۇنداق ئەمەس | AI ئۈچۈن خاس سىستېما تەكلىپى |
| conversation_id | string | ئۇنداق ئەمەس | بار سۆزلىشىشنى داۋاملاشتۇرۇش |
جاۋاب
{
"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 توپلاش
بىر قانچە تېكىستنى تەڭشەك TTS ياساش ئۈچۈن يوللايدۇ. بارلىق ئىشلار تاماملانغاندا webhook نىڭ قايتا چاقىرىشىنى قوبۇل قىلىشنى تاللايدۇ.
پارامېتىرلار
| پارامېتىرلار | تۈر | چۈشەندۈرۈش |
|---|---|---|
| texts | array | Array of objects: {text, model, voice}. Max 50 items. |
| webhook_url | string | Optional URL to POST results when batch completes. |
جاۋاب
{
"batch_id": "abc123",
"total": 3,
"completed": 0,
"status": "processing"
}
GET /v1/tts/batch/result/ بىلەن سوراقنىڭ ئىلگىرىلىشى
ئاۋازنى كىرگۈزۈش
ئاۋازنى يىغىنچاقلاش ئۈنىدىن ئالدىن ھېسابلاپ چىقىرىدۇ. كېيىنكى ئاۋازنى تەقلىدلەش تەلەپلىرىدە embed_id نى ئىشلىتىپ، دەل ۋاقتىدا ياسايدۇ.
پارامېتىرلار
| پارامېتىرلار | تۈر | چۈشەندۈرۈش |
|---|---|---|
| file | file | Reference audio file (WAV, MP3, FLAC). |
| model | string | Cloning model (default: chatterbox). Supported: chatterbox, cosyvoice2, openvoice, gpt-sovits, spark, indextts2, qwen3-tts. |
جاۋاب
{
"embed_id": "emb_abc123",
"model": "chatterbox",
"duration_ms": 450
}
ساغلاملىق تەكشۈرۈش
GPU مۇلازىمېتىرىنىڭ ھالىتىنى، يۈكلەنگەن مودىللارنى ۋە كۈتۈش قاتارىنىڭ چوڭلۇقىنى تەكشۈرىدۇ. ئىجازەت بېرىش تەلەپ قىلىنمايدۇ. 30 سېكۇنت ئىچىدە قالدۇرۇلغان.
جاۋاب
{
"status": "online",
"latency_ms": 45,
"queue_size": 3,
"models_loaded": ["kokoro", "chatterbox", "cosyvoice2"]
}
تىپلار تىزىمى
پۈتۈن قوللىنىلىدىغان مودېللار ۋە ئۇلارنىڭ ئىقتىدارلىرىنىڭ تىزىمىنى قايتۇرىدۇ.
جاۋاب
{
"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
}
]
}
ئاۋازلار تىزىمى
پۈتۈن قوللىنىلىدىغان ئاۋازلارنىڭ تىزىمىنى قايتۇرۇپ بېرىدۇ، بەلكىم تىل ياكى مودېل بويىچە سۈزۈپ چىقىرىدۇ.
سوئال پارامېتىرلىرى
| پارامېتىرلار | تۈر | چۈشەندۈرۈش |
|---|---|---|
| model | string | مودېل ID بويىچە سۈزگۈچ (مەسىلەن kokoro) |
| language | string | تىل كودى بويىچە سۈزگۈچ(مەسىلەن en) |
| gender | string | جىنس بويىچە سۈزگۈچ: male، female، neutral |
جاۋاب
{
"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
}
تېكىست قىستۇرمىسى (SRT / VTT) يېڭى
ھەر قانداق تولۇقلانغان TTS ئىشلىرى ئۈچۈن تەڭشەلگەن قىستۇرمىلارنى ھاسىل قىلىدۇ. ئاۋاز ئۈستىدە Whisper تۈزلەشنى ئېلىپ بېرىپ SRT ياكى WebVTT نى قايتۇرىدۇ. نەتىجە دىسكىغا كۆچۈرۈلىدۇ، شۇڭا ئوخشاش uuid ئۈچۈن ئىككىنچى قېتىملىق چاقىرغاندا دىسكىنى ئوقۇش بولىدۇ.
سوئال پارامېتىرلىرى
| پارامېتىرلار | چوقۇم | چۈشەندۈرۈش |
|---|---|---|
| uuid | ھەئە | /v1/tts/ ياكى /v1/voice-clone/ نىڭ قايتۇرغان UUID نى كۆرسىتىدۇ. |
| format | ئۇنداق ئەمەس | srt (ئۆزگەرتىلگەن) ياكى vtt. |
| download | ئۇنداق ئەمەس | 1 Content-Disposition: attachment نى ئەۋەتىش ئۈچۈن، شۇڭا كۆرگۈ كۆرسەتمىگە قارىغاندا ساقلايدۇ. |
| language | ئۇنداق ئەمەس | تۈزلەش مودېلىنىڭ ئىزاھاتى (ئەگەر قويۇپ قويۇلغان بولسا ئاپتوماتىك بايقالغان). |
curl "https://api.tts.ai/v1/speech/subtitles/?uuid=$UUID&format=srt&download=1" -o subtitles.srt
ئىپادىلەش لۇغىتى يېڭى
TTS نىڭ قانداق سۆزلەرنى سۆزلەشنى ئېيتىش. ساقلانغان كىرگۈزگۈچلەرنى ھەربىر TTS تەلەپىڭىزگە ئاپتوماتىك ئىشلىتىش. ھەربىر ھېساباتتا 200 كىرگۈزگۈچنىڭ چەكلىمىسى بار.
تەلەپ ماۋزۇسى (POST)
| پارامېتىرلار | تۈر | چۈشەندۈرۈش |
|---|---|---|
| word | string | ئالماشتۇرىدىغان سۆز (مەسىلەن GIF، Anthropic). سۆزنىڭ چېگرىسى ماس كېلىدۇ. |
| replacement | string | بۇنى قانداق يېزىش كېرەك؟ (مەسىلەن jiff، ann THROP ick). |
| language | string | ISO كودى تاللاش. بوش = بارلىق تىللارغا ماس كېلىدۇ. |
| case_sensitive | boolean | false نى كۆزدە تۇتۇش. true بولسا چوڭ-كىچىكلىكنى دەل مۇۋاپىقلاشتۇرىدۇ. |
# Save an entry
curl -X POST https://tts.ai/api/v1/pronunciations/ \
-H "Authorization: Bearer sk-tts-..." \
-H "Content-Type: application/json" \
-d '{"word": "GIF", "replacement": "jiff"}'
# List your entries
curl https://tts.ai/api/v1/pronunciations/ -H "Authorization: Bearer sk-tts-..."
# Delete entry by id
curl -X DELETE "https://tts.ai/api/v1/pronunciations/?id=42" -H "Authorization: Bearer sk-tts-..."
سىز ھەر بىر تەلەپنى ساقلىمايلا قوبۇل قىلالايسىز — ھەرقانداق /v1/tts/ چاقىرىشتا pronunciations نى مەھسۇلات ياكى ئارتىس (TTS ئاخىرقى نۇقتىسى پارامېتىرلىرىنى كۆرۈڭ) قىلىپ قوبۇل قىلىڭ.
ماقالە سۆزلىگۈچ يېڭى
ھەرقانداق ماقالە بەتلىرىگە نىڭ بىرلا سىزىقچىسىنى قويۇپ قويسىڭىز، زىيارەتچىلەر چىركاۋىدا ماقالە بەتلىرىنى سۆزلەپ بېرىدىغان بىر ئوقۇغۇچى بارنى كۆرىدۇ. ماقالە بەتلىرىنى ئۆزلۈكىدىن بايقايدۇ، ئۆزىگە خاس ئاۋاز / مودېل / ئورۇن / چىرايلىق رەڭلەرنى قوللايدۇ.
<script src="https://tts.ai/narrator.js"
data-pk="pk-tts-your-publishable-key"
data-voice="af_bella"
data-model="kokoro"
data-extract="auto"
data-position="bottom"
data-color="#e60000"
data-locale="en"></script>
تاللانمىلار
| پارامېتىرلار | چۈشەندۈرۈش |
|---|---|
data-pk | ئېلان قىلغىلى بولىدىغان ئاچقۇچ (pk-tts-…). ئاچقۇچنىڭ allowed_domains رايونى ئارقىلىق دائىرىگە كىرگۈزۈلىدۇ. |
data-voice | ئاۋاز ID. كۆڭۈلدىكى af_bella. |
data-model | TTS نىڭ مودېل ID نى. ئالدىنقى kokoro. |
data-extract | auto (ئۈچۈنچى) — article/main/.post-content/.entry-content تاللىغۇچلىرىنى سىنايدۇ، ئەڭ كۆپ پاراگراف توپىغا قايتىدۇ. ياكى CSS تاللىغۇچىنى خاس بىر قىسىمغا يوللايدۇ. |
data-position | bottom (ئۆزگەرتىلگەن) ياكى top. |
data-color | سىزىقچە رەڭ (ھەر قانداق CSS رەڭ). كۆڭۈلدىكى #e60000. |
data-min-chars / data-max-chars | ئەگەر ماقالە ئەڭ ئاز ھەرپ سانىدىن (قەدەملىك 200) قىسقا بولسا، بۇ بارنى تاشلاپ قويۇڭ. ئەڭ كۆپ ھەرپ سانىغا (قەدەملىك 50000) كىرگۈزۈشنى توختاتۇڭ. |
ئاڭلاش تومۇر قىستۇرمىسى
سىزىق ئىچىدىكى بۇيرۇق شەكلىدىكى يانداش. نىڭ يېنىدا كۆرسىتىلىدۇ ۋە بۇيرۇق بىلەن قوزغىتىلغان قىسقا قىستۇرمىنى قويۇپ بېرىدۇ. بۇ ئۈستىدىكى ماقالە سۆزلىگۈچتىن پەرقلىق (ئۇ ئۆزلۈكىدىن پۈتۈن ماقالىنى سۆزلەپ بېرىدۇ ۋە پۈتۈن ماقالىنى سۆزلەيدۇ).
<script src="https://tts.ai/widget.js"
data-voice="af_bella"
data-model="kokoro"
data-style="full"
data-theme="light"></script>
ساقلانغان ئاۋازلار (ئۆزلۈكسىز клонلاش)
بىر قېتىملىق ئاۋازنى قوزغىتىش، دائىملىق voice_id نى ئېلىش، ئاندىن ھەر قېتىملىق ئاۋازنى قوزغىتىش ئورنىغا TTS تەلەپلىرىدە بۇ id نى قوزغىتىش. كۆپ ئاۋازلىق بىرلەشتۈرۈش ئۈچۈن ئەڭ ياخشى.
ئاۋازنى كۆتۈرۈپ چىقىرىش
POST
https://tts.ai/api/v1/user-voices/
ئىجازەت بېرىش كېرەك
كۆپ قىسىملىق فورمات. بوشلۇقلار: ھۆججەت (مەخپىي، 5-30س audio)، ئىسىم (مەخپىي)، تىل (مەخپىي، ئالدىن كۆچۈرۈلگەن en)، مودېل (مەخپىي — zh/ja/ko else openvoice نىڭ cosyvoice2 نى ئاپتوماتىك تاللايدۇ)، consent_confirmed (مەخپىي، ھەرقانداق true قىممىتى).
curl -X POST https://tts.ai/api/v1/user-voices/ \
-H "Authorization: Bearer sk-tts-your-key" \
-F "file=@reference.wav" \
-F "name=My Narrator" \
-F "language=en" \
-F "consent_confirmed=true"
# Response:
{
"public_id": "uv_a1b2c3d4e5f6",
"id": 42,
"name": "My Narrator",
"model_name": "openvoice",
"language": "en",
"reference_audio_url": "https://tts.ai/media/user-voices/....wav",
"storage_status": "active",
"created_at": "2026-04-17T03:45:00+00:00"
}
ساقلانغان ئاۋازنى TTS دا ئىشلىتىش
user_voice_id بىلەن /api/v1/tts/ غا POST قىلىڭ (ئېنىقلاش: تور VPS يانفونى، api.tts.ai ئەمەس). ساقلىغان ئاۋازىڭىزنى ۋە يولنى قۇللىنىش يولىغا قوشىمىز.
curl -X POST https://tts.ai/api/v1/tts/ \
-H "Authorization: Bearer sk-tts-your-key" \
-H "Content-Type: application/json" \
-d '{"text":"Hello from my saved voice","user_voice_id":"uv_a1b2c3d4e5f6"}'
# Returns a queued job — poll /v1/speech/results/?uuid=... for the audio URL.
تىزىم / چىقىرىۋېتىش
GET https://tts.ai/api/v1/user-voices/ # list your saved voices + quota info
DELETE https://tts.ai/api/v1/user-voices/?public_id=uv_a1b2c3d4e5f6
ئارخىپلاش / قايتا قوزغىتىش (ئەركىن)
ئارخىپلانغان ئاۋازلار ھېساباتىڭىزدا قالىدۇ، لېكىن TTS نىڭ ئىچىدە ئىشلىتىلمەيدۇ. ئۇخلاۋاتقان ئاخىرقى ئىشلەتكۈچىلەر ئۈچۈن پايدىلىق، شۇڭا تىزىملىكىڭىزنى تازىلاپ تۇرىدۇ.
POST https://tts.ai/api/v1/user-voices/uv_a1b2c3d4e5f6/archive/
POST https://tts.ai/api/v1/user-voices/uv_a1b2c3d4e5f6/reactivate/
كود مىساللىرى
تېكىستتىن سۆزگە
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')}")
سۆزدىن مەزمۇنغا
# 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"])
ئاۋازنى كۆچۈرۈش پروگراممىسى
# 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)
تېكىستتىن سۆزگە
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();
سۆزدىن مەزمۇنغا
// 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);
تېكىستتىن سۆزگە
# 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
سۆزدىن مەزمۇنغا
# 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"
ئاۋازنى كۆچۈرۈش پروگراممىسى
# 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
ئاۋازنى ياخشىلاش
# 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
خاتالىق كودى
بارلىق خاتالىقلار بىر JSON جاۋابىنى قايتۇرىدۇ error مەيدان.
{
"error": {
"code": "insufficient_credits",
"message": "You do not have enough characters for this request.",
"characters_required": 4000,
"characters_available": 2000
}
}
| HTTP ھالىتى | خاتالىق كودى | چۈشەندۈرۈش |
|---|---|---|
| 400 | bad_request |
تەلەپ قىلىنغان پارامېتىرلار خاتا. خاتالىق ئۇچۇرىنى كۆرۈپ تېخىمۇ كۆپ ئۇچۇرغا ئېرىشىڭ. |
| 401 | unauthorized |
API ئاچقۇچى يوق ياكى خاتا. |
| 402 | insufficient_credits |
پۇل يېتەرلىك ئەمەس. /pricing/ دىن تېخىمۇ كۆپ پۇل سېتىۋالسىڭىز بولىدۇ. |
| 403 | forbidden |
بۇ مەنبەگە ئېرىشىش ھوقۇقىڭىز يوق (مەسىلەن، باشقا ئىشلەتكۈچىنىڭ ئىشىنى سوراش). API ئېرىشىش ھەر قانداق پىلانى بىلەن بىرلىكتە بېرىلىدۇ. |
| 404 | not_found |
مودېل ياكى ئاۋاز تاپالمىدى. |
| 413 | file_too_large |
يۈكلەنگەن ھۆججەت چوڭلۇق چەكلىمىسىدىن ئېشىپ كەتتى. |
| 429 | rate_limited |
تەلەپلەر بەك كۆپ. سۈرئەت چەكلىمىسى تېپىشماقلىرىنى تەكشۈرۈڭ. |
| 500 | internal_error |
مۇلازىمېتىردا خاتالىق كۆرۈلدى. كېيىن قايتا سىناپ بېقىڭ. |
| 503 | model_loading |
مودېل قوزغىماقتا. بىر قانچە سېكۇنتتىن كېيىن قايتا سىناپ بېقىڭ. |
Webhookلار
ئۇزۇنغا سوزۇلغان ۋەزىپىلەر ئۈچۈن webhook_url پارامېتىرىنى بەرسىڭىز بولىدۇ. ۋەزىپىلەر تاماملانغاندا، نەتىجىنى سىزنىڭ URL ىڭىزغا POST قىلىمىز.
{
"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"
}
قۇرۇلۇشقا تەييارمۇ؟
API ئاچقۇچىڭىزنى ئېلىپ TTS.ai نى پروگراممىلىرىڭىزغا بىرلەشتۈرۈشنى باشلاڭ.