API दस्तऐवजीकरण
TTS.ai ला आपल्या अनुप्रयोगांमध्ये आमचे REST API सोबत एकत्रित करा.
ओळख
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.
API कि
येथे तुमची API किल्ली मिळवा खाते संयोजना. या कंपनीचे मुख्यालय औरंगाबाद येथे आहे.
आधार URL
https://api.tts.ai/v1/
अधिप्रमाणन
वाहक टोकन द्वारे Authorization शिर्षक
अधिप्रमाणन
सर्व API विनंती करीता खालीलमधील बेअरर टोकन द्वारे अधिप्रमाणन आवश्यक आहे Authorization शिर्षक.
Authorization: Bearer sk-tts-your-api-key-here
आधार URL
सर्व शेवटचे बिंदू या आधार URL सह संबंधित आहेत. उदाहरणार्थ, TTS शेवटचे बिंदू आहे:
दर मर्यादा
API दर मर्यादा योजनानुसार बदलतात:
| प्लॅन | विनंती/मिनिट | Concurrent | कमाल पाठ्य लांबी |
|---|---|---|---|
| प्रो | 60 | 5 | अक्षरे |
| एंटरप्राइज | 300 | 20 | ५०,००० अक्षरे |
दर मर्यादा शिर्षक प्रत्येक उत्तरात समाविष्टीत आहे: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset.
क्रेडिट खर्च
| सेवा | किंमत | Unit |
|---|---|---|
| TTS (मुफ्त मॉडेल: पाइपर, VITS, MeloTTS) | क्रेडिट | प्रति 1000 अक्षरे |
| टीटीएस (मानक मॉडेल: कोकोरो, कोसीव्हॉइस २, इ. | क्रेडिट | प्रति 1000 अक्षरे |
| TTS (प्रीमियम मॉडेल: Tortoise, Chatterbox, इत्यादी) | क्रेडिट | प्रति 1000 अक्षरे |
| वक्तव्य ते पाठ्यName | क्रेडिट | प्रति मिनिट ऑडिओ |
| आवाज क्लोनिंग | क्रेडिट | प्रति 1000 अक्षरे |
| आवाज बदलविकर्ताName | क्रेडिट | प्रति मिनिट ऑडिओ |
| ऑडिओ सुधारणName | क्रेडिट | प्रति मिनिट ऑडिओ |
| आवाज काढून टाकणे / आवाज विभाजन | 3-4 तास | प्रति मिनिट ऑडिओ |
| वक्तृत्व अनुवादName | क्रेडिट | प्रति मिनिट ऑडिओ |
| आवाज संवादName | क्रेडिट | प्रति फेरी |
| कि (BPM) शोधकर्ता | मोकळे | -- |
| ऑडिओ कनवर्टरName | मोकळे | -- |
पाठ्य ते वक्तव्यName
पाठ्य संवाद ऑडिओ करीता रूपांतरीत करा. विनंतीकृत स्वरूपन अंतर्गत ऑडिओ फाइल परत करतो.
विनंतीचे मुख्य भाग
| पैरामीटर | प्रकार | आवश्यक | वर्णन |
|---|---|---|---|
| model | string | होय | मॉडेल ID (उदा., kokoro, chatterbox, piper) |
| text | string | होय | भाषण करीता बदलविण्याजोगी पाठ्य (Pro करीता कमाल 5,000 अक्षरे, Enterprise करीता 50,000 अक्षरे) |
| voice | string | होय | आवाज ID (उपलब्ध आवाजांची यादी करीता /v1/voices/ चा वापर करा) |
| format | string | नाही | आऊटपुट स्वरूप: mp3 (मूलभूत), wav, flac, ogg |
| speed | float | नाही | बोलण्याचा वेग गुणक. मुलभूत: 1.0. दायरा: 0.5 ते 2.0 |
| language | string | नाही | भाषा कोड (उदा., en, es). गळून पडल्यास आपोआप शोधले जाईल. |
| 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
प्रतिसाद
Returns the audio file as binary data with appropriate Content-Type header (audio/mpeg, audio/wav, etc.).
Content-Type: audio/mpeg
Content-Length: 48256
X-Credits-Used: 2
X-Credits-Remaining: 498
वक्तव्य ते पाठ्यName
ऑडिओ पाठ्य करीता रूपांतरित करा. स्वचलित शोध सह 99 भाषांना समर्थन देतो.
विनंतीचे मुख्य भाग (multipart/form-data)
| पैरामीटर | प्रकार | आवश्यक | वर्णन |
|---|---|---|---|
| file | file | होय | ऑडिओ फाइल (MP3, WAV, FLAC, OGG, M4A, MP4, WebM). कमाल 100MB. |
| model | string | नाही | STT मॉडेल: whisper (मूलभूत), faster-whisper, sensevoice |
| language | string | नाही | Unknown parameter |अॅक्सेसदिनांक= ignored (सहाय्य); Unknown parameter |अॅक्सेसदिनांक= ignored (सहाय्य) |
| 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 सेकंद सूचविले). कमाल 20MB. |
| text | string | होय | क्लोन आवाजात बोलण्याकरीता पाठ्य. |
| model | string | नाही | क्लोन मॉडेल: chatterbox (मूलभूत), cosyvoice2, gpt-sovits |
| format | string | नाही | आऊटपुट स्वरूप: mp3 (मूलभूत), wav, flac |
| language | string | नाही | लक्ष्य भाषा कोड. निवडलेले मॉडेल द्वारे समर्थीत असणे आवश्यक आहे. |
प्रतिसाद
ऑडिओ फाइल बायनरी माहिती नुरूप परत करतो, TTS अंतबिंदू सारखे.
आवाज बदलविकर्ताName
ऑडिओला वेगळ्या आवाजासारखा आवाज देण्याकरीता रूपांतरित करा. स्त्रोत ऑडिओ अपलोड करा व लक्ष्य आवाज निवडा.
विनंतीचे मुख्य भाग (multipart/form-data)
| पैरामीटर | प्रकार | आवश्यक | वर्णन |
|---|---|---|---|
| file | file | होय | स्त्रोत ऑडिओ फाइल (MP3, WAV, FLAC). कमाल 50MB. |
| target_voice | string | होय | बदलविण्याकरीता लक्ष्य आवाज ID (उपलब्ध आवाजांची यादी करीता /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
प्रतिसाद
बदलविलेले ऑडिओ फाइल बायनरी माहिती नुरूप परत करतो.
वक्तृत्व अनुवादName
एका भाषेतून दुसऱ्या भाषेत बोलल्या गेलेल्या ऑडिओचे भाषांतर करा. एकाच कॉलमध्ये भाषण-ते-पाठ्य, अनुवाद, व पाठ्य-ते-भाषण एकत्रित करा. Name
विनंतीचे मुख्य भाग (multipart/form-data)
| पैरामीटर | प्रकार | आवश्यक | वर्णन |
|---|---|---|---|
| file | file | होय | मूळ भाषेतील स्रोत ऑडिओ फाइल. कमाल 100MB. |
| 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
}
वक्तव्य ते वक्तव्यName
संवाद शैली, भावना, किंवा सादरीकरण बदलवा, संदर्भ राखून. स्वर, गती, व अभिव्यक्ती समायोजित करण्याकरीता उपयोगी पडते.
विनंतीचे मुख्य भाग (multipart/form-data)
| पैरामीटर | प्रकार | आवश्यक | वर्णन |
|---|---|---|---|
| file | file | होय | स्त्रोत भाषण ऑडिओ फाइल. कमाल 50MB. |
| voice | string | होय | आऊटपुट भाषण करीता लक्ष्य आवाज ID |
| model | string | नाही | मॉडेल: openvoice (मूलभूत), chatterbox |
| emotion | string | नाही | लक्ष्य भावना: neutral, happy, sad, angry, excited |
| speed | float | नाही | वेग समायोजन. मुलभूत: 1.0. रेंज: 0.5 ते 2.0 |
प्रतिसाद
बदलविलेले ऑडिओ फाइल बायनरी माहिती नुरूप परत करतो.
ऑडिओ साधनName
ध्वनी प्रदूषण, ध्वनी प्रदूषण, ध्वनी प्रदूषण, ध्वनी प्रदूषण, ध्वनी प्रदूषण, ध्वनी प्रदूषण, ध्वनी प्रदूषण, ध्वनी प्रदूषण.
मराठी साहित्य संमेलन, पुणे, मराठी विश्वकोश निर्मिती मंडळ, पुणे, इ.
| file file | वाढविण्याकरीता ऑडिओ फाइल |
| denoise boolean | डेनोसिंग कार्यान्वीत करा (मूलभूत: खरे) |
| enhance_clarity boolean | वक्तृत्व स्पष्टता वाढवा (मुलभूत: खरे) |
| super_resolution boolean | ऑडिओ गुणवत्ता वाढवा (मूलभूत: चुकीचे) |
| strength integer | 1-3(लहान, मध्यम, मोठे). मुलभूत: 2 |
त्यांपैकी काही उपप्रकार पुढील प्रमाणे :- (१) ध्वनिप्रदूषण (Voice Pollution) - ध्वनी प्रदूषण हे ध्वनी प्रदूषणाचे एक प्रकार आहे.
| 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) |
कि, बीपीएम आणि वेळ चिन्हांकन शोधण्यासाठी ऑडिओचे विश्लेषण करा.
| 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 | आऊटपुट बीटरेट kbps अंतर्गत: 64, 128, 192, 256, 320 |
| sample_rate integer | सॅम्पल दर: 22050, 44100, 48000 |
| channels string | mono किंवा stereo |
आवाज संवादName
ऑडिओ किंवा टेक्स्ट पाठवा आणि सिंथेसाइज्ड स्पीचसह 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 करीता इच्छिक प्रणाली सूचनाName |
| 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
}
नमूने यादीबद्ध करा
सर्व उपलब्ध नमुन्यांची यादी त्यांच्या क्षमतांसह परत करतो.
प्रतिसाद
{
"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
}
कोड उदाहरण
पाठ्य ते वक्तव्यName
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')}")
वक्तव्य ते पाठ्यName
# 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)
पाठ्य ते वक्तव्यName
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();
वक्तव्य ते पाठ्यName
// 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);
पाठ्य ते वक्तव्यName
# 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
वक्तव्य ते पाठ्यName
# 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
ऑडिओ सुधारणName
# 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 credits for this request.",
"credits_required": 4,
"credits_available": 2
}
}
| HTTP स्थिती | Error Code | वर्णन |
|---|---|---|
| 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 |
नमूना दाखल करीत आहे. काही सेकंद अंतर्गत पुन्हा प्रयत्न करा. |
वेबहूक्स
दीर्घकाळ चालणाऱ्या कार्यांसाठी (स्टेम विभाजन, बॅच TTS), तुम्ही 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"
}
तयार आहात का?
याचा वापर करून आपण आपल्या संगणकावरील ऍप्लिकेशन्स डाउनलोड करण्यास सुरुवात करू शकतो.