API דאָקומענטאַציע

אַרײַנשרײַבן TTS.ai אין אייער פּראָגראַם מיט אונדזער REST API. OpenAI-קאָמפּאַטאַבעלע פֿאָרמאַטירונג פֿאַר אַ פּשוטע איבערזעצונג

REST API OpenAI צופֿרידנקייט JSON ענטפֿערס סטרימינג שטיצן

איבערזעצונג

די TTS.ai API גיט אַ פּראָגראַממאַטישע צוטריט צו אַלע פּלאַטפאָרמע־פֿעיִקייטן: טעקסט־צו־ספּראַך־סינטעז, שפּראַך־צו־ספּראַך־אַרײַנשרײַבונג, שפּראַך־קלאָנינג, אודיו־פֿאַרבעסערן, און מער. די API ניצט סטאַנדאַרד REST קאָנווענציעס מיט JSON פֿראַגע/ענטפֿער־גוףס.

API שריפֿטצײכן

קלײַב אַלץ אױס אױסגלײַכונג. אינטערנעץ און אינטערנאַציאָנאַלע באַציִונגען.

באַזע URL

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

איבער־פֿאַרקער

באַװעגער־טוקען דורך Authorization קאָפּצעטל

באַשטעטיקונג

אַלע API־פֿאַרבינדונגען דאַרפן אױטענטיפֿאַקאַציע װײַזנדיק אַ װײַזער־טוקען אין דעם Authorization קאָפּצעטל.

HTTP קאָפּצעטל
Authorization: Bearer sk-tts-your-api-key-here
היט אױף דײַן API־שריפֿט ניט צעשײדן אין קליענט־סײַט־קאָד, װעלטלעכע סטאָרידזשן, אָדער לאָגס. װײַז קײן קנעפּל אױף אױס װידער און אױס אױף װײַז

באַזע URL

באַזע URL: https://api.tts.ai/v1/

אַלע סוף־פּונקטן זײַנען רעלאַטיוו צו דעם באזע־URL. למשל, דער TTS סוף־פּונקט איז:

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

שריפֿט גרײס

API צאָלונג גבולות װײַזן זיך אױף דעם פּלאָן:

שריפֿט גרײס פֿראַגעס/מינוט װידער גרעסטע טעקסט לענג
פּראָפֿעסיאָנאַל 60 5 שריפֿטצײכן
פֿירמע 300 20 שריפֿטצײכן

קאָפּצעטל־פֿאַרבינדונגען זײַנען צוגעלייגט אין יעדער ענטפער: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset.

קלײַב אַלץ אױס

באַדינונג קאָסטן אײנס
TTS (פֿרייַע מאָדעלן: Piper, VITS, MeloTTS) 1 קרעדיט יעדער 1,000 שריפֿטצײכן
TTS (סטאַנדאַרד מאָדעלס: Kokoro, CosyVoice 2, אאז״ו ו) 2 קרעדיטס יעדער 1,000 שריפֿטצײכן
TTS (Premium מאָדעלס: Tortoise, Chatterbox, אאז״ו ו) 4 קרעדיץ יעדער 1,000 שריפֿטצײכן
טעקסט פֿאַרבtext-tool-action 2 קרעדיטס אױף אַ מינוט פֿון אַודיאָ
שריפֿט גרײס 4 קרעדיץ יעדער 1,000 שריפֿטצײכן
שפּראַך־װײַזער 3 קרעדיטס אױף אַ מינוט פֿון אַודיאָ
אויטאָמאַטישע איבערזעצונג 2 קרעדיטס אױף אַ מינוט פֿון אַודיאָ
טעקסט פֿאַרבvector-mode 3־4 נקודות אױף אַ מינוט פֿון אַודיאָ
איבערזעצונג 5 קרעדיץ אױף אַ מינוט פֿון אַודיאָ
שריפֿטצײכן 3 קרעדיטס איבער־פֿאַרקער
טעקסט פֿאַרבkeyboard label פֿרײַ --
אוודיאָ קאָנווערטער פֿרײַ --

