API 示例
路由
POST
PUT
POST
/api/v2/api/translate/uploads
R2 target
/api/v2/api/translate
参数
| 参数 | 必填 | 类型 | 说明 |
|---|---|---|---|
Idempotency-Key | 是 | HTTP header | 准备请求头:用于在 8 小时内安全重试同一文件清单的稳定键 |
platform | 否 | string | null | 准备和最终提交请求:可选的调用方自报平台标签,仅用于 API 调用审计 |
files[] | 是 | array<object> | 准备请求:包含 filename、content_type、size 和 content_sha256 的文件元数据 |
upload_id | 是 | string | 最终提交请求:准备接口返回的不透明上传批次标识 |
files[].index | 是 | integer string | 最终提交请求:准备接口返回的逐文件 index 和不透明 upload_intent;每个文件完成 R2 上传后再发送 |
source_language | 否 | string | 可选;选择 manga 模型时必填(例如 ja) |
target_language | 是 | string | 目标语言代码(例如 en) |
model | 否 | string | 模型;省略时使用 API 默认值 |
font | 否 | string | 字体;同时兼容旧参数 font_style |
响应参数
| 字段 | 类型 | 说明 |
|---|---|---|
status | integer | 应用状态码;成功时为 200 |
cost_ms | integer | 本次 API 请求的处理耗时(毫秒) |
request_id | string | 用于追踪本次 API 调用的请求标识 |
data | object | 请求被接受后返回的翻译任务标识 |
message | string | 成功的 API 响应固定为 success;不表示翻译任务已经完成 |
data.task_id | string | 任务标识 |
data.batch_id | string | 用于查询任务状态的批次标识 |
响应示例(JSON)
{
"status": 200,
"cost_ms": 125,
"request_id": "4b7370383cacccc7",
"data": {
"task_id": "00000000-0000-4000-8000-000000000001",
"batch_id": "00000000-0000-4000-8000-000000000001"
},
"message": "success"
}
错误响应参数
V2 请求失败时保留 HTTP 状态,并返回相同的五字段响应封装。
| 字段 | 类型 | 说明 |
|---|---|---|
status | integer | 实际的 HTTP 错误状态码 |
cost_ms | integer | 本次 API 请求的处理耗时(毫秒) |
request_id | string | 用于追踪本次 API 调用的请求标识 |
data | object | 仅包含稳定机器可读错误码的错误数据容器 |
message | string | 对外错误消息;不暴露内部诊断详情 |
data.code | string | 稳定的机器可读错误码 |
错误响应示例(JSON)
{
"status": 400,
"cost_ms": 1,
"request_id": "4b7370383cacccc7",
"data": {
"code": "PZ_API_ACCESS_BAD_REQUEST"
},
"message": "Invalid target language"
}
示例输入
Python3 示例
cURL 示例