Audio 提供转录、翻译和语音合成三类独立契约。转录和翻译使用 multipart;Speech 使用 JSON 并按请求格式返回音频二进制或 SSE。
https://api.tokensapi.cn/v1POST /audio/transcriptions请求地址固定,请根据当前页面的参数说明替换模型 ID 和业务输入。
${base_url}/audio/transcriptions${base_url}/audio/translations${base_url}/audio/speech转录一个音频文件,可按模型能力请求文本、JSON 或 SSE。
| 参数 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
file | file | 是 | — | 待转录音频。 |
model | string | 是 | — | 支持转录的模型 ID。 |
language | string | 否 | — | 可选 ISO-639-1 输入语言提示。 |
prompt | string | 否 | — | 转录提示词。 |
temperature | number | 否 | — | 采样温度。 |
response_format | string | 否 | — | 目标文本或 JSON 格式。 |
timestamp_granularities[] | string[] | 否 | — | 模型支持时请求 segment 或 word 时间戳。 |
stream | boolean | 否 | — | 设为 true 并且模型支持时启用 SSE。 |
extra_body | JSON string | 否 | — | multipart 表单中的 JSON 字符串,可含 provider。 |
翻译一个音频文件;字段由所选模型支持范围决定。
| 参数 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
file | file | 是 | — | 待翻译音频。 |
model | string | 是 | — | 支持翻译的模型 ID。 |
prompt | string | 否 | — | 翻译提示词。 |
temperature | number | 否 | — | 采样温度。 |
response_format | string | 否 | — | 目标文本或 JSON 格式。 |
extra_body | JSON string | 否 | — | multipart 表单中的 JSON 字符串,可含 provider。 |
Speech 用 JSON 提交文本;stream=true 且 stream_format="sse" 时才请求 SSE。
| 参数 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
model | string | 是 | — | 支持 Speech 的模型 ID。 |
input | string | 是 | — | 要合成的文本。 |
voice | string | object | 是 | — | 音色或模型支持的语音对象。 |
response_format | string | 否 | — | 输出音频格式。 |
speed | number | 否 | — | 模型支持时的语速。 |
stream | boolean | 否 | — | 启用流式音频。 |
stream_format | string | 否 | — | 设为 sse 请求 SSE 输出。 |
extra_body.provider | object | 否 | — | 可选 provider 路由配置。 |
路由条件放在 extra_body.provider。处理顺序为 ignore → ranges → only → sort → order;order 在最后提升数组中指定的 provider。
| 参数 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
extra_body.provider | object | 否 | — | 服务商过滤、范围、排序和优先顺序的容器。 可选值 / 约束:ignore、*_range、only、sort、order、allow_fallbacks。 |
extra_body.provider.allow_fallbacks | boolean | 否 | — | 非空 only 时默认 false;否则默认 true。 可选值 / 约束:无可用通道时返回 HTTP 503 / no_available_provider。 |
以下字段属于 HTTP 响应 Header,不属于 JSON、SSE 事件或二进制响应 body。网络层失败而未进入网关时不保证返回。
| 参数 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
X-Client-Request-Id | string | 否 | — | 调用方在请求中提供时回显;未提供时网关不会自动生成。 |
X-Upstream-Request-Id | string | 否 | — | 通常用于网关请求追踪,不代表 provider 的原始 request ID。 |
错误 body 遵循所选协议。HTTP 400 表示 invalid_request,HTTP 402 表示可用余额或配额不足,HTTP 429 表示限流。
| 参数 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
error.code | string | 否 | — | 协议定义的机器可读错误码。 |
error.message | string | 否 | — | 可读错误说明。 |
支持 SSE 的 Audio 流正常完成时发送协议终止事件并以 data: [DONE] 结束;异常断流时不保证收到终止事件或 data: [DONE]。请求已开始处理或输出后,即使客户端断开也可能产生用量费用。
示例使用占位符,请替换为模型详情页中当前可用的 model ID,并将 API Key 保存在服务端环境变量中。
curl https://api.tokensapi.cn/v1/audio/transcriptions \
-H "Authorization: Bearer $TOKEN_MARKET_API_KEY" \
-F "file=@meeting.mp3" \
-F "model=<MODEL_ID>" \
-F "response_format=verbose_json" \
-F "stream=true" \
-F 'extra_body={"provider":{"sort":["latency"]}}'