טעקסט צו שפּראַך

POST /v1/tts/

פֿאָרױסװײַז פֿאָרמאַטירונג

פֿראַגע־קאָפּ

פּאַראַמעטערסטיפּ:נייטיקבאַשרײַבונג
model string יאָ מאָדעל ID (ד.ה. <קאָד>kokoro, <קאָד>chatterbox, <קאָד>piper)
text string יאָ טעקסט צו איבערזעצן צו שפּראַך (מאַקסימום 5,000 שריפֿטצײכן פֿאַר Pro, 50,000 פֿאַר Enterprise)
voice string יאָ שפּראַך־אידענטיטעט (נוצט <קאָד>/v1/voices/ צו אַרײַנשטעלן אַ רשימה פֿון בנימצאע שפּראַכן)
format string ניט אױסגאַבע־פֿאָרמאַטירונג: mp3 (געװײנטלעכער), wav, flac, ogg
speed float ניט שפּראַך־גײט־מעגלעכקײט. געװײנטלעכער: <קאָד>1.0. אָפּרוקונג: <קאָד>0.5 ביז <קאָד>2.0
language string ניט שפּראַך־קאָד (ד.ה. <קאָד>en, <קאָד>es). אויטאָמאַטיש געפֿונען אױב ניט אַרײַנגעלייגט
stream boolean ניט דערמעגלעך סטרימ־ענטפֿער. געװײנטלעכער: <קאָד>פֿאַלש

װײַז בילדל

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

טעקסט פֿאַרבtext-tool-action

POST /v1/stt/

איבערשרײַבן אַודיאָ צו טעקסט. שטיצט 99 שפּראַכן מיט אויטאָמאַטישע דערקענונג

פֿראַגע־קאָפּ (multipart/form-data)

פּאַראַמעטערסטיפּ:נייטיקבאַשרײַבונג
file file יאָ אוודיאָ טעקע (MP3, WAV, FLAC, OGG, M4A, MP4, WebM). מאַקסימום 100 מעגאבייטן
model string ניט STT מאָדעל: <קאָד>פֿישפּער (געװײנטלעכער), <קאָד>פֿאַרגיכערט־פֿישפּער, <קאָד>סײַנסװאָס
language string ניט שפּראַך־קאָד. אויטאָמאַטיש פֿאַר אויטאָמאַטישע דערקענונג (געװײנטלעכער)
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 סעקונדעס רעקאַמענדירט). מאַקסימום 20 מעגאבייטן
text string יאָ טעקסט צו רעדן אין דער קלאָנירטער שפּראַך
model string ניט קלאָן מאָדעל: <קאָד>chatterbox (געװײנטלעכער), <קאָד>cosyvoice2, <קאָד>gpt-sovits
format string ניט אױסגאַבע־פֿאָרמאַטירונג: mp3 (געװײנטלעכער), wav, flac
language string ניט ציל־שפּראַך־קאָד. מוז זײַן געשטיצט פֿון דעם אויסגעקליבן מאָדעל

ענטפֿער

װײַזט די אוודיאָ טעקע װי בינעאַרישע דאַטן, די זעלבע װי דער TTS סוף־פּונקט

שפּראַך־װײַזער

POST /v1/voice-convert/

קלײַב אַלץ אױסselect-action

פֿראַגע־קאָפּ (multipart/form-data)

פּאַראַמעטערסטיפּ:נייטיקבאַשרײַבונג
file file יאָ מקור אוודיאָ טעקע (MP3, WAV, FLAC). מאַקסימום 50 מעגאבייטן
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 יאָ מקור־אויערטעקע אין דער אָריגינעלער שפּראַך. מאַקסימום 100 מג
target_language string יאָ ציל־שפּראַך־קאָד (ד.ה. es, fr, de, ja)
voice string ניט שפּראַך פֿאַר איבערגעזעצט אַרײַנשרײַב. אויטאָמאַטיש אויסגעקליבן אױב ניט
preserve_voice boolean ניט פֿאָרױסװײַז־װײַזער

