API ডকুমেন্টেশন
আমাদের REST API এর সাথে আপনার অ্যাপ্লিকেশনে TTS.ai একীভূত করুন। সহজে মাইগ্রেশনের জন্য OpenAI-সমর্থিত ফরম্যাট।
সারসংক্ষেপ
TTS.ai API সকল প্ল্যাটফর্ম বৈশিষ্ট্যসমূহের জন্য প্রোগ্রামিং অ্যাক্সেস প্রদান করে: টেক্সট-টু-স্পীচ সংশ্লেষণ, স্পীচ-টু-টেক্সট ট্রান্সক্রিপশন, ভয়েস ক্লোনিং, অডিও উন্নতি, এবং আরো। API JSON অনুরোধ/প্রতিক্রিয়া দেহের সাথে মানসম্মত REST কনভেনশন ব্যবহার করে।
API কী
এখানে থেকে আপনার API কী প্রাপ্ত করুন অ্যাকাউন্ট সেটিংস. প্রো এবং এন্টারপ্রাইজ প্ল্যানে উপলব্ধ।
ভিত্তি ইউ- আর- এল
https://api.tts.ai/v1/
অনুমোদন
বিয়ারার টোকেন Authorization শীর্ষচরণ
অনুমোদন
সমস্ত API অনুরোধের জন্য প্রমাণীকরণের প্রয়োজন Authorization শীর্ষচরণ.
Authorization: Bearer sk-tts-your-api-key-here
এস- ডি- কে
সরকারি SDKs আপনার অ্যাপ্লিকেশনে 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');
ভিত্তি ইউ- আর- এল
সব এনড- বিন্দু এই মৌলিক ইউ- আর- এল- এর সাথে সম্পর্কিত। উদাহরণস্বরূপ, TTS এনড- বিন্দু হল:
হারের সীমা
API হার সীমা পরিকল্পনা অনুযায়ী পরিবর্তিত হয়:
| প্ল্যান | অনুরোধ/মিনিট | একই সময়ে | টেক্সটের সর্বোচ্চ দৈর্ঘ্য |
|---|---|---|---|
| মুক্ত | 10 | 2 | ৫০০ অক্ষর |
| স্টার্টার | 30 | 3 | ১০০,০০০ অক্ষর |
| প্রফেশনাল | 60 | 5 | ১০০,০০০ অক্ষর |
| এন্টারপ্রাইজ | 300 | 20 | ৫০,০০০ অক্ষর |
প্রতিটি উত্তরে রেট লিমিট হেডার অন্তর্ভুক্ত করা হবে: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset.
ক্রেডিট খরচ
| সার্ভিস | খরচ | একক |
|---|---|---|
| TTS (মুক্ত মডেল: পাইপার, VITS, MeloTTS) | ১,০০০ অক্ষর | প্রতি ১০০০ অক্ষর |
| TTS (প্রমিত মডেল: Kokoro, CosyVoice ২, ইত্যাদি) | ২,০০০ অক্ষর | প্রতি ১০০০ অক্ষর |
| TTS (প্রিমিয়াম মডেল: Tortoise, Chatterbox, ইত্যাদি) | ৪,০০০ অক্ষর | প্রতি ১০০০ অক্ষর |
| বক্তৃতা থেকে লেখাName | ২,০০০ অক্ষর | অডিও |
| ভয়েস ক্লোন | ৪,০০০ অক্ষর | প্রতি ১০০০ অক্ষর |
| শব্দ পরিবর্তকName | ৩টি ক্রেডিট | অডিও |
| অডিও উন্নতি | ২,০০০ অক্ষর | অডিও |
| ভয়েসেল অপসারণ / স্টেম বিভাজন | ৩,০০০-৪,০০০ অক্ষর | অডিও |
| ভাষণ অনুবাদName | ৫,০০০ অক্ষর | অডিও |
| ভয়েস আড্ডা | ৩টি ক্রেডিট | প্রতি পালা |
| কী (key) BPM অনুসন্ধানকারী | মুক্ত | -- |
| অডিও রূপান্তরকারী | মুক্ত | -- |
টেক্সট- থেকে- কথাName
টেক্সটকে বক্তৃতার অডিওতে রূপান্তর করে । অনুরোধ করা ফরম্যাটে অডিও ফাইল ফিরিয়ে দেয় ।
অনুরোধের মূল অংশ
| প্যারামিটার | ধরন | আবশ্যক | বর্ণনা |
|---|---|---|---|
| model | string | হ্যাঁ | মডেল ID (যেমন, kokoro, chatterbox, piper) |
| text | string | হ্যাঁ | যে টেক্সটটিকে কথায় রূপান্তর করা হবে (প্রতিটি অনুরোধের জন্য সর্বোচ্চ ১০০,০০০ অক্ষর) |
| voice | string | হ্যাঁ | ভয়েস ID (প্রয়োজনীয় ভয়েস তালিকাভুক্ত করতে /v1/voices/ ব্যবহার করুন) |
| format | string | না | আউটপুট ফরম্যাট: mp3 (ডিফল্ট), wav, flac, ogg |
| speed | float | না | কথা বলার গতি বহুগুণক। ডিফল্ট: ১.০। পরিসীমা: ০.৫ থেকে ২.০ |
| 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
প্রতিক্রিয়া
যথাযথ Content-Type শীর্ষচরণ সহযোগে বাইনারি তথ্য হিসেবে অডিও ফাইলটি ফিরিয়ে আনে (audio/mpeg, audio/wav, ইত্যাদি)।
Content-Type: audio/mpeg
Content-Length: 48256
X-Credits-Used: 2
X-Credits-Remaining: 498
বক্তৃতা থেকে লেখাName
অডিও থেকে টেক্সট অনুবাদ করুন। স্বয়ংক্রিয় সনাক্তকরণ সহ ৯৯টি ভাষা সমর্থন করে।
অনুরোধের মূল অংশ (multipart/form-data)
| প্যারামিটার | ধরন | আবশ্যক | বর্ণনা |
|---|---|---|---|
| file | file | হ্যাঁ | অডিও ফাইল (MP3, WAV, FLAC, OGG, M4A, MP4, WebM)। সর্বোচ্চ ১০০ মেগাবাইট। |
| 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 | হ্যাঁ | রেফারেন্স ভয়েস অডিও (১০-৩০ সেকেন্ড সুপারিশ করা হয়)। সর্বোচ্চ ২০ মেগাবাইট। |
| 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)। সর্বাধিক ৫০ মেগাবাইট। |
| 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
প্রতিক্রিয়া
রূপান্তরিত অডিও ফাইলটি বাইনারি তথ্য হিসেবে ফিরিয়ে দেয়।
ভাষণ অনুবাদName
একটি ভাষা থেকে অন্য ভাষায় অডিও অনুবাদ করুন। একটি কলের মধ্যে বাক্যের-থেকে-লেখ্য, অনুবাদ এবং বাক্যের-থেকে-লেখ্য একত্রিত করে।
অনুরোধের মূল অংশ (multipart/form-data)
| প্যারামিটার | ধরন | আবশ্যক | বর্ণনা |
|---|---|---|---|
| file | file | হ্যাঁ | মূল ভাষায় উৎস অডিও ফাইল। সর্বোচ্চ ১০০ মেগাবাইট। |
| target_language | string | হ্যাঁ | লক্ষ্য ভাষার কোড (যেমন, es, fr, de, ja) |
| voice | string | না | অনুবাদকৃত আউটপুট-এর জন্য শব্দ। অগ্রাহ্য করা হলে স্বয়ংক্রিয়ভাবে নির্বাচিত হবে। |
| preserve_voice | boolean | না | মূল স্পিকারের কন্ঠের বৈশিষ্ট্য সংরক্ষণের চেষ্টা করা হবে। ডিফল্ট: false |
প্রতিক্রিয়া
{
"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 | হ্যাঁ | উৎস বাক্য অডিও ফাইল। সর্বোচ্চ ৫০ মেগাবাইট। |
| voice | string | হ্যাঁ | আউটপুট বাক্যাংশের জন্য লক্ষ্য ভয়েস আইডি |
| model | string | না | মডেল: openvoice (ডিফল্ট), chatterbox |
| emotion | string | না | লক্ষ্য আবেগ: neutral, happy, sad, angry, excited |
| speed | float | না | গতি সংশোধন। ডিফল্ট: ১.০। পরিধি: ০.৫ থেকে ২.০ |
প্রতিক্রিয়া
রূপান্তরিত অডিও ফাইলটি বাইনারি তথ্য হিসেবে ফিরিয়ে দেয়।
অডিও টুলName
উন্নতির জন্য অডিও প্রসেসিং এন্ডপয়েন্ট, ভয়েস অপসারণ, স্টেম বিভাজন এবং আরও অনেক কিছু।
অডিও গুণমান উন্নত করুন: ঝামেলা দূর করুন, সুস্পষ্টতা উন্নত করুন, সুপার রেজোলিউশন।
| file file | উন্নত করার জন্য অডিও ফাইল |
| denoise boolean | নিঃশব্দীকরণ সক্রিয় করো (ডিফল্ট: সত্য) |
| enhance_clarity boolean | বক্তৃতার স্পষ্টতা বাড়াও (ডিফল্ট: সত্য) |
| super_resolution boolean | অডিও গুণমান উন্নত করুন (ডিফল্ট: মিথ্যা) |
| strength integer | ১- ৩ (হালকা, মাঝারি, কঠিন) । ডিফল্ট: ২ |
সঙ্গীতের সঙ্গীত থেকে ভয়েস আলাদা করুন (ভয়েস অপসারণ) অথবা স্টেম- এ বিভক্ত করুন।
| file file | যে অডিও ফাইলটি আলাদা করা হবে |
| model string | demucs (ডিফল্ট) অথবা spleeter |
| stems integer | স্টেম- এর সংখ্যা: ২, ৪, ৫, অথবা ৬ (ডিফল্ট: ২) |
| 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 | আউটপুট বিটরেট (কেবিপিএস- এ): ৬৪, ১২৮, ১৯২, ২৫৬, ৩২০ |
| 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 উৎপাদনের জন্য একাধিক টেক্সট জমা দিন। সকল কাজ সম্পন্ন হলে ইচ্ছাকৃতভাবে একটি ওয়েবহুক কলব্যাক গ্রহণ করুন।
পরামিতি
| পরামিতি | ধরন | বর্ণনা |
|---|---|---|
| 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/?batch_id=abc123 এর মাধ্যমে ভোট প্রক্রিয়া
শব্দের অন্তর্ভুক্তকরণ
রেফারেন্স অডিও থেকে একটি ভয়েস ইম্বেডিং পূর্ব-গণনা করা হবে। পরবর্তী ভয়েস ক্লোন অনুরোধের ক্ষেত্রে প্রায়-অবিলম্বে উৎপাদনের জন্য ফিরিয়ে পাওয়া 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 সার্ভারের অবস্থা, লোডকৃত মডেল এবং লাইন আকার পরীক্ষা করুন। অনুমোদনের প্রয়োজন নেই। ৩০ সেকেন্ডের জন্য ক্যাশ করা হয়েছে।
প্রতিক্রিয়া
{
"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 | লিঙ্গ অনুযায়ী পরিশোধক: পুরুষ, মহিলা, নিরপেক্ষ |
প্রতিক্রিয়া
{
"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
অডিও উন্নতি
# 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 |
মডেল লোড করা হচ্ছে । কয়েক সেকেন্ডের মধ্যে আবার চেষ্টা করুন । |
ওয়েবহুক
দীর্ঘস্থায়ী কাজের জন্য (স্টেম বিভাজন, ব্যাচ 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"
}
তৈরি করতে প্রস্তুত?
আপনার অ্যাপলিকেশনের জন্য আপনার অ্যাপিআই কী পেতে এবং TTS.ai একীভূত শুরু করুন।