Eleven v4 Text to Speech
Integrieren
elevenlabs/tts/eleven-v4
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.ru/v1/run/elevenlabs/tts/eleven-v4?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"text": "[whispers] Okay, everyone, gather close. [excited] The bread is finally out of the oven. [laughs] Fine, fine, one slice each, but only if you promise to save one for me."
}'
# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.ru/v1/requests/REQUEST_ID?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY"
const API = "https://api.doitong.ru/v1";
const headers = {
"Authorization": "Bearer " + process.env.DOITONG_API_KEY,
"Content-Type": "application/json",
};
// Run the model; wait up to 20 s for the finished result in the same call
let res = await fetch(API + "/run/elevenlabs/tts/eleven-v4?wait=20", {
method: "POST",
headers,
body: JSON.stringify({
"text": "[whispers] Okay, everyone, gather close. [excited] The bread is finally out of the oven. [laughs] Fine, fine, one slice each, but only if you promise to save one for me."
}),
});
let request = await res.json();
if (!res.ok) throw new Error(request.error.code + ": " + request.error.message);
// Not finished yet: long-poll until it is
while (request.status === "queued" || request.status === "running") {
res = await fetch(API + "/requests/" + request.id + "?wait=20", { headers });
request = await res.json();
}
if (request.status !== "succeeded") throw new Error(JSON.stringify(request.error));
console.log(request.outputs.map((o) => o.url), request.cost.credits + " API credits ($" + request.cost.usd + ")");
import os
import requests
API = "https://api.doitong.ru/v1"
headers = {"Authorization": "Bearer " + os.environ["DOITONG_API_KEY"]}
payload = {
"text": "[whispers] Okay, everyone, gather close. [excited] The bread is finally out of the oven. [laughs] Fine, fine, one slice each, but only if you promise to save one for me.",
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/elevenlabs/tts/eleven-v4", params={"wait": 20}, json=payload, headers=headers)
request = r.json()
if not r.ok:
raise RuntimeError(request["error"]["code"] + ": " + request["error"]["message"])
# Not finished yet: long-poll until it is
while request["status"] in ("queued", "running"):
request = requests.get(API + "/requests/" + request["id"], params={"wait": 20}, headers=headers).json()
if request["status"] != "succeeded":
raise RuntimeError(request["error"])
print([o["url"] for o in request["outputs"]], request["cost"]["credits"], "API credits", "$" + request["cost"]["usd"])
# 1. Connect once (Claude Code; Cursor, VS Code, Claude Desktop: https://doitong.com/de/developers/docs/mcp)
claude mcp add --transport http doitong-models https://api.doitong.ru/v1/mcp \
--header "Authorization: Bearer $DOITONG_API_KEY"
# 2. Your agent calls the "run" tool with:
{
"model_id": "elevenlabs/tts/eleven-v4",
"input": {
"text": "[whispers] Okay, everyone, gather close. [excited] The bread is finally out of the oven. [laughs] Fine, fine, one slice each, but only if you promise to save one for me."
}
}
Rufe das Modell Eleven v4 Text to Speech (elevenlabs/tts/eleven-v4) über die Doitong API auf. Dokumentation für Agenten: https://doitong.com/de/developers/models/elevenlabs/tts/eleven-v4.md
POST https://api.doitong.ru/v1/run/elevenlabs/tts/eleven-v4?wait=20
Authorization: Bearer $DOITONG_API_KEY
Content-Type: application/json
{
"text": "[whispers] Okay, everyone, gather close. [excited] The bread is finally out of the oven. [laughs] Fine, fine, one slice each, but only if you promise to save one for me."
}
Wenn der Antwortstatus "queued" oder "running" lautet, frage GET https://api.doitong.ru/v1/requests/REQUEST_ID?wait=20 ab, bis er "succeeded" lautet; die Dateien befinden sich in outputs[].url. POST https://api.doitong.ru/v1/quote/elevenlabs/tts/eleven-v4 mit demselben Body gibt den exakten Preis vor der Ausführung zurück.
Diese Anfrage: 0,014 $ 14 API-Credits · ≈ 1,51 ₽ Auf dieser Seite ausführen
Dein neuer API-Schlüssel. Sie wird nur jetzt angezeigt und befindet sich bereits im Code und im untenstehenden API-Schlüssel-Feld. Halten Sie sie geheim: Fügen Sie sie niemals in Code ein, der in einem Browser ausgeführt wird.
Beispiele
Anfrage erstellen
Die Steuerelemente werden aus dem Modellschema generiert. Code und Preis werden aktualisiert, während du sie änderst.
/run/elevenlabs/tts/eleven-v4?wait=20
Preis → 0,014 $
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.ru/v1/run/elevenlabs/tts/eleven-v4?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"text": "[whispers] Okay, everyone, gather close. [excited] The bread is finally out of the oven. [laughs] Fine, fine, one slice each, but only if you promise to save one for me."
}'
# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.ru/v1/requests/REQUEST_ID?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY"
const API = "https://api.doitong.ru/v1";
const headers = {
"Authorization": "Bearer " + process.env.DOITONG_API_KEY,
"Content-Type": "application/json",
};
// Run the model; wait up to 20 s for the finished result in the same call
let res = await fetch(API + "/run/elevenlabs/tts/eleven-v4?wait=20", {
method: "POST",
headers,
body: JSON.stringify({
"text": "[whispers] Okay, everyone, gather close. [excited] The bread is finally out of the oven. [laughs] Fine, fine, one slice each, but only if you promise to save one for me."
}),
});
let request = await res.json();
if (!res.ok) throw new Error(request.error.code + ": " + request.error.message);
// Not finished yet: long-poll until it is
while (request.status === "queued" || request.status === "running") {
res = await fetch(API + "/requests/" + request.id + "?wait=20", { headers });
request = await res.json();
}
if (request.status !== "succeeded") throw new Error(JSON.stringify(request.error));
console.log(request.outputs.map((o) => o.url), request.cost.credits + " API credits ($" + request.cost.usd + ")");
import os
import requests
API = "https://api.doitong.ru/v1"
headers = {"Authorization": "Bearer " + os.environ["DOITONG_API_KEY"]}
payload = {
"text": "[whispers] Okay, everyone, gather close. [excited] The bread is finally out of the oven. [laughs] Fine, fine, one slice each, but only if you promise to save one for me.",
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/elevenlabs/tts/eleven-v4", params={"wait": 20}, json=payload, headers=headers)
request = r.json()
if not r.ok:
raise RuntimeError(request["error"]["code"] + ": " + request["error"]["message"])
# Not finished yet: long-poll until it is
while request["status"] in ("queued", "running"):
request = requests.get(API + "/requests/" + request["id"], params={"wait": 20}, headers=headers).json()
if request["status"] != "succeeded":
raise RuntimeError(request["error"])
print([o["url"] for o in request["outputs"]], request["cost"]["credits"], "API credits", "$" + request["cost"]["usd"])
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "run",
"arguments": {
"model_id": "elevenlabs/tts/eleven-v4",
"input": {
"text": "[whispers] Okay, everyone, gather close. [excited] The bread is finally out of the oven. [laughs] Fine, fine, one slice each, but only if you promise to save one for me."
},
"wait_seconds": 20
}
}
}
Diese Anfrage ausführen
Dein Schlüssel bleibt in diesem Browser: Er wird nur an die Doitong API gesendet und nur gespeichert (localStorage), wenn du „Merken“ aktivierst. API-Schlüssel abrufen
Über Eleven v4 Text to Speech
Eleven v4 liest Text mit natürlichen, emotionalen Stimmen vor und versteht Inline-Audio-Tags wie [excited] oder [whispering] sowie IPA-Aussprache. Wähle eine Stimme, passe Stabilität und Ähnlichkeit an, setze die Sprache und fordere optional Zeitstempel auf Wortebene an. MP3-, PCM-, Opus- und Telefonieformate.
Parameter
texterforderlich
voiceoptional
stabilityoptional
similarity_boostoptional
seedoptional
language_codeoptional
output_formatoptional
+3 weitere
opus_48000_96opus_48000_128opus_48000_192apply_text_normalizationoptional
timestampsoptional
Ausgabe
{
"id": "req_8k2m4q7x1z9c3v5b6n0p2r4t",
"object": "request",
"model": "elevenlabs/tts/eleven-v4",
"status": "succeeded",
"created_at": "2026-10-20T12:00:00Z",
"started_at": "2026-10-20T12:00:02Z",
"completed_at": "2026-10-20T12:00:09Z",
"queue_position": null,
"cost": {
"credits": 14,
"usd": "0.014",
"charged": 14,
"refunded": 0
},
"input": {
"text": "[excited] Hello! Welcome to the future of voice.",
"voice": "Aria"
},
"output": {
"audio": {
"url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.mp3",
"content_type": "audio/mpeg",
"file_name": "0-output.mp3",
"file_size": 1843200
},
"timestamps": []
},
"outputs": [
{
"type": "audio",
"url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.mp3",
"content_type": "audio/mpeg",
"file_size": 1843200,
"duration": 12,
"stored": true
}
],
"error": null,
"metrics": {
"inference_seconds": 6.8
},
"urls": {
"self": "https://api.doitong.ru/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t",
"cancel": "https://api.doitong.ru/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t/cancel"
}
}
Ausgabefelder
- audio
- object {url, content_type, file_name, file_size}Durch die Generierung erzeugte Audiodatei.
- timestamps
- array of any | nullZeitdaten der generierten Sprache, nur bei Anfragen mit `timestamps` auf True enthalten, mit einem Zeitstempel für jedes Wort.
Weitere ElevenLabs v4-Varianten
Weitere Modelle: Text zu Sprache
Für KI-Agenten: Diese Seite ist als Markdown verfügbar unter https://doitong.com/de/developers/models/elevenlabs/tts/eleven-v4.md. Alle Modelle und Anleitungen: https://doitong.com/developers/llms.txt