API मिसिलीकरण

हाम्रो REST API संग आफ्नो अनुप्रयोगहरूमा TTS.ai एकीकृत गर्नुहोस्। सजिलो माइग्रेसनको लागि OpenAI-संगत ढाँचा।

REST एपीआई OpenAI मिल्दोजुल्दो JSON प्रतिक्रिया स्ट्रिमिङ समर्थन

सारांश

TTS.ai एपीआईले सबै प्लेटफर्म सुविधाहरूमा प्रोग्रामेटिक पहुँच प्रदान गर्दछ: पाठ-देखि-भाषण संश्लेषण, भाषण-देखि-पाठ प्रतिलिपि, आवाज क्लोनिंग, अडियो सुधार, र अधिक। एपीआईले JSON अनुरोध / प्रतिक्रिया शरीरहरूको साथ मानक REST सम्मेलनहरू प्रयोग गर्दछ।

API कुञ्जी

यसबाट तपाईँको एपीआई कुञ्जी प्राप्त गर्नुहोस् खाता सेटिङ. प्रो र उद्यम योजनाहरूमा उपलब्ध।

आधार यूआरएल

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

प्रमाणीकरण गर्नुहोस्

बेयरर टोकन मार्फत Authorization हेडर

प्रमाणीकरण

सबै एपीआई अनुरोध मा एक बोक्ने टोकन मार्फत प्रमाणीकरण आवश्यक Authorization हेडर.

एचटीटीपी हेडर
Authorization: Bearer sk-tts-your-api-key-here
तपाईँको API कुञ्जी गोप्य राख्नुहोस् । यसलाई क्लाइन्ट-साइड कोड, सार्वजनिक भण्डार, वा लगमा साझेदारी नगर्नुहोस् । तपाईँको खाता सेटिङबाट नियमित रूपमा कुञ्जीहरू घुमाउनुहोस् ।

एसडीके

आधिकारिक एसडीकेहरूले 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")
GitHub

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');
GitHub

आधार यूआरएल

आधार यूआरएल: https://api.tts.ai/v1/

सबै अन्त्यबिन्दुहरू यो आधार URL सँग सम्बन्धित छन् । उदाहरणका लागि, TTS अन्त्यबिन्दु:

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

दर सीमा

API दर सीमा योजना द्वारा भिन्न हुन्छ:

योजना अनुरोध/मिनेट एकै समयमा अधिकतम पाठ लम्बाइ
स्वतन्त्र 10 2 ५०० क्यारेक्टर
सुरुआतकर्ता 30 3 १००,००० क्यारेक्टर
प्रो 60 5 १००,००० क्यारेक्टर
उद्यम 300 20 ५०,००० क्यारेक्टर

दर सीमा हेडर प्रत्येक प्रतिक्रियामा समावेश गरिएको छ: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset.

ऋण लागत

सेवा लागत एकाइ
TTS (मुफ्त नमूनाहरू: पाइपर, VITS, MeloTTS) १००० क्यारेक्टर प्रति १००० क्यारेक्टर
TTS (मानक नमूना: Kokoro, CosyVoice2, आदि) २,००० क्यारेक्टर प्रति १००० क्यारेक्टर
TTS (प्रिमियम मोडेल: Tortoise, Chatterbox, आदि) ४,००० क्यारेक्टर प्रति १००० क्यारेक्टर
पाठमा भाषणName २,००० क्यारेक्टर प्रति मिनेट अडियो
आवाज क्लोनिङ ४,००० क्यारेक्टर प्रति १००० क्यारेक्टर
आवाज परिवर्तनकर्ताName ३ क्रेडिट प्रति मिनेट अडियो
अडियो सुधार २,००० क्यारेक्टर प्रति मिनेट अडियो
स्वर हटाउनुहोस् / आवाज विभाजन गर्नुहोस् ३,०००-४,००० क्यारेक्टर प्रति मिनेट अडियो
वक्तव्य अनुवाद ५,००० क्यारेक्टर प्रति मिनेट अडियो
आवाज कुराकानी ३ क्रेडिट प्रत्येक पालो
कुञ्जी र बीपीएम फेला पार्ने स्वतन्त्र --
अडियो रूपान्तरणकर्ताName स्वतन्त्र --

पाठ वाचकComment

POST /v1/tts/

पाठलाई बोल्ने अडियोमा रूपान्तरण गर्नुहोस् । अनुरोध गरिएको ढाँचामा अडियो फाइल फर्काउँछ ।

अनुरोध मुख्य भाग

