POST /api/youtube-to-srt-translate
提交 YouTube 影片進行字幕翻譯(異步處理)
基本資訊
HTTP 方法: POST
端點: /api/youtube-to-srt-translate
Content-Type: application/json
分類: 翻譯 API
可見性: 公開
前端使用: Acg-Client
請求參數
| 參數名 | 類型 | 必填 | 說明 |
|---|---|---|---|
| videoUrl | String | 是 | YouTube 影片網址 |
| lang | String | 是 | 源語言代碼 (en, zh, ja, ko 等) |
| targetLang | String | 是 | 目標語言代碼 |
| translationModel | String | 是 | 翻譯模型 (gpt-4o, gpt-4, gpt-3.5-turbo 等) |
| priority | String | 否 | 優先級 (low, normal, high, urgent),預設為 normal |
請求範例
cURL
curl -X POST http://18.141.225.228:3000/api/youtube-to-srt-translate \
-H "Content-Type: application/json" \
-d '{
"videoUrl": "https://www.youtube.com/watch?v=peUO_55ck4o",
"lang": "en",
"targetLang": "zh-TW",
"translationModel": "gpt-4o"
}'
JavaScript
const response = await fetch('/api/youtube-to-srt-translate', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
videoUrl: 'https://www.youtube.com/watch?v=peUO_55ck4o',
lang: 'en',
targetLang: 'zh-TW',
translationModel: 'gpt-4o'
})
});
響應格式
成功響應:
{
"success": true,
"jobId": "job_1759060760034_abc123",
"status": "pending",
"downloadUrl": "/api/download/job_1759060760034_abc123"
}
工作流程
- 提交任務 → 收到 jobId
- 輪詢狀態 → 使用 /api/queue/job/:jobId/status
- 任務完成 → status 變為 completed
- 下載結果 → 使用 downloadUrl