Heygen · v2 · Translate · Precision
Intégrer
heygen/v2/translate/precision
# 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/heygen/v2/translate/precision?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"video": "https://content.doitong.com/video/showcase/v3/gen_fox_cartoon.mp4",
"output_language": "English"
}'
# 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/heygen/v2/translate/precision?wait=20", {
method: "POST",
headers,
body: JSON.stringify({
"video": "https://content.doitong.com/video/showcase/v3/gen_fox_cartoon.mp4",
"output_language": "English"
}),
});
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 = {
"video": "https://content.doitong.com/video/showcase/v3/gen_fox_cartoon.mp4",
"output_language": "English",
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/heygen/v2/translate/precision", 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/fr/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": "heygen/v2/translate/precision",
"input": {
"video": "https://content.doitong.com/video/showcase/v3/gen_fox_cartoon.mp4",
"output_language": "English"
}
}
Appelez le modèle Heygen · v2 · Translate · Precision (heygen/v2/translate/precision) via la Doitong API. Documentation pour les agents : https://doitong.com/fr/developers/models/heygen/v2/translate/precision.md
POST https://api.doitong.com/v1/run/heygen/v2/translate/precision?wait=20
Authorization: Bearer $DOITONG_API_KEY
Content-Type: application/json
{
"video": "https://content.doitong.com/video/showcase/v3/gen_fox_cartoon.mp4",
"output_language": "English"
}
Si le statut de la réponse est "queued" ou "running", interrogez GET https://api.doitong.com/v1/requests/REQUEST_ID?wait=20 jusqu’à ce qu’il soit "succeeded" ; les fichiers se trouvent dans outputs[].url. POST https://api.doitong.com/v1/quote/heygen/v2/translate/precision avec le même corps renvoie le prix exact avant l’exécution.
Fichiers comme dans l’exemple: 1,00 $ 1 000 crédits API vos fichiers sont mesurés avant l’exécution L’exécuter sur cette page
Votre nouvelle clé API. Elle n’est affichée que maintenant et figure déjà dans le code et dans le champ de clé API ci-dessous. Gardez-la secrète : ne l’intégrez jamais dans du code exécuté dans un navigateur.
Votre premier résultat apparaîtra ici
Construisez une requête ci-dessous et exécutez-la avec votre clé API. Les sorties sont copiées dans notre stockage, conservées indéfiniment ou 7 jours gratuitement.
Créer une requête
Les contrôles sont générés à partir du schéma du modèle. Le code et le prix se mettent à jour lorsque vous les modifiez.
/run/heygen/v2/translate/precision?wait=20
devis → 1,00 $
# 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/heygen/v2/translate/precision?wait=20" \
-H "Authorization: Bearer $DOITONG_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"video": "https://content.doitong.com/video/showcase/v3/gen_fox_cartoon.mp4",
"output_language": "English"
}'
# 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/heygen/v2/translate/precision?wait=20", {
method: "POST",
headers,
body: JSON.stringify({
"video": "https://content.doitong.com/video/showcase/v3/gen_fox_cartoon.mp4",
"output_language": "English"
}),
});
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 = {
"video": "https://content.doitong.com/video/showcase/v3/gen_fox_cartoon.mp4",
"output_language": "English",
}
# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/heygen/v2/translate/precision", 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": "heygen/v2/translate/precision",
"input": {
"video": "https://content.doitong.com/video/showcase/v3/gen_fox_cartoon.mp4",
"output_language": "English"
},
"wait_seconds": 20
}
}
}
Exécuter cette requête
Votre clé reste dans ce navigateur : elle est envoyée uniquement à la Doitong API et enregistrée dans localStorage uniquement si vous cochez Mémoriser. Obtenir une clé API
À propos de Heygen · v2 · Translate · Precision
Traduit la parole d'une vidéo vers un `output_language` cible ; la liste comprend notamment l'anglais, l'espagnol, le français, l'hindi et le japonais parmi 178 options. Les vidéos source peuvent durer jusqu'à 8 minutes. Vous pouvez traduire uniquement la piste audio, définir `speaker_num`, appliquer un glossaire de marque, fournir un SRT personnalisé et demander un fichier de sous-titres SRT. Il s'agit de la variante de précision.
Paramètres
Envoyez soit le nom canonique, soit le nom natif, mais pas les deux. Noms canoniques
video_urlrequis
video
output_languagerequis
+162 de plus
MandarinFilipinoSwedishIndonesianUkrainianGreekCzechBulgarianMalaySlovakCroatianTamilFinnishRussianAfrikaans (South Africa)Albanian (Albania)Amharic (Ethiopia)Arabic (Algeria)Arabic (Bahrain)Arabic (Egypt)Arabic (Iraq)Arabic (Jordan)Arabic (Kuwait)Arabic (Lebanon)Arabic (Libya)Arabic (Morocco)Arabic (Oman)Arabic (Qatar)Arabic (Saudi Arabia)Arabic (Syria)Arabic (Tunisia)Arabic (United Arab Emirates)Arabic (Yemen)Armenian (Armenia)Azerbaijani (Latin, Azerbaijan)Bangla (Bangladesh)BasqueBengali (India)Bosnian (Bosnia and Herzegovina)Bulgarian (Bulgaria)Burmese (Myanmar)CatalanChinese (Cantonese, Traditional)Chinese (Jilu Mandarin, Simplified)Chinese (Mandarin, Simplified)Chinese (Northeastern Mandarin, Simplified)Chinese (Southwestern Mandarin, Simplified)Chinese (Taiwanese Mandarin, Traditional)Chinese (Wu, Simplified)Chinese (Zhongyuan Mandarin Henan, Simplified)Chinese (Zhongyuan Mandarin Shaanxi, Simplified)Croatian (Croatia)Czech (Czechia)Danish (Denmark)Dutch (Belgium)Dutch (Netherlands)English (Australia)English (Canada)English (Hong Kong SAR)English (India)English (Ireland)English (Kenya)English (New Zealand)English (Nigeria)English (Philippines)English (Singapore)English (South Africa)English (Tanzania)English (UK)English (United States)Estonian (Estonia)Filipino (Philippines)Finnish (Finland)French (Belgium)French (Canada)French (France)French (Switzerland)GalicianGeorgian (Georgia)German (Austria)German (Germany)German (Switzerland)Greek (Greece)Gujarati (India)Hebrew (Israel)Hindi (India)Hungarian (Hungary)Icelandic (Iceland)Indonesian (Indonesia)Irish (Ireland)Italian (Italy)Japanese (Japan)Javanese (Latin, Indonesia)Kannada (India)Kazakh (Kazakhstan)Khmer (Cambodia)Korean (Korea)Lao (Laos)Latvian (Latvia)Lithuanian (Lithuania)Macedonian (North Macedonia)Malay (Malaysia)Malayalam (India)Maltese (Malta)Marathi (India)Mongolian (Mongolia)Nepali (Nepal)Norwegian Bokmål (Norway)Pashto (Afghanistan)Persian (Iran)Polish (Poland)Portuguese (Brazil)Portuguese (Portugal)Romanian (Romania)Russian (Russia)Serbian (Latin, Serbia)Sinhala (Sri Lanka)Slovak (Slovakia)Slovenian (Slovenia)Somali (Somalia)Spanish (Argentina)Spanish (Bolivia)Spanish (Chile)Spanish (Colombia)Spanish (Costa Rica)Spanish (Cuba)Spanish (Dominican Republic)Spanish (Ecuador)Spanish (El Salvador)Spanish (Equatorial Guinea)Spanish (Guatemala)Spanish (Honduras)Spanish (Mexico)Spanish (Nicaragua)Spanish (Panama)Spanish (Paraguay)Spanish (Peru)Spanish (Puerto Rico)Spanish (Spain)Spanish (United States)Spanish (Uruguay)Spanish (Venezuela)Sundanese (Indonesia)Swahili (Kenya)Swahili (Tanzania)Swedish (Sweden)Tamil (India)Tamil (Malaysia)Tamil (Singapore)Tamil (Sri Lanka)Telugu (India)Thai (Thailand)Turkish (Türkiye)Ukrainian (Ukraine)Urdu (India)Urdu (Pakistan)Uzbek (Latin, Uzbekistan)Vietnamese (Vietnam)Welsh (United Kingdom)Zulu (South Africa)English - Your AccentEnglish - American Accenttranslate_audio_onlyfacultatif
speaker_numfacultatif
enable_dynamic_durationfacultatif
brand_glossary_idfacultatif
srt_urlfacultatif
srt_rolefacultatif
enable_captionfacultatif
Les paramètres de fichier acceptent une URL publique https://, un URI data: jusqu’à 10 MB ou le file_url d’un téléversement. Fichiers
Sortie
{
"id": "req_8k2m4q7x1z9c3v5b6n0p2r4t",
"object": "request",
"model": "heygen/v2/translate/precision",
"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": 1000,
"usd": "1.00",
"charged": 1000,
"refunded": 0
},
"input": {
"video_url": "https://content.doitong.com/video/showcase/v3/gen_fox_cartoon.mp4",
"output_language": "English"
},
"output": {
"video": {
"url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.mp4",
"content_type": "video/mp4",
"file_name": "0-output.mp4",
"file_size": 1843200
},
"caption_file": {
"url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.mp4",
"content_type": "video/mp4",
"file_name": "0-output.mp4",
"file_size": 1843200
}
},
"outputs": [
{
"type": "video",
"url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.mp4",
"content_type": "video/mp4",
"file_size": 1843200,
"width": 1280,
"height": 720,
"duration": 5,
"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"
}
}
Champs de sortie
- video
- object {url, content_type, file_name, file_size}Fichier vidéo contenant la traduction.
- caption_file
- object {url, content_type, file_name, file_size} | nullSous-titres SRT produits lorsque `enable_caption` est true.
Autres variantes HeyGen v2
Plus de modèles : Synchronisation labiale et avatars
Pour les agents IA : cette page au format Markdown est disponible à https://doitong.com/fr/developers/models/heygen/v2/translate/precision.md. Tous les modèles et guides : https://doitong.com/developers/llms.txt