Skip to main content
The resources (image, video, voice) generated by our API are valid for 7 days. Please save the relevant resources as soon as possible to prevent expiration.
Experience our video translation technology in action by exploring our interactive demo on GitHub: AKool Video Translation Demo.

API Endpoints

Translation Operations

Resource Management

Getting Started

Basic Workflow

  1. Get Available Languages:
    • Use the Get Language List API to see all supported target languages
    • Note which languages require specific voice IDs
  2. Create Translation:
    • Call the Create Video Translation API with your video URL
    • Set source_language to “DEFAULT” for automatic language detection
    • Specify target languages and optional voice mappings
    • Configure additional options like lip-sync, captions, and background music removal
  3. Monitor Progress:
    • Use the Get Translation Result API to check processing status
    • Download the translated video URL when status reaches “Completed” (status = 3)

Key Features

Automatic Language Detection

Set source_language to “DEFAULT” to automatically detect the original language of your video content.

Multiple Language Translation

Translate to multiple languages simultaneously by providing comma-separated language codes in the language parameter.

Lip-Sync Technology

Enable lipsync to synchronize mouth movements with the translated audio for more natural-looking results.

Caption Support

Add, translate, or replace subtitles with various caption handling options.

Advanced Translation Controls

Fine-tune translations with custom word mappings, pronunciation corrections, and translation styles.

Response Code Description

Please note that if the value of the response code is not equal to 1000, the request has failed or encountered an error.
CodeDescription
1000Success
1003Parameter error or Parameter cannot be empty
1008The content you requested does not exist
1009You do not have permission to perform this operation
1101Invalid authorization or The request token has expired
1102Authorization cannot be empty
1200The account has been banned
1201Create audio error, please try again later
1202The same video cannot be translated with lip-sync in the same language more than once
1203Video should contain audio
1204Your video duration exceeds 60 seconds
1205Create video error, please try again later
1207The video you are using exceeds the size limit of 300MB
1209Please upload a video in another encoding format
1210The video you are using exceeds the frame rate limit of 30fps

Video Translation Status Codes

When checking results, the video_status field indicates the current processing state:
StatusDescription
1Queueing - Your request is waiting to be processed
2Processing - Video translation is currently being generated
3Completed - Translation finished successfully, video URL is available
4Failed - Translation failed, check error details for more information

Best Practices

Video Requirements

  • Duration: Keep videos under 60 seconds for optimal processing time
  • Size: Maximum file size is 300MB
  • Frame Rate: Maximum 30fps supported
  • Audio: Ensure your video contains clear audio for accurate translation
  • Encoding: Use standard encoding formats (H.264 recommended)

Translation Quality Tips

  • Clear Speech: Videos with clear, well-articulated speech produce better translations
  • Background Noise: Consider using remove_bgm: true to remove background music for clearer voice translation
  • Speaker Count: Specify the correct number of speakers for better voice separation

API Usage Tips

  • Webhook: Use the webhookUrl parameter to receive notifications when processing is complete
  • Batch Processing: For multiple videos, process them in parallel but monitor your quota usage
  • Error Handling: Implement proper retry logic for failed translations
  • Result Management: Download and save translated videos promptly as they expire after 7 days

Common Use Cases

Single Language Translation

{
  "url": "https://example.com/my-video.mp4",
  "source_language": "DEFAULT",
  "language": "es",
  "lipsync": true,
}

Multi-Language Translation

{
  "url": "https://example.com/my-video.mp4",
  "source_language": "DEFAULT",
  "language": "es,fr,de",
  "lipsync": false,
  "caption_type": 2,
  "remove_bgm": true
}

Professional Translation with Advanced Controls

{
  "url": "https://example.com/business-video.mp4",
  "source_language": "DEFAULT",
  "language": "zh-CN",
  "lipsync": true,
  "studio_voice": {
    "style": "professional",
    "no_translate_words": ["AKool", "API"],
    "fixed_words": {"hello": "您好"}
  },
  "caption_type": 3,
  "webhookUrl": "https://your-server.com/webhook"
}

Support

For additional help and examples, check out our: