API Reference
任务
轮询任务状态并获取生成的图像。
任务状态
| 状态 | 含义 | 下一步 |
|---|---|---|
processing | 任务已受理,尚未完成。 | 继续轮询。 |
completed | 任务成功。 | 读取 output.data[].url。 |
failed | 任务未能成功完成。 | 检查 error;该任务不计费。 |
提交响应
提交后返回一个任务引用:
{
"id": "task_...",
"model": "gpt-image-2",
"status": "processing",
"created_at": 1789970508
}轮询任务
curl https://api.seedrouter.ai/v1/tasks/YOUR_TASK_ID \
-H "Authorization: Bearer $SEEDROUTER_API_KEY"请以较为克制的间隔轮询,例如每三秒一次,直到 status 变为 completed 或 failed。轮询过程中出现网络超时,并不意味着生成失败:请保留任务 ID 并继续查询。不要为了查看进度而再创建一个任务。
完整轮询示例
请在快速上手的 Python 提交示例之后运行这段代码。它使用返回的 task_id,最长等待十分钟。达到这个本地超时只会停止轮询;请保留 ID 并继续查询同一个任务。
import time
print(f"Task ID: {task_id}")
deadline = time.monotonic() + 600
while time.monotonic() < deadline:
result = requests.get(
f"https://api.seedrouter.ai/v1/tasks/{task_id}",
headers={"Authorization": f"Bearer {os.environ['SEEDROUTER_API_KEY']}"},
timeout=30,
)
result.raise_for_status()
task = result.json()
if task["status"] == "completed":
for image in task["output"]["data"]:
print(image["url"])
break
if task["status"] == "failed":
raise RuntimeError(task["error"]["message"])
time.sleep(3)
else:
raise TimeoutError(f"Still waiting. Resume polling task {task_id}.")已完成的任务
已完成的任务会返回托管的图像 URL 和用量:
{
"id": "task_...",
"model": "gpt-image-2",
"status": "completed",
"created_at": 1789970508,
"finished_at": 1789970538,
"output": {
"created": 1789970532,
"data": [{"url": "https://static.seedrouter.ai/media/tasks/task_example/0.png"}],
"usage": {
"input_tokens": 29,
"output_tokens": 196,
"total_tokens": 225
}
}
}| 字段 | 含义 |
|---|---|
id | 请保留该 ID 用于后续查询。 |
status | processing、completed 或 failed。 |
created_at、finished_at | 以秒为单位的 Unix 时间戳;处理过程中完成时间为空或为零。 |
output.data[].url | 生成的图像 URL,任务完成后可用。 |
output.usage | 在可获取时返回的 token 用量。明细对象中可能包含文本和图像的 token 数。 |
error | 任务失败时的结构化错误。 |
本 API 采用异步任务交付方式。它不是同步 Images SDK 的替代品;不支持 stream 和 partial_images。
