API 문서

이미지 작업 조회

GET /v1/tasks/{id}

이미지 작업의 상태를 조회합니다. async: true 를 넘겼을 때만 필요하며, 기본 동기 호출은 응답에서 이미지를 바로 받습니다. 영상 작업은 여기서 처리하지 않으니 GET /v1/video/generations/{task_id} 를 사용하세요.

요청

bash
curl https://open.pikpikgo.com/v1/tasks/2608101909450810293847 \
  -H "Authorization: Bearer $PIKPIK_API_KEY"

응답

json
{
  "id": "2608101909450810293847",
  "object": "image.generation",
  "created": 1786000185,
  "model": "img-std-1",
  "status": "succeeded",
  "prompt": "비 내리는 사이버펑크 야간 거리, 네온 반사",
  "size": "16:9",
  "quality": "2k",
  "credits": 10,
  "error": "",
  "data": [
    { "url": "https://cdn.pikpikgo.com/ai/xxxx.png", "revised_prompt": "비 내리는 사이버펑크 야간 거리, 네온 반사" }
  ]
}

상태 흐름

status의미해야 할 일
queued접수됨, 작업자 대기 중계속 폴링
processing생성 중계속 폴링
succeeded완료data 에서 결과 주소를 읽고 폴링 중단
failed실패error 로 원인 확인 후 중단. 크레딧은 이미 환원됨

폴링 권장 사항

  • 이미지는 3초 간격이면 충분합니다(영상은 전용 엔드포인트에서 5초 간격). 더 촘촘히 해도 호출 제한만 소모될 뿐 빨라지지 않습니다.
  • 상한을 두세요(예: 이미지 10분, 영상 30분). 도달하면 타임아웃으로 처리하고 무한 루프는 만들지 마세요.
  • 프로세스를 계속 띄워둘 필요는 없습니다. 방치된 작업은 백그라운드 회수 처리가 마무리하고, 실패분은 크레딧을 돌려줍니다.
작업은 그것을 만든 계정만 조회할 수 있습니다. 남의 작업과 존재하지 않는 작업은 완전히 동일한 404를 반환합니다.