TTS API
Text-to-Speech endpointlari. Server integratsiya uchun har bir so'rovda X-Api-Key header yuboring.
Overview #
- 1 Audio yaratish uchun
POST /api/v1/tts/post/endpointigatranscriptyuboring. - 2
webhook_notification_urlyuborilsa, so'rov async ishlaydi va202 Acceptedqaytadi. - 3 Natijani
GET /api/v1/tts/status/{id}/yoki history orqali tekshiring.
CLI qulayroqmi? aisha-ai npm paketi shu endpointlarni o‘rab beradi: npx aisha-ai tts / npx aisha-ai stt. npm’dagi aisha-ai
API Key #
API Key
X-Api-Key: <api_key>Server-to-server integratsiya uchun tavsiya qilinadi.
Audio yaratish #
https://back.aisha.group/api/v1/tts/post/ Matnni audio faylga aylantiradi. language=uz uchun built-in Gulnoza modeli ishlaydi. en va ru oqimlarida model, mood, speed yuborilmaydi.
Autentifikatsiya: X-Api-Key yuboring. Public so‘rovlar reCAPTCHA talab qilishi mumkin.
- Limit: API key bilan 1000 belgi, public so‘rovda 500 belgi.
-
speedqiymati0yoki0.5-2.0oralig‘ida bo‘ladi. -
moodfaqat built-inGulnozauchun.voice_idbilan yuborilgandamoodishlatilmaydi.
So‘rov maydonlari #
transcript majburiy string
Audio ga aylantiriladigan matn.
Misol: Assalomu alaykum
language string
Qo'llab-quvvatlanadi: uz, en, ru. Default: uz.
Misol: uz
model string
Faqat uz built-in oqimi uchun. Hozir bitta model bor: Gulnoza.
Misol: Gulnoza
mood string
Faqat built-in Gulnoza uchun 4 ta mood bor: Neutral, Cheerful, Happy, Sad. voice_id, en, ru oqimlarida yuborilmaydi.
Misol: Neutral
speed float
Faqat uz oqimi uchun. 0 default tezlik. Custom qiymat: 0.5-2.0.
Misol: 1.0
voice_id integer
Userga tegishli READY custom voice ID. voice_id ishlatilsa mood yuborilmaydi.
Misol: 12
webhook_notification_url string
Berilsa TTS async queue ga tushadi.
Misol: https://example.com/webhooks/tts
Misollar #
Sync request
curl --request POST \
--url https://back.aisha.group/api/v1/tts/post/ \
--header 'X-Api-Key: your_api_key' \
--header 'Accept-Language: uz' \
--form 'transcript=Assalomu alaykum, bu AIsha TTS sinovi.' \
--form 'language=uz' \
--form 'model=Gulnoza' \
--form 'mood=Neutral' \
--form 'speed=1.0' Async request
curl --request POST \
--url https://back.aisha.group/api/v1/tts/post/ \
--header 'X-Api-Key: your_api_key' \
--form 'transcript=Webhook orqali qaytadigan sinov matni.' \
--form 'language=uz' \
--form 'webhook_notification_url=https://example.com/webhooks/tts' CLI (aisha-ai)
export AISHA_API_KEY=your_api_key
npx aisha-ai tts "Salom dunyo" --model Gulnoza --out salom.wav Javoblar #
Sync success
{
"audio_path": "/media/tts_audios/request-id.wav"
} Async queued
{
"id": 184,
"task_id": "7d5f8779-9cb0-4230-9318-2f8c3c3f0e31",
"status": "PENDING"
} Status kodlari #
201 Audio tayyor va `audio_path` qaytdi.
202 Async task queue ga qo'yildi.
400 Transcript, language, model yoki speed xato.
401 Custom voice uchun auth kerak.
402 Balans yetarli emas.
503 TTS servisi vaqtincha unavailable.
Status tekshirish #
https://back.aisha.group/api/v1/tts/status/{id}/ Async TTS task holatini qaytaradi.
Autentifikatsiya: X-Api-Key yuboring.
- Status qiymatlari:
PENDING,SUCCESS,FAILED.
Misollar #
Status request
curl --request GET \
--url https://back.aisha.group/api/v1/tts/status/184/ \
--header 'X-Api-Key: your_api_key' Javoblar #
Pending
{
"id": 184,
"status": "PENDING",
"task_id": "7d5f8779-9cb0-4230-9318-2f8c3c3f0e31"
} Completed
{
"id": 184,
"status": "SUCCESS",
"task_id": "7d5f8779-9cb0-4230-9318-2f8c3c3f0e31",
"audio_path": "/media/tts_audios/request-id.wav",
"characters": 42
} Status kodlari #
200 Status qaytdi.
403 Boshqa user recordiga access yo'q.
404 TTS record topilmadi.
History ro'yxati #
https://back.aisha.group/api/v1/tts/get/?page=1&limit=10 Userga tegishli TTS audio tarixini paginatsiya bilan qaytaradi.
Autentifikatsiya: X-Api-Key talab qilinadi.
- Response
count,next,previous,resultsformatida qaytadi.
Misollar #
History request
curl --request GET \
--url 'https://back.aisha.group/api/v1/tts/get/?page=1&limit=10' \
--header 'X-Api-Key: your_api_key' Javoblar #
Paginated success
{
"count": 1,
"next": null,
"previous": null,
"results": [
{
"id": 184,
"transcript": "Assalomu alaykum, bu AIsha TTS sinovi.",
"audio_url": "/media/tts_audios/request-id.wav",
"model": "Gulnoza",
"mood": "Neutral",
"created_at": "2026-05-04T10:15:30Z"
}
]
} Status kodlari #
200 History qaytdi.
403 API key noto'g'ri yoki yuborilmagan.