查询任务
GET /v1/tasks/{id}
bash
curl https://api.llmapi.site/v1/tasks/8b17fd33b0e947a08cb417e81e9ea9da \
-H 'Authorization: Bearer YOUR_TASK_API_KEY'SSE 和轮询都受支持。使用轮询时,从 1 秒开始指数退避到 10 秒,并加入少量随机抖动,直到 status 为 succeeded、failed、timeout 或 canceled 之一。
响应 — 200 OK
json
{
"id": "8b17fd33b0e947a08cb417e81e9ea9da",
"status": "succeeded",
"modality": "image",
"model": "gpt-image-2",
"created_at": "2026-06-22T03:10:00Z",
"started_at": "2026-06-22T03:10:02Z",
"finished_at": "2026-06-22T03:10:42Z",
"estimated_cost": 0.1,
"actual_cost": 0.1,
"timeline": [
{ "status": "queued", "at": "2026-06-22T03:10:00Z" },
{ "status": "running", "at": "2026-06-22T03:10:02Z" },
{ "status": "succeeded", "at": "2026-06-22T03:10:42Z" }
],
"diagnostics": {
"requested_image_count": 2,
"actual_image_count": 1,
"image_count_mismatch": true,
"requested_image_size": "1K",
"actual_image_size": "2K",
"image_size_mismatch": true,
"size_capability": "upscaled",
"size_source": "requested",
"mismatch_reason": "image_count_and_size_mismatch",
"recorded_at": "2026-06-22T03:10:42Z"
},
"result": {
"data": [
{
"index": 0,
"kind": "image",
"url": "https://api.llmapi.site/api/v1/task-assets/8b17fd33b0e947a08cb417e81e9ea9da/0?expires=...",
"content_type": "image/png",
"size_bytes": 1048576
}
]
},
"assets": [
{
"index": 0,
"kind": "image",
"content_type": "image/png",
"size_bytes": 1048576,
"url": "https://api.llmapi.site/api/v1/task-assets/8b17fd33b0e947a08cb417e81e9ea9da/0?expires=..."
}
]
}| 字段 | 说明 |
|---|---|
status | 当前任务状态。 |
actual_cost | 最终扣费金额(美元),成功结算且金额非零时出现;失败、超时或取消不收费。 |
timeline | 按时间顺序排列的状态变更记录。 |
diagnostics | 图片结果诊断。上游返回数量或尺寸与请求不一致时,任务仍可为 succeeded,不一致原因记录在这里。 |
processing_error | 可选的结果处理异常摘要。资产保存失败时任务进入 failed 或 timeout;此时检查 code 和 message,不要依赖 assets。 |
result | 平台标准结果。data 使用转存后的资产,其他标准字段会保留;不会向普通用户返回 Provider 原始响应。 |
result.data | assets 的兼容镜像,方便只读取 result 的客户端使用。 |
assets | 通用结果资产列表,适用于图片、视频、音频和 3D 模型。 |
视频结果示例
视频成功后同样返回平台资产,并保留标准化时长:
json
{
"id": "75d9fb6592f64a75a4bd8f868db31752",
"status": "succeeded",
"modality": "video",
"model": "seedance-2-0-fast",
"estimated_cost": 0.75,
"actual_cost": 0.75,
"result": {
"duration": 5,
"data": [
{
"index": 0,
"kind": "video",
"content_type": "video/mp4",
"size_bytes": 8388608,
"url": "https://api.llmapi.site/api/v1/task-assets/75d9fb6592f64a75a4bd8f868db31752/0?expires=..."
}
]
},
"assets": [
{
"index": 0,
"kind": "video",
"content_type": "video/mp4",
"size_bytes": 8388608,
"url": "https://api.llmapi.site/api/v1/task-assets/75d9fb6592f64a75a4bd8f868db31752/0?expires=..."
}
]
}服务端会保存经过脱敏和大字段清理的上游终态响应,供管理员排障;普通任务 API 只返回上述平台标准 result。上游响应中的 token usage 当前不参与视频扣费。
通用资产字段
| 字段 | 说明 |
|---|---|
index | 任务内从 0 开始的稳定资产索引。 |
kind | 资产类型,例如 image、video、audio、model。 |
content_type | 服务端下载并校验后的实际 MIME 类型。 |
size_bytes | 实际文件大小。 |
url | 带签名的时效下载 URL。 |
metadata | 可选的稀疏媒体字段,只返回服务端白名单允许的通用元数据,不包含任意上游响应。 |
expires_at | 当前签名 URL 的失效时间。 |
配置完成的视频路线会将一个转存后的视频文件放在同一个 assets 字段中。稳定字段是 index、kind、content_type、size_bytes 和下载 URL。当前视频转存链路不会生成跨供应商统一的宽高、时长、帧率或音频 metadata。3D 暂无 Adapter。
资产 URL 为带签名的时效链接。如需稳定下载,请使用下载资产接口配合任务 API Key。对象存储内部 key 不是公共资产字段;不要依赖可选的 metadata 做路由或计费。
结果处理异常示例:
json
{
"status": "failed",
"processing_error": {
"code": "processing_failed",
"message": "Result asset processing failed"
}
}结果处理超过允许窗口时,processing_error.code 可能为 timeout。
错误码
| 状态码 | 原因 |
|---|---|
401 | API Key 缺失或无效。 |
403 | API Key 未启用任务 API。 |
404 | 任务不存在,或不属于当前 API Key。 |
503 | 任务 API 未启用或暂时不可用。 |