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 になるまで、3 秒ごとなど控えめな間隔でポーリングしてください。ポーリング中のネットワークタイムアウトは生成の失敗を意味しません。タスク ID を保持して確認を再開してください。進捗確認のために別のタスクを作成しないでください。
ポーリングの完全な例
クイックスタートの Python 送信例のあとに実行してください。返された task_id を使い、最大 10 分間待機します。このローカルの期限に達してもポーリングが止まるだけです。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 タイムスタンプ。処理中は完了時刻は未設定または 0 です。 |
output.data[].url | 生成された画像の URL。完了時に利用できます。 |
output.usage | 利用可能な場合に報告されるトークン使用量。詳細オブジェクトにはテキストと画像のトークン数が含まれることがあります。 |
error | 失敗したタスクの構造化エラー。 |
この API は非同期のタスク配信方式です。同期的な Images SDK の代替ではなく、stream と partial_images には対応していません。
