크롤링 봇 전체 데이터 조회 V4

GET www.hashscraper.com/v4/api/schedules/{schedule_id}/results

특정 크롤링 봇의 모든 데이터셋에서 수집된 결과를 페이지 단위로 조회합니다.

한 번에 최대 limit건(기본 100, 최대 1000)을 반환합니다. 응답의 next_cursor 값을 다음 요청의 cursor로 전달해 다음 페이지를 이어서 조회합니다.

여러 데이터셋의 결과가 함께 반환되며, 각 결과는 어느 데이터셋에 속하는지 schedule_result_id 필드로 식별됩니다.

반환되는 컬럼은 크롤링 봇마다 다르며, 해당 크롤링 봇의 결과 컬럼 설정에 따라 결정됩니다. since 파라미터로 특정 시각 이후 수집된 데이터만 조회할 수 있으며, 모든 시각은 한국 시간대(Asia/Seoul) 기준입니다. since와 cursor는 함께 사용할 수 있습니다.

본문 텍스트 컬럼이 포함된 크롤링 봇은 큰 limit으로 호출 시 응답 크기가 수십 MB까지 커질 수 있습니다. 그런 크롤링 봇은 작은 limit과 cursor 페이지네이션을 권장합니다.

요청 파라미터

  • Authorization: Header
    해시스크래퍼 API 키. Bearer <api_key> 형식으로 전달합니다.
    예시 Bearer YOUR_API_KEY
  • schedule_id: String (path)
    조회할 크롤링 봇의 ID. URL 경로의 {schedule_id}로 전달합니다. 봇 ID는 봇 상세 페이지의 작업 → 봇 ID 복사하기에서 복사할 수 있습니다.
    예시 8f3a7c1e9b5d24f6
  • sorting: optional String
    수집 시각 기준 정렬 방향. 페이지네이션 도중에 변경하지 마세요. cursor의 적용 방향이 함께 뒤집힙니다.
    기본값 asc 허용값 asc, desc
  • cursor: optional Integer
    응답의 next_cursor 값을 그대로 다음 요청에 전달. 현재 sorting 방향에 맞춰 적용됩니다.
  • since: optional String
    지정한 시각(이 시각 포함) 이후에 생성된 결과만 조회합니다. %Y-%m-%d %H:%M:%S 형식, 한국 시간대 기준.
    예시 2026-05-06 00:00:00
  • limit: optional Integer
    한 페이지당 최대 결과 수.
    기본값 100 허용값 1 ~ 1000

응답 필드

  • result: String
    요청 처리 결과.
    허용값 success, error
  • version: String
    API 버전.
    예시 v4
  • request_id: String
    요청 추적용 ID.
    예시 req_5a8c1f1c-...
  • elapsed_sec: Float
    응답 생성에 걸린 시간(초 단위 Float).
    예시 0.0178
  • count: Integer
    이 응답에 포함된 결과 수.
  • next_cursor: Integer | null
    다음 페이지 조회 시 cursor로 전달할 값. null이면 마지막 페이지입니다.
  • data: Array<Object>
    수집 결과 배열.
    • id: Integer
      결과 레코드의 고유 ID.
    • schedule_result_id: Integer
      이 레코드가 속한 데이터셋의 ID.
    • created_at: String (ISO 8601)
      수집 시각 (ISO 8601, Asia/Seoul).
    • updated_at: String (ISO 8601)
      최종 갱신 시각 (ISO 8601, Asia/Seoul). 수집 결과는 보통 수정되지 않아 created_at과 동일합니다.
    • <dynamic fields>: Any
      크롤링 봇마다 다른 동적 필드. 키 이름은 해당 크롤링 봇의 결과 컬럼 설정에 따라 결정됩니다. 값이 null일 수 있으며(워커가 채우지 못한 컬럼), 시간 컬럼의 표기는 워커별로 다르며 top-level created_at처럼 ISO 8601(+09:00 TZ)을 보장하지 않습니다(예: "2026-05-21 10:34:12").

