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。
