异步任务(视频 / MJ / 异步图)
耗时较长的生成(视频、Midjourney、异步图像)走任务接口:提交后立即拿到 task_id,再轮询状态直到成功或失败。
能力上线情况
任务接口已就绪,但具体某类任务(视频 / Midjourney 等)是否可用,取决于平台是否已开通对应能力。提交前请确认目标 task_type 已开通,或先用控制台「任务」页确认。
创建任务
POST https://gateway.mindproxy.ai/v1/tasksbash
curl https://gateway.mindproxy.ai/v1/tasks \
-H "Authorization: Bearer $TT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"task_type": "async_image",
"public_model": "flux-1-dev",
"prompt": "日落时分的未来城市",
"idempotency_key": "my-task-001"
}'| 字段 | 说明 |
|---|---|
task_type | 必填:video / midjourney / async_image |
public_model | 公开模型 ID(推荐填这个) |
prompt | 任务描述 |
idempotency_key | 幂等键(可选,强烈建议) |
input_assets_json | 输入素材(可选,JSON 对象,如参考图) |
metadata_json | 自定义元数据(可选) |
响应(HTTP 202 Accepted):
json
{
"task_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479",
"status": 1,
"request_id": "req_...",
"hold_id": "hold_..."
}拿到 task_id 后即可轮询。
查询任务状态
GET https://gateway.mindproxy.ai/v1/tasks/{task_id}json
{
"task_id": "f47ac10b-...",
"task_type": 3,
"status": 4,
"public_model": "flux-1-dev",
"result_assets_json": "{\"image_url\":\"https://.../image.png\",\"seed\":12345}",
"created_at": "2026-06-22T10:00:00Z",
"completed_at": "2026-06-22T10:02:00Z"
}成功后结果在 result_assets_json(字符串化的 JSON),常见字段:image_url / video_url / thumbnail_url / seed,具体取决于任务类型。
状态值
status 是数字枚举:
| 值 | 状态 | 含义 |
|---|---|---|
| 1 | CREATED | 已创建,待处理 |
| 2 | SUBMITTED | 已排队 |
| 3 | PROCESSING | 处理中 |
| 4 | SUCCEEDED | 成功,结果在 result_assets_json |
| 5 | FAILED | 失败,看 error_code / error_message |
| 6 | CANCELLED | 已取消 |
| 7 | EXPIRED | 已过期(超时 / TTL) |
| 8 | REFUNDED | 已退款(冻结释放,不计费) |
task_type 同样是枚举:1 = midjourney,2 = video,3 = async_image。
轮询建议
- 间隔 2–5 秒轮询一次,直到状态进入终态(4/5/6/7/8)。
- 也可用事件接口看进度(见下)。
任务事件
GET https://gateway.mindproxy.ai/v1/tasks/{task_id}/events?limit=50&offset=0json
{
"task_events": [
{
"task_event_id": "event-...",
"event_type": "created",
"status": 1,
"message": "task created",
"created_at": "2026-06-22T10:00:00Z"
}
]
}取消任务
POST https://gateway.mindproxy.ai/v1/tasks/{task_id}/canceljson
{ "reason": "用户取消" }取消、失败、过期都会释放冻结、不计费。
计费
任务在创建时预冻结,成功结算时按真实用量扣费;失败 / 取消 / 过期不扣费,冻结自动释放,不会留下卡住的余额。
完整流程
POST /v1/tasks提交,拿到task_id(status 1)。- 轮询
GET /v1/tasks/{task_id},状态走到 4(成功)或 5/6/7(失败 / 取消 / 过期)。 - 成功后从
result_assets_json取资产 URL。