Kling TTS
یکپارچهسازی
kling-video/v1/tts
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.com/v1/run/kling-video/v1/tts?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"text": "Hello from Doitong. This is a short test sentence."
}'
# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.com/v1/requests/REQUEST_ID?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY"
const API = "https://api.doitong.com/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/kling-video/v1/tts?wait=20", {
method: "POST",
headers,
body: JSON.stringify({
"text": "Hello from Doitong. This is a short test sentence."
}),
});
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.com/v1"
headers = {"Authorization": "Bearer " + os.environ["DOITONG_API_KEY"]}
payload = {
"text": "Hello from Doitong. This is a short test sentence.",
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/kling-video/v1/tts", 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/fa/developers/docs/mcp)
claude mcp add --transport http doitong-models https://api.doitong.com/v1/mcp \
--header "Authorization: Bearer $DOITONG_API_KEY"
# 2. Your agent calls the "run" tool with:
{
"model_id": "kling-video/v1/tts",
"input": {
"text": "Hello from Doitong. This is a short test sentence."
}
}
مدل Kling TTS (kling-video/v1/tts) را از طریق Doitong API فراخوانی کنید. مستندات عاملها: https://doitong.com/fa/developers/models/kling-video/v1/tts.md
POST https://api.doitong.com/v1/run/kling-video/v1/tts?wait=20
Authorization: Bearer $DOITONG_API_KEY
Content-Type: application/json
{
"text": "Hello from Doitong. This is a short test sentence."
}
اگر وضعیت پاسخ "queued" یا "running" است، GET https://api.doitong.com/v1/requests/REQUEST_ID?wait=20 را تا زمانی که وضعیت "succeeded" شود بهطور دورهای فراخوانی کنید؛ فایلها در outputs[].url قرار دارند. ارسال POST https://api.doitong.com/v1/quote/kling-video/v1/tts با همان بدنه، قیمت دقیق را پیش از اجرا برمیگرداند.
این درخواست: $۰٫۰۰۷ ۷ اعتبار API اجرای آن در این صفحه
کلید API جدید شما. این کلید فقط همین حالا نمایش داده میشود و از قبل در کد و فیلد کلید API زیر قرار گرفته است. آن را محرمانه نگه دارید: هرگز آن را در کدی که در مرورگر اجرا میشود قرار ندهید.
ساختهشده در Doitong
آثار عمومی ساختهشده با Kling Avatar توسط جامعه Doitong. یک پرامپت را با یک کلیک دوباره استفاده کنید.
ویدیو
A realistic young Caucasian-looking woman wearing a modest hijab is walking through a modern city street. She is speaking naturally (audio will be added separately) and expressing admiration and pr...
ویدیو
A realistic young Caucasian-looking woman in a modest hijab is walking calmly through the modern city of Grozny. The architecture around her is clean, modern, and impressive, with Dubai-style build...
ساخت درخواست
کنترلها از شِمای مدل تولید میشوند. با تغییر آنها، کد و قیمت بهروزرسانی میشوند.
/run/kling-video/v1/tts?wait=20
قیمت → $۰٫۰۰۷
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.com/v1/run/kling-video/v1/tts?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"text": "Hello from Doitong. This is a short test sentence."
}'
# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.com/v1/requests/REQUEST_ID?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY"
const API = "https://api.doitong.com/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/kling-video/v1/tts?wait=20", {
method: "POST",
headers,
body: JSON.stringify({
"text": "Hello from Doitong. This is a short test sentence."
}),
});
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.com/v1"
headers = {"Authorization": "Bearer " + os.environ["DOITONG_API_KEY"]}
payload = {
"text": "Hello from Doitong. This is a short test sentence.",
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/kling-video/v1/tts", 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": "kling-video/v1/tts",
"input": {
"text": "Hello from Doitong. This is a short test sentence."
},
"wait_seconds": 20
}
}
}
اجرای این درخواست
کلید شما در این مرورگر باقی میماند: فقط به Doitong API ارسال میشود و فقط در صورت فعالکردن گزینه «یادآوری»، در localStorage ذخیره میشود. دریافت کلید API
درباره Kling TTS
`text` حداکثر 500 نویسه را به گفتار تبدیل میکند. `voice_id` را از فهرست مجاز 46 صدا انتخاب کنید؛ مقدار پیشفرض genshin_vindi2 است. `voice_speed` از 0.8 تا 2 و مقدار پیشفرض آن 1 است. خروجی یک شیء صوتی است.
پارامترها
enable_safety_checkerاختیاری
textالزامی
voice_idاختیاری
+30 مورد دیگر
ai_huangzhong_712ai_huangyaoshi_712ai_laoguowang_712chengshu_jiejieyou_pingjingcalm_story1uk_man2laopopo_speech02heainainai_speech02reader_en_m-v1commercial_lady_en_f-v1tiyuxi_xueditiexin_nanyougirlfriend_1_speech02girlfriend_2_speech02zhuxi_speech02uk_oldman3dongbeilaotie_speech02chongqingxiaohuo_speech02chuanmeizi_speech02chaoshandashu_speech02ai_taiwan_man2_speech02xianzhanggui_speech02tianjinjiejie_speech02diyinnansang_DB_CN_M_04-v2yizhipiannan-v1guanxiaofang-v2tianmeixuemei-v1daopianyansang-v1mengwa-v1voice_speedاختیاری
خروجی
{
"id": "req_8k2m4q7x1z9c3v5b6n0p2r4t",
"object": "request",
"model": "kling-video/v1/tts",
"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": 7,
"usd": "0.007",
"charged": 7,
"refunded": 0
},
"input": {
"text": "Hello from Doitong. This is a short test sentence."
},
"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
}
},
"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.com/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t",
"cancel": "https://api.doitong.com/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t/cancel"
}
}
فیلدهای خروجی
- audio
- object {url, content_type, file_name, file_size}صوت تولیدشده توسط مدل.
گونههای دیگر Kling Avatar
مدلهای بیشتر: متن به گفتار
برای عاملهای هوش مصنوعی: این صفحه بهصورت Markdown در دسترس است https://doitong.com/fa/developers/models/kling-video/v1/tts.md. همه مدلها و راهنماها: https://doitong.com/developers/llms.txt