에러 응답

  • MISSING_API_KEY
    Authorization 헤더가 없거나 형식이 올바르지 않습니다. Authorization: Bearer <api_key> 형태로 전달하세요. (HTTP 401)
    {
      "result": "error",
      "version": "v4",
      "request_id": "req_5a8c1f1c-...",
      "code": "MISSING_API_KEY",
      "message": "API key is missing.",
      "elapsed_sec": 0.0008,
      "details": { "hint": "Send `Authorization: Bearer <api_key>` header." }
    }
  • INVALID_API_KEY
    전달된 API 키와 일치하는 사용자가 없습니다. (HTTP 401)
    {
      "result": "error",
      "version": "v4",
      "request_id": "req_5a8c1f1c-...",
      "code": "INVALID_API_KEY",
      "message": "API key is invalid.",
      "elapsed_sec": 0.0011
    }
  • SCHEDULE_NOT_FOUND
    전달된 ID로 크롤링 봇을 찾을 수 없거나 접근 권한이 없습니다. (HTTP 404)
    {
      "result": "error",
      "version": "v4",
      "request_id": "req_5a8c1f1c-...",
      "code": "SCHEDULE_NOT_FOUND",
      "message": "Schedule not found.",
      "elapsed_sec": 0.0021,
      "details": { "resource": "schedule", "id": "8f3a7c1e9b5d24f6" }
    }
  • INVALID_PARAM (sorting)
    sorting 값이 asc 또는 desc가 아닙니다. (HTTP 400)
    {
      "result": "error",
      "version": "v4",
      "request_id": "req_5a8c1f1c-...",
      "code": "INVALID_PARAM",
      "message": "Invalid sorting parameter.",
      "elapsed_sec": 0.0014,
      "details": { "param_name": "sorting", "allowed": ["asc","desc"] }
    }
  • INVALID_PARAM (since)
    since 값의 포맷이 올바르지 않거나 파싱할 수 없습니다. (HTTP 400)
    {
      "result": "error",
      "version": "v4",
      "request_id": "req_5a8c1f1c-...",
      "code": "INVALID_PARAM",
      "message": "Invalid since parameter.",
      "elapsed_sec": 0.0014,
      "details": { "param_name": "since", "value": "not-a-date" }
    }

관련 가이드

요청 예시
  • cURL
  • Ruby
  • Python
  • NodeJS
  • PHP
  • Java
옵션 파라미터
응답 예시 200
{
  "result": "success",
  "version": "v4",
  "request_id": "req_5a8c1f1c-9b2d-4e7c-9abf-3f7e0a4d1b21",
  "elapsed_sec": 0.0192,
  "count": 3,
  "next_cursor": 26284152,
  "data": [
    {
      "id": 26283699,
      "schedule_result_id": 239758028,
      "created_at": "2026-05-06T16:20:19+09:00",
      "updated_at": "2026-05-06T16:20:19+09:00",
      "제목": "함께할 개발자 모집 (C#)",
      "회사명": "에딤스 주식회사",
      "URL": "https://www.saramin.co.kr/..."
    },
    {
      "id": 26283700,
      "schedule_result_id": 239758028,
      "created_at": "2026-05-06T16:20:19+09:00",
      "updated_at": "2026-05-06T16:20:19+09:00",
      "제목": "백엔드 개발자",
      "회사명": "(주)텍스트웨이",
      "URL": "https://www.saramin.co.kr/..."
    },
    {
      "id": 26284152,
      "schedule_result_id": 239758029,
      "created_at": "2026-05-07T09:00:14+09:00",
      "updated_at": "2026-05-07T09:00:14+09:00",
      "제목": "함께할 개발자 모집 (C#)",
      "회사명": "에딤스 주식회사",
      "URL": "https://www.saramin.co.kr/..."
    }
  ]
}