주기 실행 결과 V5 (beta)
주기의 예정 회차마다 제때 돌았는지 확인합니다.
주기가 도는 약속 시각(회차)마다 돌았는지 · 건너뛰었는지 · 빠졌는지 · 아직인지를 봅니다. 화면의 "주기 실행 결과"와 같은 근거입니다. 이 경로는 여러 주기 기능이 열린 계정에서만 쓸 수 있습니다(닫혀 있으면 404 PLAN_NOT_FOUND).
엔드포인트
-
GET
/v5/api/plans/{plan_id}/runs회차 목록(최신순) + 상태별 개수
회차 목록
쿼리: state(ran·skipped·missed·upcoming), from·to(예정 시각 범위, ISO 8601 또는 YYYY-MM-DD), cursor·limit. 기본 범위는 최근 14일, 범위는 최대 31일입니다. 최신순이며 앞으로 올 회차가 맨 앞에 있습니다. next_cursor는 예정 시각(epoch 초)이고, 그대로 cursor로 넘기면 그보다 앞선 회차를 돌려줍니다. counts는 거르기와 상관없이 그 범위 전체의 개수입니다.
요청 예시
curl 'https://www.hashscraper.com/v5/api/plans/512/runs?from=2026-09-01&to=2026-10-04&state=skipped&limit=50' \
-H 'Authorization: Bearer YOUR_API_KEY'
응답 예시 200
{
"result": "success",
"version": "v5",
"request_id": "req_5a8c1f1c-9b2d-4e7c-9abf-3f7e0a4d1b21",
"elapsed_sec": 0.0123,
"count": 5,
"next_cursor": null,
"data": {
"plan_id": "512",
"source": "ledger",
"from": "2026-09-01T00:00:00+09:00",
"to": "2026-10-04T23:59:59+09:00",
"counts": {
"ran": 1,
"skipped": 1,
"missed": 1,
"upcoming": 2
},
"runs": [
{
"scheduled_at": "2026-10-12T09:00:00+09:00",
"state": "upcoming",
"reason": null,
"dataset_id": null
},
{
"scheduled_at": "2026-10-05T09:00:00+09:00",
"state": "upcoming",
"reason": null,
"dataset_id": null
},
{
"scheduled_at": "2026-09-28T09:00:00+09:00",
"state": "ran",
"reason": null,
"dataset_id": 239758028
},
{
"scheduled_at": "2026-09-21T09:00:00+09:00",
"state": "skipped",
"reason": "insufficient_credit",
"dataset_id": null
},
{
"scheduled_at": "2026-09-14T09:00:00+09:00",
"state": "missed",
"reason": "expired",
"dataset_id": null
}
]
}
}상태와 이유
| state | reason | 뜻 |
|---|---|---|
ran | — | 돌았습니다. dataset_id가 그 수집입니다. |
skipped | already_running | 앞선 수집이 진행 중이라 건너뛰었습니다. |
skipped | insufficient_credit | 크레딧이 부족해 건너뛰었습니다. |
skipped | ticket_expired·no_service_ticket·service_ticket_invalid | 이용권 문제로 건너뛰었습니다. |
missed | expired | 너무 늦어 닫혔습니다. |
missed | not_recorded | 실행기가 기록하지 못했습니다. |
upcoming | — | 아직입니다. 앞으로 올 회차와, 막 지나 결과를 기다리는 회차(약 10분)를 포함합니다. |
판정 근거 source
응답의 source는 이 주기를 어떤 근거로 판정했는지 알려 줍니다.
| source | 뜻 |
|---|---|
ledger | 주기 실행기가 돌리는 주기. 회차 기록을 읽습니다. 기록이 없는 지나간 예정 시각은 missed입니다. |
screen | 옛 방식으로 도는 주기 1. 데이터셋 시각과 대조해 판정합니다. 건너뛴 이유의 근거가 없어 skipped는 나오지 않습니다. |
none | 회차가 없는 주기(조건을 따로 정했는데 아직 실행기가 돌지 않는 주기). runs는 빈 배열입니다. |
알아 둘 한계
- 앞선 수집과 겹쳐 건너뛴 회차의 근거는 2일만 남습니다. 이틀이 지나면 같은 회차가
skipped가 아니라missed로 보입니다. - 점검 중이라 건너뛴 회차는 근거가 남지 않아
missed(expired)로 보입니다. - 주기를 켠 뒤·고친 뒤의 회차만 셉니다. 꺼져 있던 동안은 알 수 없습니다.