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는 지원하지 않습니다.