परिमितिप्रकारआवश्यकवर्णन:
model string हो नमूना आईडी (जस्तै, kokoro, chatterbox, piper)
text string हो पाठलाई भाषणमा रूपान्तरण गर्न (प्रति अनुरोध अधिकतम १००,००० क्यारेक्टर)
voice string हो आवाज आईडी (उपलब्ध आवाजहरू सूचीबद्ध गर्न /v1/voices/ प्रयोग गर्नुहोस्)
format string होइन निर्गत ढाँचा: mp3 (पूर्वनिर्धारित), wav, flac, ogg
speed float होइन बोल्ने गति गुणक । पूर्वनिर्धारित: 1.0 । दायरा: 0.5 देखि 2.0 सम्म
language string होइन भाषा सङ्केत (जस्तै, en, es) । यदि छोडियो भने स्वत: पत्ता लगाइन्छ ।
stream boolean होइन स्ट्रिमिङ प्रतिक्रिया सक्षम पार्नुहोस् । पूर्वनिर्धारित: false

उदाहरण अनुरोध

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

प्रतिक्रिया

उपयुक्त Content-Type हेडर (audio/mpeg, audio/wav, आदि) सँग बाइनरी डेटाको रूपमा अडियो फाइल फर्काउँछ ।

प्रतिक्रिया हेडर
Content-Type: audio/mpeg
Content-Length: 48256
X-Credits-Used: 2
X-Credits-Remaining: 498

पाठमा भाषणName

POST /v1/stt/

पाठमा अडियो प्रतिलिपि गर्नुहोस् । स्वचालित पत्ता लगाउनेसँग ९९ भाषाहरू समर्थन गर्दछ ।

अनुरोध मुख्य भाग (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

प्रतिक्रिया

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"
    }
  ]
}

आवाज क्लोनिङ

POST /v1/tts/clone/

क्लोन गरिएको आवाजमा भाषण सिर्जना गर्नुहोस् । सन्दर्भ अडियो र पाठ अपलोड गर्नुहोस् ।

अनुरोध मुख्य भाग (multipart/form-data)

परिमितिप्रकारआवश्यकवर्णन:
reference_audio file हो सन्दर्भ आवाज अडियो (१०-३० सेकेन्ड सिफारिस गरिएको) । अधिकतम २० मेगाबाइट ।
text string हो क्लोन गरिएको आवाजमा बोल्ने पाठ ।
model string होइन क्लोन नमूना: chatterbox (पूर्वनिर्धारित), cosyvoice2, gpt-sovits
format string होइन निर्गत ढाँचा: mp3 (पूर्वनिर्धारित), wav, flac
language string होइन लक्षित भाषा सङ्केत । चयन गरिएको नमूनाद्वारा समर्थित हुनुपर्छ ।

प्रतिक्रिया

TTS अन्त्यबिन्दु जस्तै, बाइनरी डेटाको रूपमा अडियो फाइल फर्काउँछ ।

आवाज परिवर्तनकर्ताName

POST /v1/voice-convert/

अडियोलाई फरक आवाज जस्तै ध्वनिमा रूपान्तरण गर्नुहोस् । स्रोत अडियो अपलोड गर्नुहोस् र लक्षित आवाज रोज्नुहोस् ।

अनुरोध मुख्य भाग (multipart/form-data)

परिमितिप्रकारआवश्यकवर्णन:
file file हो स्रोत अडियो फाइल (MP3, WAV, FLAC) । अधिकतम ५० मेगाबाइट ।
target_voice string हो यसमा रूपान्तरण गर्न लक्षित आवाज आईडी (उपलब्ध आवाजहरू सूचीबद्ध गर्न /v1/voices/ प्रयोग गर्नुहोस्)
model string होइन आवाज रूपान्तरण नमूना: openvoice (पूर्वनिर्धारित), knn-vc
format string होइन निर्गत ढाँचा: wav (पूर्वनिर्धारित), mp3, flac

उदाहरण अनुरोध

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

प्रतिक्रिया

बाइनरी डेटाको रूपमा रूपान्तरित अडियो फाइल फर्काउँछ ।

वक्तव्य अनुवाद

POST /v1/speech-translate/

अर्को भाषामा एक भाषाबाट बोलेको अडियो अनुवाद गर्नुहोस्। एकल कलमा भाषण-देखि-पाठ, अनुवाद, र पाठ-देखि-भाषण संयोजन गर्दछ।

अनुरोध मुख्य भाग (multipart/form-data)