ענטפֿער

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 יאָ מקור־ספּראַך־אודיוטעקע. מאַקסימום 50 מעגאבייטן
voice string יאָ װיפֿל מאָל װעט די װײַזער װײַזן די װײַזונג?
model string ניט מאָדעל: openvoice (געװײנטלעכער), chatterbox
emotion string ניט ציל־עמאָציע: נייטראַל, געזעלטיק, צופֿרידן, צופֿרידן, צופֿרידן
speed float ניט גיכקייט־צופּאַסונג. געװײנטלעכער: 1.0. אָפּרוקונג: 0.5 ביז 2.0

ענטפֿער

װײַז די טראַנספֿאָרמירטע אודיו־טעקע װי בײַנאַרישע דאַטן

אוודיאָ־אַרײַנשרײַב

אודיו־פּראָצעסירונג סוף־פּונקטן פֿאַר פֿאַרבעסערן, שפּראַך־אַרײַנשרײַבן, װײַסװײַז־אָפּטיילונג, און מער

POST /v1/audio/enhance/

קלײַב אַלץ אױסselect-criterion

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/

קלײַב אַלץ אױסselect-action

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אַרײַנשרײַב בילדצעלן אין kbps: 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 ניט* אוודיאָ אַרײַנשרײַב (אָדער <קאָד>אוודיאָ אָדער <קאָד>טעקסט נייטיק)
text string ניט* טעקסט אַרײַנשרײַב (אָדער <קאָד>אודיו אָדער <קאָד>טעקסט נייטיק)
voice string ניט שפּראַך פֿאַר AI ענטפֿער. געװײנטלעכער: af_bella
tts_model string ניט TTS מאָדעל פֿאַר ענטפֿער. געװײנטלעכער: kokoro
system_prompt string ניט אױסגלײַכונג פֿון טעקע
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
}

לײענען מאָדעלס

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

קלײַב אַלץ אױסundo-type

GET /v1/voices/

װײַזט אַ רשימה פֿון אַלע בנימצאע שפּראַכן, אױסגעפילטערט לויט מאָדעל אָדער שפּראַך

פֿראַגע פּאַראַמעטערס

פּאַראַמעטערסטיפּ:באַשרײַבונג
model string פֿילטער לויט מאָדעל ID (ד.ה. <קאָד>קאָקאָראָ)
language string פֿילטער לויט שפּראַך־קאָד (ד.ה. en)
gender string פֿילטער לויט מין: מאַן, װײַב, נייטראַל

ענטפֿער

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
}

קאָד אַרײַנשרײַב

טעקסט צו שפּראַך

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

טעקסט פֿאַרבtext-tool-action

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)

טעקסט צו שפּראַך

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

טעקסט פֿאַרבtext-tool-action

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

טעקסט צו שפּראַך

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

טעקסט פֿאַרבtext-tool-action

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 credits for this request.",
    "credits_required": 4,
    "credits_available": 2
  }
}
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 מאָדעל אַרײַנשטעלן. פּרובירן אױך אין אַ פּאָר סעקונדעס

טעקסט פֿאַרבtext-tool-action

פֿאַר לאַנג־לײַטנדיקע אַרבעטן (סטאַם צעשײדונג, באַטש TTS), קענט איר געבן אַ webhook_url פּאַראַמעטער. ווען די אַרבעט איז ענדיקט, װעלן מיר פּאָסטן דעם רעזולטאט צו אייער URL

טעקסט פֿאַרבtext-tool-action
{
  "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 שעה אױף דעם ענדיקן. זײַט זיכער צו אָפּלאָדן זיי באַלד

קלײַב אַלץ אױס

אַרײַנשטעלן TTS.ai אין אייער פּראָגראַם