MiniMax Speech 2.8 HD
ᠵᡠᠸᡝᠪᡠᠮᠪᡳ
minimax/speech-2.8-hd
# 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/minimax/speech-2.8-hd?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "Welcome aboard. Tonight we cruise along the northern coast, where the lighthouse has guided sailors home for two hundred years. Find a warm seat on the upper deck and enjoy the view."
}'
# 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/minimax/speech-2.8-hd?wait=20", {
method: "POST",
headers,
body: JSON.stringify({
"prompt": "Welcome aboard. Tonight we cruise along the northern coast, where the lighthouse has guided sailors home for two hundred years. Find a warm seat on the upper deck and enjoy the view."
}),
});
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 = {
"prompt": "Welcome aboard. Tonight we cruise along the northern coast, where the lighthouse has guided sailors home for two hundred years. Find a warm seat on the upper deck and enjoy the view.",
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/minimax/speech-2.8-hd", 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/mnc/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": "minimax/speech-2.8-hd",
"input": {
"prompt": "Welcome aboard. Tonight we cruise along the northern coast, where the lighthouse has guided sailors home for two hundred years. Find a warm seat on the upper deck and enjoy the view."
}
}
MiniMax Speech 2.8 HD ᠮᠣᠳᡝᠯ (minimax/speech-2.8-hd) ᠪᡝ Doitong API ᠵᠠᠯᡳᠨᡩᡝ ᠠᠰᡠᠮᠪᡳ. ᠠᡤᡝᠨᡨᡳ ᡩᠠᡳᠯᠠᠨ: https://doitong.com/mnc/developers/models/minimax/speech-2.8-hd.md
POST https://api.doitong.com/v1/run/minimax/speech-2.8-hd?wait=20
Authorization: Bearer $DOITONG_API_KEY
Content-Type: application/json
{
"prompt": "Welcome aboard. Tonight we cruise along the northern coast, where the lighthouse has guided sailors home for two hundred years. Find a warm seat on the upper deck and enjoy the view."
}
ᡝᡵᡝᠮᡝ ᠪᡠᠮᡝᠨᡳ ᠠᠨᠠᠮᡝ "queued" ᡳᠨᡠ "running" ᠪᡝ, GET https://api.doitong.com/v1/requests/REQUEST_ID?wait=20 ᠪᡝ ᠠᠨᠠᠮᡝ "succeeded" ᠪᡝᠴᡳ ᠠᠰᡠᠮᠪᡳ; ᡶᡳᠯᡝ ᠪᡝ outputs[].url ᠪᡝᠴᡳ ᠣᠨᡩᠣᠮᡝ. POST https://api.doitong.com/v1/quote/minimax/speech-2.8-hd ᠪᡝ ᡝᠮᡠ ᠪᡠᠶᡝᠮᡝ ᠪᡝ ᠠᠰᡠᠮᠪᡳᡩᡝ ᠵᠠᠯᡤᠠᠨ ᠪᡝ ᠶᠠᠪᡠᠮᠪᡳ ᠰᡳᠨᡳ ᠠᠮᡤᠠ ᠠᠰᡠᠮᠪᡳ ᠣᠯᡥᠣᠮᡝ.
ᡝᠨᡳ ᠵᠠᠯᡳᠨ: $0.019 19 API ᠺᠷᡝᡩᡳᠲ ᡝᡵᡝ ᠵᠠᠯᡳᠨᡩᡝ ᠠᠰᡠᠮᠪᡳ
ᠰᡳᠨᡳ ᠵᠠᠮᡠᠰᡳᠨ API ᠵᡳᡵᡤᠠ. ᡝᠯᡝ ᡝᠨᡩᡝ ᡳᠯᡤᠠᠮᠪᡳ ᡝᡵᡝ ᠮᡠᠨᡩᡝ ᡴᠣᡩᡝ ᡩᠠᠮᡠ ᠮᡝᠨᡩᡝᡵᡝ ᠪᠠᡩᡝᠯᡝᠨ ᠠᠮᡪᡳ ᡳᠨᡠ API ᠵᡳᡵᡤᠠ ᡩᡝᠪᡨᡝᡵᡝ ᡩᡝ ᠠᡴᡠ᠉ ᡳᠨᡠ ᡝᡵᡝᠩᡤᡝ ᠠᠮᠪᠠᠨ ᠮᡠᠨᡩᡝ ᠪᡝ ᠠᠰᡠᡵᠠᠮᠪᡳ: ᠮᡠᡵᡝ ᡩᠠᠮᡠ ᠪᡠᠶᡝᡵᡝ ᠪᠠᡩᡝᠯᡝᠨ ᡩᡝ ᠰᡳᠨᡩᡝᠮᡝ ᠠᠪᡠᠮᡝ ᠰᠠᠮᡪᡳ᠉
ᡝᡵᡝᠮᡝ
ᡤᡳᠰᡠᠨ ᠪᡠᠶᡝᠮᡝ
ᠵᠠᡴᡠᠨᡳ ᠵᡠᠯᡝ ᡩᡝᡵᡤᡳ ᡩᡝᠪᡝᠰᡠᠮᡝ ᠵᡠᠯᡤᡝ ᠪᡠᠶᡝᠮᡝ᠈ ᡳᠨᡳ ᡤᡳᠰᡠᠨ ᠪᠠᡳ ᡝᠨᡝᠩᡤᡳ ᠠᠮᠪᡳ
/run/minimax/speech-2.8-hd?wait=20
ᠵᠠᠯᡳᠨ → $0.019
# 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/minimax/speech-2.8-hd?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "Welcome aboard. Tonight we cruise along the northern coast, where the lighthouse has guided sailors home for two hundred years. Find a warm seat on the upper deck and enjoy the view."
}'
# 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/minimax/speech-2.8-hd?wait=20", {
method: "POST",
headers,
body: JSON.stringify({
"prompt": "Welcome aboard. Tonight we cruise along the northern coast, where the lighthouse has guided sailors home for two hundred years. Find a warm seat on the upper deck and enjoy the view."
}),
});
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 = {
"prompt": "Welcome aboard. Tonight we cruise along the northern coast, where the lighthouse has guided sailors home for two hundred years. Find a warm seat on the upper deck and enjoy the view.",
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/minimax/speech-2.8-hd", 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": "minimax/speech-2.8-hd",
"input": {
"prompt": "Welcome aboard. Tonight we cruise along the northern coast, where the lighthouse has guided sailors home for two hundred years. Find a warm seat on the upper deck and enjoy the view."
},
"wait_seconds": 20
}
}
}
ᡝᠨᡳ ᠵᠠᠯᡳᠨ ᠪᡝ ᠵᠠᠯᠠᠨᠠᠮᡝ
ᡳᠨᡝ ᠵᠠᠯᠠᠨ ᡝᡵᡝ ᠪᡠᡵᡝᠪᡝᡵᡳ ᡩᡝ ᠪᡳᠮᡝ᠈ Doitong API ᡩᡝ ᠵᡝᠯᡤᡳ ᡩᠠᡵᠠᠮᡝ᠈ Remember ᠵᡠᠯᡝᠮᡝ ᡤᡳᠯᠠᠮᡝ localStorage ᡩᡝ ᠰᡠᠯᡝᠮᡝ ᠪᡳᠮᡝ API ᠵᠠᠯᠠᠨ ᠠᠪᠠᠮᡝ
MiniMax Speech 2.8 HD ᡠᡵᡝᠮᡝ
MiniMax Speech 2.8 HD ᡥᠠᡶᠠᠨᠠᠰᡳ 30 ᡩᡝ ᠴᡝᠮᡝ ᡳᠯᠠᠨ ᡤᡳᠰᡠᠨ ᡩᡝ ᡤᡳᠰᡠᠷᡝᠮᡝ ᠠᠮᠠᠯᡤᠠ ᡩᠠᡥᠠᠯᡳᠨᠠ: ᡨᡝᠨᡝᠨ ᡩᡝ ᠰᠠᠯᡤᠠᠨ ᡳ ᡥᠠᠰᡥᠠ ᠵᡠᠰᡨᠠᠨ, ᡤᡳᠰᡠᠨ ᡳ ᡝᠮᡤᡳᠯᡝᠨ, ᡩᠠᠯᠵᡳᠨ ᡳ ᠵᠠᠯᡳᠨ, ᡳ ᡥᡝᠯᡤᡝᠨ ᡤᡳᠰᡠᠷᡝᠩᡤᡝ ᡨᠠᠯᡤᠠᠨ ᡳ ᠵᠠᠯᡳᠨ. ᡥᠠᠩᡤᠠᠨ ᡩᡝ ᡳᠯᠠᠨ ᡩᡝ ᡝᠮᡤᡳ ᡤᡳᠰᡠᠨ ᡳ ᠵᠠᠯᡳᠨ ᡳ ᠠᠮᠠᠯᡤᠠ ᡳᠯᡝᠷᡝ.
ᠵᠠᡴᡠᠨ
promptᡴᠠᠷᠠᡴᡡ
voice_settingᠵᡠᠯᡝ
voice_setting.voice_idᠵᡠᠯᡝ
voice_setting.speedᠵᡠᠯᡝ
voice_setting.volᠵᡠᠯᡝ
voice_setting.pitchᠵᡠᠯᡝ
voice_setting.emotionᠵᡠᠯᡝ
voice_setting.english_normalizationᠵᡠᠯᡝ
audio_settingᠵᡠᠯᡝ
audio_setting.sample_rateᠵᡠᠯᡝ
audio_setting.bitrateᠵᡠᠯᡝ
audio_setting.formatᠵᡠᠯᡝ
audio_setting.channelᠵᡠᠯᡝ
language_boostᠵᡠᠯᡝ
+22 ᡝᠨᡝ
KoreanThaiPolishRomanianGreekCzechFinnishHindiBulgarianDanishHebrewMalaySlovakSwedishCroatianHungarianNorwegianSlovenianCatalanNynorskAfrikaansautooutput_formatᠵᡠᠯᡝ
pronunciation_dictᠵᡠᠯᡝ
pronunciation_dict.tone_listᠵᡠᠯᡝ
normalization_settingᠵᡠᠯᡝ
normalization_setting.enabledᠵᡠᠯᡝ
normalization_setting.target_loudnessᠵᡠᠯᡝ
normalization_setting.target_rangeᠵᡠᠯᡝ
normalization_setting.target_peakᠵᡠᠯᡝ
voice_modifyᠵᡠᠯᡝ
voice_modify.pitchᠵᡠᠯᡝ
voice_modify.intensityᠵᡠᠯᡝ
voice_modify.timbreᠵᡠᠯᡝ
ᠪᡠᠶᡝᠮᡝ
{
"id": "req_8k2m4q7x1z9c3v5b6n0p2r4t",
"object": "request",
"model": "minimax/speech-2.8-hd",
"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": 19,
"usd": "0.019",
"charged": 19,
"refunded": 0
},
"input": {
"prompt": "Hello! Welcome to our new studio. <#0.5#> Let's make something wonderful today."
},
"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
},
"duration_ms": 1
},
"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}ᠪᡠᠶᡝᠮᡝ ᠪᡠᠶᡝᠮᡝ ᡳ ᡤᡳᠰᡠᠨ ᡶᡳᠯᡝ᠉
- duration_ms
- integerᡤᡳᠰᡠᠨ ᡳ ᠠᠮᠠᠯᠠᠨ,ᠮᡳᠯᡳᠰᡝᡴᡠᠨᡩ ᡩᡝ ᠪᡠᠶᡝᠮᡝ᠉
ᡝᠯᡤᡳ MiniMax Speech ᡠᠯᡤᡳᠨ
ᡝᠯᡤᡳ ᡩᠠᠯᡳᠨ: ᡥᡡᠯᠠᠨ ᡩᡝ ᡤᡳᠰᡠᠨ
AI ᠠᡤᡝᠨᡨᡳ ᡠᠴᡠᠷᡳ᠈ ᡝᡵᡝ ᡩᡝᠪᡝᡵᡳ Markdown ᠰᡳᠨᡩᠠᡵᡳ https://doitong.com/mnc/developers/models/minimax/speech-2.8-hd.md. ᡝᡵᡝ ᠮᠣᡩᡝᠯ ᠵᠠᡴᡠᠨ ᠰᡠᠯᡠᠮᡝ https://doitong.com/developers/llms.txt