परिमितिप्रकारआवश्यकवर्णन:
file file हो मौलिक भाषामा स्रोत अडियो फाइल । अधिकतम १०० मेगाबाइट ।
target_language string हो लक्षित भाषा कोड (जस्तै, es, fr, de, ja)
voice string होइन अनुवादित निर्गतका लागि आवाज । यदि छोडियो भने स्वत: चयन गरिन्छ ।
preserve_voice boolean होइन मौलिक वक्ताको आवाज विशेषताहरू बचत गर्ने प्रयास गर्नुहोस् । पूर्वनिर्धारित: false

प्रतिक्रिया

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
}

बोल्नलाई बोल्नुहोस्

POST /v1/speech-to-speech/

सामग्री राख्दा भाषण शैली, भावना, वा वितरण परिवर्तन गर्नुहोस् । टोन, पेसिङ र अभिव्यक्ति समायोजन गर्न उपयोगी ।

अनुरोध मुख्य भाग (multipart/form-data)

परिमितिप्रकारआवश्यकवर्णन:
file file हो स्रोत भाषण अडियो फाइल । अधिकतम ५० मेगाबाइट ।
voice string हो निर्गत भाषणका लागि लक्षित आवाज आईडी
model string होइन नमूना: openvoice (पूर्वनिर्धारित), chatterbox
emotion string होइन लक्षित भावना: neutral, happy, sad, angry, excited
speed float होइन गति समायोजन । पूर्वनिर्धारित: 1.0 । दायरा: 0.5 देखि 2.0 सम्म

प्रतिक्रिया

बाइनरी डेटाको रूपमा रूपान्तरित अडियो फाइल फर्काउँछ ।

अडियो उपकरणName

अडियो प्रोसेसिंग अन्त बिन्दुहरू बढावा, स्वर हटाउन, जरा विभाजन, र अधिक लागि।

POST /v1/audio/enhance/

अडियो गुणस्तर बढाउनुहोस्: denoise, स्पष्टता सुधार, सुपर रिजोल्युसन।

file fileबढाउनका लागि अडियो फाइल
denoise booleanध्वनि हटाउने सक्षम पार्नुहोस् (पूर्वनिर्धारित: ठीक)
enhance_clarity booleanभाषण स्पष्टता बढाउनुहोस् (पूर्वनिर्धारित: सही)
super_resolution booleanअडियो गुणस्तर बढाउनुहोस् (पूर्वनिर्धारित: गलत)
strength integer१-३ (लामो, मध्यम, सानो) । पूर्वनिर्धारित: २
POST /v1/audio/separate/

यसले वायुमण्डलमा रहेका हानिकारक तत्वहरू (विषाक्त पदार्थहरू)लाई बाहिर निकाल्छ।

file fileविभाजन गर्नका लागि अडियो फाइल
model stringdemucs (पूर्वनिर्धारित) वा spleeter
stems integerस्टेमहरूको सङ्ख्या: २, ४, ५, वा ६ (पूर्वनिर्धारित: २)
format stringनिर्गत ढाँचा: wav, mp3, flac
POST /v1/audio/dereverb/

अडियो रेकर्डिङबाट प्रतिध्वनि र प्रतिध्वनि हटाउनुहोस् ।

file fileप्रक्रिया गर्नका लागि अडियो फाइल
type stringecho or reverb (default: both)
intensity integer1-5 (default: 3)
POST /v1/audio/analyze/ स्वतन्त्र

कुञ्जी, 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"]
}
POST /v1/audio/convert/ स्वतन्त्र

ढाँचा बीच अडियो रूपान्तरण गर्नुहोस् ।

file fileरूपान्तरण गर्नका लागि अडियो फाइल
format stringलक्ष्य ढाँचा: mp3, wav, flac, ogg, m4a, aac
bitrate integerकेबीपीएसमा निर्गत बिटरेट: ६४, १२८, १९२, २५६, ३२०
sample_rate integerनमूना दर: 22050, 44100, 48000
channels stringmono वा stereo

आवाज कुराकानी

POST /v1/voice-chat/

अडियो वा पाठ पठाउनुहोस् र सिन्थेसाइज गरिएको भाषणसँग एआई प्रतिक्रिया प्राप्त गर्नुहोस्।

अनुरोध मुख्य भाग (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 होइन अवस्थित वार्तालाप जारी राख्नुहोस्

प्रतिक्रिया

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
}

TTS ब्याच

POST /v1/tts/batch/

