API ලේඛන

අපගේ REST API සමඟ ඔබේ යෙදුම් වලට TTS.ai ඒකාබද්ධ කරන්න. පහසු සංක්රමණය සඳහා OpenAI අනුකූල ආකෘතිය.

REST API OpenAI අනුකූල JSON ප්රතිචාර විකාශන සහාය

දර්ශකය

TTS.ai API සියලු වේදිකාවේ විශේෂාංග සඳහා වැඩසටහන්ගත ප්රවේශයක් සපයයි: පෙළ-කතා සංස්ලේෂණය, කථා-පෙළ පරිවර්තනය, හඬ ක්ලෝන, ශ්රව්ය වැඩිදියුණු කිරීම, සහ තවත්. API JSON ඉල්ලීම / ප්රතිචාර ශරීර සමඟ සම්මත REST සම්මුති භාවිතා කරයි.

API යතුර

ඔබගේ API යතුර ලබා ගන්න ගිණුම් සැකසුම්. Pro සහ Enterprise සැලසුම් මත ලබා ගත හැක.

මූලික URL

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

අවසරදීම

දරන්නා ටෝකනය හරහා Authorization ශීර්ෂකය

අවසරදීම

සියලු API ඉල්ලීම් තුළ දරන්නා ටොකන් හරහා සහතික කිරීම අවශ්ය Authorization ශීර්ෂකය.

HTTP ශීර්ෂකය
Authorization: Bearer sk-tts-your-api-key-here
ඔබේ API යතුර රහසක් ලෙස තබා ගන්න. සේවාදායකයා-පැත්තේ කේතය එය හුවමාරු කරන්න එපා, පොදු කෞතුකාගාර, හෝ ලඝු-සටහන්. ඔබේ ගිණුම සැකසුම් සිට නිතිපතා යතුරු භ්රමණය.

SDKs

නිල 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")
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

මූලික URL

මූලික URL: https://api.tts.ai/v1/

සියලු අවසන් ස්ථානයන් මෙම මූලික URL ලිපිනයට සාපේක්ෂ වේ. උදාහරණයක් ලෙස, TTS අවසන් ස්ථානය:

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

අනුපාත සීමා

API අනුපාත සීමා සැලැස්ම අනුව වෙනස් වේ:

සැලැස්ම ඉල්ලීම් / මිනි සමාන්තර උපරිම පෙළ දිග
නිදහස් 10 2 අකුරු 500
ආරම්භකයා 30 3 අකුරු 100,000
ප්‍රො 60 5 අකුරු 100,000
එන්ටර්ප්‍රයිස් 300 20 අකුරු 50,000

අනුපාතය සීමා ශීර්ෂ සෑම ප්රතිචාරයක් ඇතුළත් වේ: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset.

ණය පිරිවැය

සේවාව පිරිවැය ඒකකය
TTS (නිදහස් ආකෘති: Piper, VITS, MeloTTS) අකුරු 1,000 අකුරු 1,000 කට
TTS (සම්මත ආකෘති: Kokoro, CosyVoice 2, ආදිය) අකුරු 2,000 අකුරු 1,000 කට
TTS (විකල්ප ආකෘති: කටුස්සන්, Chatterbox, ආදිය) අකුරු 4,000 අකුරු 1,000 කට
කථාව පෙළටName අකුරු 2,000 මිනිත්තුවට ශ්‍රව්‍ය
හඬ ක්ලෝන කිරීම අකුරු 4,000 අකුරු 1,000 කට
හඬ වෙනස් කරන්නName 3 ණය මිනිත්තුවට ශ්‍රව්‍ය
ශ්‍රව්‍ය වැඩිදියුණු කිරීම අකුරු 2,000 මිනිත්තුවට ශ්‍රව්‍ය
ශ්රව්ය ඉවත් කිරීම / ශාක බෙදීම අකුරු 3,000-4,000 මිනිත්තුවට ශ්‍රව්‍ය
කථා පරිවර්තනයName අකුරු 5,000 මිනිත්තුවට ශ්‍රව්‍ය
හඬ සංවාදය 3 ණය වරකට
යතුරු සහ BPM සොයන්නා නිදහස් --
ශ්‍රව්‍ය පරිවර්තකය නිදහස් --

පෙළ සිට කථාවName

POST /v1/tts/

පෙළ කටහඬ ශ්‍රව්‍ය බවට පරිවර්තනය කරන්න. ඉල්ලා ඇති සංයුතියේ ශ්‍රව්‍ය ගොනුව ආපසු ලබාදේ.

ඉල්ලුම් ශරීරය

පරාමිතීන්වර්ගයඅවශ්යවිස්තරය
model string ඔව් ආකෘති අංකය (උදා. kokoro, chatterbox, piper)
text string ඔව් කථාව බවට පරිවර්තනය කිරීමට පෙළ (අවශ්යතාවයකට උපරිම 100,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
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/

පෙළට ශ්රව්ය පරිවර්තනය. ස්වයංක්රීය අනාවරණය සමග 99 භාෂා සහාය.

ඉල්ලුම් ශරීරය (multipart/form-data)

පරාමිතීන්වර්ගයඅවශ්යවිස්තරය
file file ඔව් ශ්රව්ය ගොනුව (MP3, WAV, FLAC, OGG, M4A, MP4, WebM). මැක්ස් 100MB.
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 ඔව් උපුටා හඬ ශ්රව්ය (10-30 තත්පර නිර්දේශ). මැක්ස් 20MB.
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). මැක්ස් 50MB.
target_voice string ඔව් පරිවර්තනය කිරීමට ඉලක්ක හඬ ID (පවතින හඬ ලැයිස්තුගත කිරීමට /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

ප්‍රතිචාරය

පරිවර්තනය කල ශ්‍රව්‍ය ගොනුව ද්විමය දත්ත ලෙස ආපසු ලබාදේ.

කථා පරිවර්තනයName

POST /v1/speech-translate/

එක් භාෂාවකින් තවත් කතා ශ්රව්ය පරිවර්තනය. එක් ඇමතුමක් දී, පෙළ-කතා, පරිවර්තනය, සහ පෙළ-කතා ඒකාබද්ධ.

ඉල්ලුම් ශරීරය (multipart/form-data)

පරාමිතීන්වර්ගයඅවශ්යවිස්තරය
file file ඔව් මූලික භාෂාවෙන් මූලාශ්රය ශ්රව්ය ගොනුව. මැක්ස් 100MB.
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
}

