文件導覽

台語翻譯 API

將中文轉為台語漢字、台羅與白話字,並可產生可下載的台語語音。

1. 送出翻譯

先設定環境變數 EZTRANSLATE_API_KEY。以下 Bash 範例用 uuidgen 產生一次重試識別碼;若請求需要重送,請沿用這個值。

REQUEST_ID="$(uuidgen)"

curl -i "https://eztranslate.com.tw/api/v1/hokkien/translations" \
  -H "Authorization: Bearer $EZTRANSLATE_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $REQUEST_ID" \
  --data '{"text":"今天天氣很好。","audio":false}'
欄位或標頭 必填 說明
Idempotency-Key 是 UUID;同帳戶同一份工作重試時沿用
text 是 去除頭尾空白後,1–2,000 個 Unicode 字元的中文文字
audio 否 布林值,預設 false;設為 true 會產生所有語音片段

使用 UTF-8 JSON,不支援未知欄位。v1 接受文字輸入,不接受麥克風錄音。

接受後回傳 202 Accepted,Location 是狀態查詢路徑。以下為回應格式範例:

{
  "id": "7c89cba9-6463-4424-9bb2-f76f0d4f0045",
  "statusUrl": "/api/v1/hokkien/translations/7c89cba9-6463-4424-9bb2-f76f0d4f0045",
  "status": "queued",
  "creditCost": 1,
  "refundedCredits": 0,
  "refundPending": false,
  "result": null,
  "error": null,
  "createdAt": "2026-10-26T00:00:00.000Z",
  "completedAt": null,
  "expiresAt": null,
  "resultExpired": false
}

2. 查詢進度與文字

將 JOB_ID 設為接受回應中的 id:

curl "https://eztranslate.com.tw/api/v1/hokkien/translations/$JOB_ID" \
  -H "Authorization: Bearer $EZTRANSLATE_API_KEY"

status 會是 queued、processing、completed 或 failed。尚未完成時,依照 Retry-After 等待後再查詢。

完成後,result 包含以下欄位:

欄位 說明
hanji 台語漢字
tailo 台羅拼音
poj 白話字
spokenCharacterCount 台語漢字輸出的 Unicode 字元數,不影響計費
audioUrls 依播放順序排列的語音下載路徑;未要求語音時為空陣列

輸入最多 2,000 字,輸出最多 3,000 字。僅使用 Plus 點數,依去除頭尾空白後的輸入長度計費,每 500 個 Unicode 字元 1 點,最低 1 點、最高 4 點。接受工作時一次扣足,譯文與台語發音不另收費;Plus 餘額不足時不會建立工作或扣點。詳細規則見 點數計費。

3. 下載語音

若送出時指定 audio: true,工作完成後再依序下載 audioUrls。所有片段都準備好才會顯示完成。

curl "https://eztranslate.com.tw/api/v1/hokkien/translations/$JOB_ID/audio/0" \
  -H "Authorization: Bearer $EZTRANSLATE_API_KEY" \
  --output speech-0.wav

語音是 WAV 檔,每個下載請求都需要金鑰。若有多個片段,請按陣列順序播放;不要直接把多個 WAV 檔的位元組串接成一個檔案。

重試與保存

相同 Idempotency-Key 和相同內容會回到原工作:尚未完成回傳 202,完成或失敗回傳 200。不同內容會回傳 409。

內容可存取至 expiresAt,即完成或失敗後 7 天。到期後狀態仍可查詢,但 result 會是 null;下載或重送舊識別碼會收到 410。請自行保存需要長期使用的文字與語音。

遇到失敗或連線中斷時,依照 錯誤與重試 處理,避免重複建立翻譯。

更新於

© 2026 EzTranslate