MiniMax Speech 2.8 HD
Integrar
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.ru/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.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/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.ru/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/pt-PT/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": "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."
}
}
Chame o modelo MiniMax Speech 2.8 HD (minimax/speech-2.8-hd) através da Doitong API. Documentação para agentes: https://doitong.com/pt-PT/developers/models/minimax/speech-2.8-hd.md
POST https://api.doitong.ru/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."
}
Se o estado da resposta for "queued" ou "running", consulte GET https://api.doitong.ru/v1/requests/REQUEST_ID?wait=20 repetidamente até ficar "succeeded"; os ficheiros estão em outputs[].url. POST https://api.doitong.ru/v1/quote/minimax/speech-2.8-hd com o mesmo corpo devolve o preço exato antes da execução.
Este pedido: 0,019 $ 19 créditos da API · ≈ 2,04 ₽ Executar nesta página
A sua nova chave de API. É apresentada apenas agora e já está inserida no código e no campo da chave de API abaixo. Mantenha-a secreta: nunca a coloque em código que seja executado num navegador.
Exemplos
Criar um pedido
Os controlos são gerados a partir do esquema do modelo. O código e o preço são atualizados à medida que os altera.
/run/minimax/speech-2.8-hd?wait=20
cotação → 0,019 $
# 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/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.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/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.ru/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
}
}
}
Executar este pedido
A sua chave permanece neste navegador: é enviada apenas para a Doitong API e guardada em localStorage apenas se selecionar Lembrar. Obter uma chave de API
Sobre MiniMax Speech 2.8 HD
As vozes MiniMax Speech 2.8 HD convertem texto em mais de 30 idiomas com controlo detalhado: marcadores de pausa integrados, velocidade voz, tom e volume, dicionários de pronúncia personalizados e efeitos de voz. Escolha entre as vozes integradas e a frequência de amostragem e o formato de saída.
Parâmetros
promptobrigatório
voice_settingopcional
voice_setting.voice_idopcional
voice_setting.speedopcional
voice_setting.volopcional
voice_setting.pitchopcional
voice_setting.emotionopcional
voice_setting.english_normalizationopcional
audio_settingopcional
audio_setting.sample_rateopcional
audio_setting.bitrateopcional
audio_setting.formatopcional
audio_setting.channelopcional
language_boostopcional
+22 mais
KoreanThaiPolishRomanianGreekCzechFinnishHindiBulgarianDanishHebrewMalaySlovakSwedishCroatianHungarianNorwegianSlovenianCatalanNynorskAfrikaansautooutput_formatopcional
pronunciation_dictopcional
pronunciation_dict.tone_listopcional
normalization_settingopcional
normalization_setting.enabledopcional
normalization_setting.target_loudnessopcional
normalization_setting.target_rangeopcional
normalization_setting.target_peakopcional
voice_modifyopcional
voice_modify.pitchopcional
voice_modify.intensityopcional
voice_modify.timbreopcional
Resultado
{
"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.ru/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t",
"cancel": "https://api.doitong.ru/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t/cancel"
}
}
Campos do resultado
- audio
- object {url, content_type, file_name, file_size}Ficheiro de áudio produzido pela geração.
- duration_ms
- integerDuração do áudio, medida em milissegundos.
Outras variantes de MiniMax Speech
Mais modelos: Texto para voz
Para agentes de IA: esta página em Markdown está disponível em https://doitong.com/pt-PT/developers/models/minimax/speech-2.8-hd.md. Todos os modelos e guias: https://doitong.com/developers/llms.txt