කථාවෙන් කථාවName

POST /v1/speech-to-speech/

භාෂා ශෛලිය පරිවර්තනය, හැඟීම්, අන්තර්ගතය තබා ගැනීමේදී හෝ බෙදා හැරීම. කටහඬ වෙනස් කිරීම සඳහා ප්රයෝජනවත්, pacing, හා expressionness.

ඉල්ලුම් ශරීරය (multipart/form-data)

පරාමිතීන්වර්ගයඅවශ්යවිස්තරය
file file ඔව් මූල කථාව ශ්‍රව්‍ය ගොනුව. උපරිම 50MB.
voice string ඔව් ප්‍රථිදානය සඳහා ඉලක්ක හඬ ID
model string නෑ ආකෘතිය: openvoice (පෙරනිමි), chatterbox
emotion string නෑ ඉලක්ක හැඟීම: සමතුලිත, සතුටින්, සතුටින්, කෝපයෙන්, සතුටින්
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 integer1-3 (ආලෝකය, මධ්යම, ශක්තිමත්). පෙරනිමි: 2
POST /v1/audio/separate/

ද්විත්ව ස්ථර (ද්විත්ව ස්ථර) හෝ ද්විත්ව ස්ථර ද්විත්ව ස්ථර ලෙසද හැඳින්වේ.

file fileවෙන් කළ යුතු ශ්‍රව්‍ය ගොනුව
model stringdemucs (පෙරනිමිය) හෝ spleeter
stems integerශාක අංකය: 2, 4, 5, හෝ6(පෙරනිමි: 2)
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 integerkbps හි ප්‍රථිදාන බිට් අනුපාතය: 64, 128, 192, 256, 320
sample_rate integerසාම්පල අනුපාතය: 22050, 44100, 48000
channels stringmono හෝ stereo

හඬ සංවාදය

POST /v1/voice-chat/

ශ්රව්ය හෝ පෙළ යැවීමට හා සංස්ලේෂණය කථාව සමග 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 නෑ පවතින සංවාදයක් දිගටම කරගෙන යන්න

ප්‍රතිචාරය

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 ජනනය සඳහා බහු පෙළ ඉදිරිපත්. සියලු වැඩ අවසන් වූ විට webhook callback ලබා ගැනීමට විකල්ප.

පරාමිතීන්

පරාමිතීන්වර්ගයවිස්තරය
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/

උපුටා ගැනීම් ශ්රව්ය සිට හඬ embedding පෙර-ගණනය. ආසන්න ක්ෂණික ජනනය සඳහා පසු හඬ ක්ලෝන ඉල්ලීම් තුළ ආපසු 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 සේවාදායක තත්වය, පූර්ණය කළ ආකෘති, සහ පෝලිම් ප්‍රමාණය පරීක්ෂා කරන්න. තහවුරු කිරීමක් අවශ්ය නොවේ. තත්පර 30 ක් සඳහා කැච් කර ඇත.

ප්‍රතිචාරය

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 ආකෘති ID මගින් පෙරහන් කරන්න (උදා. 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
}

කේත උදාහරණ

පෙළ සිට කථාවName

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)

පෙළ සිට කථාවName

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

පෙළ සිට කථාවName

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 API ප්රවේශය ඔබේ සැලැස්ම මත ලබා ගත නොහැකි.
404 not_found ආකෘතිය හෝ හඬ හමු නොවිනි.
413 file_too_large ගොනුව උඩුගත කිරීම සඳහා අවසර නැත.
429 rate_limited ඉල්ලීම් බොහෝය. අනුපාත සීමා ශීර්ෂක පරීක්ෂා කරන්න.
500 internal_error සේවාදායක දෝෂය. පසුව උත්සාහ කරන්න.
503 model_loading ආකෘතිය පූරණය වෙමින් පවතී. තත්පර කිහිපයකින් නැවත උත්සාහ කරන්න.

වෙබ්හූක්ස්

දිගු ධාවනය කාර්යයන් සඳහා (කඳ බෙදීම, කණ්ඩායම් TTS), ඔබ webhook_url පරාමිතියක් ලබා දිය හැකිය. කාර්යය අවසන් වූ විට, අපි ඔබේ 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"
}
Webhook ප්රතිඵල සඳහා බාගත ලබා ගත හැක 24 සම්පූර්ණයෙන් පසු පැය. වහාම ඔවුන් බාගත කිරීමට වග බලා ගන්න.

හදන්න ලෑස්තිද?

ඔබේ API යතුර ලබා ගන්න සහ ඔබේ අයදුම්පත් බවට ඒකාබද්ධ ආරම්භ TTS.ai.