API 參考文字轉語音
同步HTTP
使用 Open API v1 同步產生語音。
同步HTTP
當文字對於請求-回應流來說足夠短且您的產品可以在繼續之前等待音訊時,請使用同步 TTS 端點。對於長文本、批次工作或使用者可見的佇列,請使用非同步作業。
如果您的用戶端需要 OpenAI /v1/audio/speech 請求形狀,請改用 OpenAI-相容 TTS 端點。
POST /api/open/v1/speech/tts
Authorization: Bearer KITTA_API_KEY
Content-Type: application/json## 要求
{
"text": "Hello from Kitta Audio.",
"voiceId": "00a1b221-6137-4b73-ad62-b0cbce134167",
"modelId": "fishaudio-s21pro-flash",
"format": "mp3"
}常見欄位:
| 領域 | 類型 | 筆記 |
|---|---|---|
text | 字串 | 要合成的文字。在發送大型生成文字之前規範空白。 |
voiceId | 字串 | 新整合的首選語音 ID。 |
modelId | 字串 | TTS 引擎模型 ID,例如 fishaudio-s21pro-flash。 |
format | 字串 | 輸出容器,例如 mp3,取決於啟用的型號。 |
cache | 布林 | 如果為 true,則回應可以傳回 JSON 元資料和音訊 URL。 |
新整合應使用 GET /api/open/v1/voices 中的 voiceId。如需快速連線測試,請使用公用系統語音00a1b221-6137-4b73-ad62-b0cbce134167。
請勿將舊版 SDK 或其他網站變體中的欄位混入目前Open API 合約中。
curl https://kittaai.com/api/open/v1/speech/tts \
-H "Authorization: Bearer KITTA_API_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Hello from Kitta Audio.","voiceId":"00a1b221-6137-4b73-ad62-b0cbce134167","modelId":"fishaudio-s21pro-flash","format":"mp3"}' \
--output speech.mp3回覆
當 cache 為 false 或省略時,成功回應返回二進位音訊。當 cache 為 true 時,成功回應返回 JSON 元資料:
{
"audio_url": "https://example.com/generated.mp3",
"credits_used": 12,
"quota_remaining": 987988
}您的客戶端應該在 Content-Type 標頭上進行分支,而不是假設一種回應形狀。如果 URL 是短暫的,請將產生的音訊儲存在您自己的持久性儲存中。
計費和積分
同步 TTS 根據產生的內容和模型配置消耗積分。由於端點在 HTTP 請求內執行生成,因此客戶端逾時並不總是意味著伺服器取消了工作。重試使用者操作時,在您自己的應用程式層中使用冪等性。
如果您需要準確的生成後餘額,請在請求完成後致電個人資料。對於大批量,更喜歡非同步作業,這樣每個任務都有一個持久的 ID 和狀態。
錯誤
| 狀態 | 意義 | 行動 |
|---|---|---|
400 | 文字、語音 ID、格式或負載形狀無效 | 在重試之前修復請求 |
401 | API 金鑰遺失或無效 | 刷新伺服器端憑證 |
402 | 學分或額度不足 | 停止批量並顯示計費狀態 |
429 | 限價 | 後退重試 |
500 | 驗證後產生失敗 | 僅當您的產品可以容忍重複音訊時才重試 |