Skip to content

MaaS_HG_video_translate API

Request Protocol

Http

Request Header

Parameter Name Value
x-api-key your-api-key
content-type application/json
accept application/json

Video Translation Interface

Request Method

POST

Request URL

https://genaiapi.cloudsway.net/v1/ai/${ENDPOINT_PATH}/heygen/video_translate

Request Parameters

Field Type Required Description
video_url string Yes The URL of the video file. Supports direct video file links, Google Drive links, and YouTube links.
title string No Video title.
output_language string Yes (for single language) Target translation language (single). Either output_language or output_languages must be provided.
translate_audio_only boolean No Default is false. Translate only the audio and ignore the vision, suitable for scenarios such as voiceover and dubbing without on-camera appearances.
speaker_num int32 No Number of speakers in the video.
callback_id string No Custom ID for callback tracking. Will be returned in the status/webhook response.
enable_dynamic_duration string No Adjust video clip length to improve cross-language dialogue fluency and translation quality (e.g., languages with different speech rates).
keep_the_same_format boolean No Default is false. Set to true to ensure the input and output video quality are consistent.
mode string No • fast: Fast generation, suitable for standard translation
• quality: High-quality lip synchronization, but consumes double the points

Response Parameters

Field Type Description
error string Error message when the request fails; null when the request succeeds
data object Contains the ID of the translated video
data.video_translate_id string Unique identifier of the translated video.

Request Example

Request
curl --request POST \
     --url https://genaiapi.cloudsway.net/v1/ai/${ENDPOINT_PATH}/heygen/video_translate \
     --header 'accept: application/json' \
     --header 'content-type: application/json' \
     --header 'Authorization: Bearer XX' \
     --data '
{
  "translate_audio_only": "false",
  "keep_the_same_format": "false",
  "mode": "fast",
  "video_url": "https://storage.googleapis.com/wangshi-usw/wangshi-use/343170513536603082/sample_0.mp4",
  "output_language": "Chinese (Mandarin, Simplified)",
  "title": "test"
}
'
Response
{
  "error": null,
  "data": {
    "video_translate_id": "8t4ca15b649d4bc1936f5ca2edd0c1c6-ur_ur-PK",
    "video_translate_ids": null
  }
}

Query Video Translation Status Interface

Request Method

GET

Request URL

https://genaiapi.cloudsway.net/v1/ai/${ENDPOINT_PATH}/heygen/video_translate/{video_translate_id}

Request Parameters

Field Type Required Description
video_translate_id string Yes Path parameter, unique identifier of the translated video

Response Parameters

Field Type Description
error string Error message when the request fails; null when the request succeeds.
data object Contains detailed information of the translated video.
video_translate_id string Unique identifier of the translated video.
title string Video title.
output_language string The target language the video is translated into.
status string Current status of the video. • failed: Video rendering failed • pending: Waiting in queue • success: Video rendering succeeded • running: Rendering in progress
url string URL of the translated video. This link expires in 7 days, and a new link needs to be obtained by re-calling the interface after expiration.
message string Newly added field, containing human-readable status description. Returns explanatory information when an error occurs.
caption_url string URL of the subtitle file (.ass format), returned only if 'caption: true' is set in the request.

Request Example

Request
curl --request GET \
     --url https://genaiapi.cloudsway.net/v1/ai/${ENDPOINT_PATH}/heygen/video_translate/7544c0b52ada44fda693a15b1181b5b4-ur_ur-PK\
     --header 'accept: application/json' \
     --header 'Authorization: Bearer XX'
Response
// If the video rendering is completed, the response looks like this: 

{
  "error": null,
  "data": {
    "video_translate_id": "7544c0b52ada44fda693a15b1181b5b4-ur_ur-PK",
    "title": "My Translated Video",
    "output_language": "Urdu (Pakistan)",
    "status": "success",
    "url": "https://resource2.heygen.ai/video_translate/7544c0b52ada44fda693a15b1181b5b4-ur_ur-PK/original.mp4?response-content-disposition=attachment%3B+filename%2A%3DUTF-8%27%27My%2520Translated%2520Video.mp4%3B",
    "message": null,
    "callback_id": null,
    "caption_url": null
  }
}

Supported Languages Query Interface

Request Method

GET

Request URL

https://genaiapi.cloudsway.net/v1/ai/${ENDPOINT_PATH}/heygen/video_translate/target_languages

Request Example

Request
curl --request GET \
     --url https://genaiapi.cloudsway.net/v1/ai/${ENDPOINT_PATH}/heygen/video_translate/target_languages \
     --header 'accept: application/json' \
     --header 'Authorization: Bearer XX'
Response
{
  "error": null,
  "data": {
    "languages": [
      "English",
      "Spanish",
      "French",
      "Hindi",
      "Italian",
      "German",
      "Polish",
      "Portuguese",
      "Chinese",
      "Japanese",
      "Dutch",
      "Turkish",
      "Korean",
      "Danish",
      "Arabic",
      "Romanian",
      "Mandarin",
      "Filipino",
      "Swedish",
      "Indonesian",
      "Ukrainian",
      "Greek",
      "Czech",
      "Bulgarian",
      "Malay",
      "Slovak",
      "Croatian",
      "Tamil",
      "Finnish",
      "Russian",
      "Afrikaans (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)",
      "Basque",
      "Bengali (India)",
      "Bosnian (Bosnia and Herzegovina)",
      "Bulgarian (Bulgaria)",
      "Burmese (Myanmar)",
      "Catalan",
      "Chinese (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)",
      "Galician",
      "Georgian (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 Accent",
      "English - American Accent"
    ]
  }
}

Get Translated Video Subtitle File Interface

Request Method

GET

Request URL

https://genaiapi.cloudsway.net/v1/ai/${ENDPOINT_PATH}/heygen/video_translate/caption?video_translate_id={video_translate_id}&caption_type=vtt

Request Parameters

Field Type Required Description
video_translate_id string Yes Query parameter, unique identifier of the translated video
caption_type string Yes Subtitle file format, allowed value: vtt

Request Example

Request
curl --request GET \
     --url 'https://genaiapi.cloudsway.net/v1/ai/${ENDPOINT_PATH}/heygen/video_translate/caption?video_translate_id=6vr40c621282471bb03cd9n61acf7faa-ur_ur-PK/6vr40c621282471bb03cd9n61acf7faa-ur_ur-PK&caption_type=vtt' \
     --header 'accept: application/json' \
     --header 'Authorization: Bearer XX'
Response
{
  "error": null,
  "data": {
    "caption_url": "https://files2.heygen.ai/video_translate/6vr40c621282471bb03cd9n61acf7faa-ur_ur-PK/6vr40c621282471bb03cd9n61acf7faa-ur_ur-PK.vtt?Expires=1760528877&Signature=qkWYJB7HDZkOfaQNWBdvIYc34MAJ1~SPnDdPgXg0VefkJQnttfMXup2Qzvewq8SmbdTYr9POyrYKUAXs1gCqql1-v2q-G-dd6~Xp5QMo6L6sYCwrsbkSrofZYe2fsggsg9j-RYmlZ22qNiavJgYEWy1Do3R9TH-bctSXJPlgyYYZDhYeDLLK5HklOi0f2d7WUiN2wWpQhRyLOsXSpB-961rY-jQad0Digq~-WqsMgjkUpAsQxadXVo-0xtpYssyIVsZue59hf-XMO4IN1dHq~Dt1MgxKpmXFBjiFk6eSPyXCyp3EbuZZ9rEc5CwIA25IvWGvdAR-Tfp3iPMast2dJw__&Key-Pair-Id=K52HBHX5LX3X2H"
  }
}