使用 VisionStory 智能 TTS 将文本转换为语音。从 GET /api/v1/voices 选择公共声音或自己的克隆声音。服务会根据声音和文本语言自动选择合适的合成策略。按每 1000 字符 2 点计费,向上取整,仅成功时扣费。
此接口同步执行,响应体直接返回 MP3 音频(audio/mpeg)。时长与计费信息通过 X-Audio-Duration-Sec、X-Usage-Characters 和 X-Cost-Credit 响应头返回。服务端不保存音频,请保存响应体;重复调用会重新生成并再次计费。Beta 期间每个 API Key 的并发数受限,超限请求会被拒绝,不会排队。
请求头
X-API-Keystring必填你的 VisionStory API Key(sk-vs-...),请仅保存在服务端。可在 API Key 管理 中创建或管理,需要 Pro 或更高方案。
请求体
application/json必填localestring | null可为空可选的 BCP 47 语言区域标记(例如 en-GB、zh-TW),用于指定多语言声音的发音和口音。具体效果取决于声音引擎的支持情况。默认使用该声音的原生语言区域。
speech_ratestring | null可为空相对语速:slow / normal / fast,默认 normal。与 POST /api/v1/video 中的 text_script.speech_rate 使用相同取值。声音引擎原生支持语速控制时由引擎处理,否则通过约 10% 的音频时长伸缩实现,保持音高不变。具体时长变化因声音而异,请读取 X-Audio-Duration-Sec。
textstring必填要合成的文本,最多 3000 个字符。
voice_idstring必填公共声音或克隆声音的 ID,请查询 GET /api/v1/voices。
响应
200MP3 音频(44.1kHz)。用量信息通过响应头返回。示例文本仅为二进制响应体的占位说明,不是可播放音频或 JSON。
audio/mpeg
请求头
X-Audio-Duration-Secnumber实际生成时长,单位为秒。
X-Audio-Idstring生成音频的标识符。
X-Cost-Creditinteger扣除的点数。示例仅用于说明,并非实际报价。
X-Usage-Charactersinteger计费字符数。
default错误响应。所有失败均使用统一结构:error 对象包含数字错误码 code、便于阅读的 message、可选的 details 字符串,以及提供后续处理建议的可选 hint(便于 AI Agent 使用)。
application/json
errorErrorDetail必填codeinteger必填机器可读的错误码。传输层失败时对应 HTTP 状态码(例如 401、404、422、500),其他情况可能使用业务专用错误码。
detailsstring | null可为空可选的结构化错误详情,例如 422 响应中逐字段校验错误的 JSON 字符串。无补充信息时不返回。
hintstring | null可为空供用户和 AI Agent 参考的错误处理建议,例如如何修正请求或在哪里获取 API Key。可能不返回此字段。
messagestring必填便于阅读的错误原因说明,可安全记录到日志或展示给最终用户;此返回值未本地化。