समानान्तर TTS सिर्जनाका लागि बहुविध पाठहरू पेश गर्नुहोस् । सबै काम पूरा हुँदा वैकल्पिक रूपमा वेबहुक कलब्याक प्राप्त गर्नुहोस् ।

परिमिति

परिमितिप्रकार:वर्णन
textsarrayArray of objects: {text, model, voice}. Max 50 items.
webhook_urlstringOptional URL to POST results when batch completes.

प्रतिक्रिया

JSON प्रतिक्रिया
{
  "batch_id": "abc123",
  "total": 3,
  "completed": 0,
  "status": "processing"
}

GET /v1/tts/batch/result/?batch_id=abc123 संग जनमत प्रगति

आवाज सम्मिलन

POST /v1/voice-embed/

सन्दर्भ अडियोबाट एउटा आवाज सम्मिलन पूर्व-गणना गर्नुहोस् । निकट-तुरुन्तै सिर्जनाका लागि पछिल्लो आवाज क्लोनिङ अनुरोधमा फर्किएको embed_id प्रयोग गर्नुहोस् ।

परिमिति

परिमितिप्रकार:वर्णन
filefileReference audio file (WAV, MP3, FLAC).
modelstringCloning model (default: chatterbox). Supported: chatterbox, cosyvoice2, openvoice, gpt-sovits, spark, indextts2, qwen3-tts.

प्रतिक्रिया

JSON प्रतिक्रिया
{
  "embed_id": "emb_abc123",
  "model": "chatterbox",
  "duration_ms": 450
}

स्वास्थ्य जाँच

GET /v1/health/

GPU सर्भर स्थिति, लोड गरिएको नमूना, र लाम साइज जाँच गर्नुहोस् । प्रमाणीकरण आवश्यक छैन । ३० सेकेन्डका लागि क्यास गरिएको ।

प्रतिक्रिया

JSON प्रतिक्रिया
{
  "status": "online",
  "latency_ms": 45,
  "queue_size": 3,
  "models_loaded": ["kokoro", "chatterbox", "cosyvoice2"]
}

नमूना सूची

GET /v1/models/

तिनीहरूको क्षमतासँग सबै उपलब्ध नमूनाहरूको सूची फर्काउँछ ।

प्रतिक्रिया

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
    }
  ]
}

आवाजहरू सूचीबद्ध गर्नुहोस्

GET /v1/voices/

सबै उपलब्ध आवाजको सूची फर्काउँछ, वैकल्पिक रूपमा नमूना वा भाषाद्वारा फिल्टर गरिएको ।

क्वेरी परिमिति

परिमितिप्रकारवर्णन:
model string नमूना आईडीद्वारा फिल्टर गर्नुहोस् (जस्तै, kokoro)
language string भाषा कोडद्वारा फिल्टर गर्नुहोस् (जस्तै, en)
gender string लिङ्गद्वारा फिल्टर गर्नुहोस्: male, female, neutral

प्रतिक्रिया

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
}

सङ्केत उदाहरण

पाठ वाचकComment

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')}")

पाठमा भाषणName

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"])

आवाज क्लोनिङ

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)

पाठ वाचकComment

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();

पाठमा भाषणName

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);

पाठ वाचकComment

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

पाठमा भाषणName

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"

आवाज क्लोनिङ

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

अडियो सुधार

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

त्रुटि सङ्केत

सबै त्रुटिहरूसँग 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 पर्याप्त क्यारेक्टर छैन। / मूल्य / मा थप खरिद।
403 forbidden तपाईँको योजनामा एपीआई पहुँच उपलब्ध छैन ।
404 not_found नमूना वा आवाज फेला परेन ।
413 file_too_large अपलोड गरिएको फाइल साइज सीमा भन्दा बढी छ ।
429 rate_limited धेरै अनुरोध । दर सीमा हेडर जाँच गर्नुहोस् ।
500 internal_error सर्भर त्रुटि । पछि फेरि प्रयास गर्नुहोस् ।
503 model_loading नमूना लोड हुँदैछ । केही सेकेन्डमा पुन: प्रयास गर्नुहोस् ।

वेबहुक

लामो चलिरहेको कार्यहरूका लागि (स्टेम विभाजन, ब्याच TTS), तपाईँले webhook_url परिमिति प्रदान गर्न सक्नुहुन्छ । कार्य पूरा हुँदा, हामी तपाईँको यूआरएलमा परिणाम पोस्ट गर्नेछौं ।

वेबहुक पेलोड
{
  "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 एकीकृत सुरु.