Data Set Results V4

GET www.hashscraper.com/v4/api/schedule_results/{schedule_result_id}/results

Returns the records collected in a single data set, paginated.

Returns up to limit records per call (default 100, max 1000). Pass the response's next_cursor back as the cursor on the next call to fetch the next page.

The returned columns differ per scraper and are determined by that scraper's result column configuration.

Use since to fetch only records created after a specific timestamp. All timestamps are in Korean local time (Asia/Seoul). since and cursor can be combined — cursor is applied within the since-filtered set.

Scrapers with large text/content columns can produce responses tens of MB in size at high limit values. Prefer smaller limit with cursor pagination for those scrapers.

Request Parameters

  • Authorization: Header
    HashScraper API key. Send it in the form Bearer <api_key>.
    Example Bearer YOUR_API_KEY
  • schedule_result_id: Integer (path)
    Data set ID to query. Pass the schedule_result_id from a collection response.
    Example 239758028
  • sorting: optional String
    Sort direction by record ID. Do not change mid-pagination — the cursor direction flips with it.
    Default asc Allowed asc, desc
  • cursor: optional Integer
    Pass the response's next_cursor back to fetch the next page. Applied in the current sorting direction (asc → id > cursor, desc → id < cursor).
  • since: optional String
    Fetch records created at or after this timestamp. Format %Y-%m-%d %H:%M:%S, Korean local time.
    Example 2026-05-06 00:00:00
  • limit: optional Integer
    Maximum records per page.
    Default 100 Allowed 1 ~ 1000

Response Fields

  • result: String
    Result of the request.
    Allowed success, error
  • version: String
    API version.
    Example v4
  • request_id: String
    Request trace ID.
    Example req_5a8c1f1c-...
  • elapsed_sec: Float
    Time the server took to produce the response, in seconds (Float).
    Example 0.0178
  • count: Integer
    Number of records in this response.
  • next_cursor: Integer | null
    Pass back as cursor on the next call. null means this is the last page.
  • data: Array<Object>
    Array of collected records.
    • id: Integer
      Unique ID of the record.
    • created_at: String (ISO 8601)
      Collection time (ISO 8601, Asia/Seoul).
    • updated_at: String (ISO 8601)
      Last update time (ISO 8601, Asia/Seoul). Collected results are rarely modified, so this is typically equal to created_at.
    • <dynamic fields>: Any
      Scraper-specific dynamic fields. Key names are determined by the scraper's result column configuration. Values may be null (columns the worker did not populate). Time columns may use scraper-specific formats that are not guaranteed to be ISO 8601 with timezone like the top-level created_at (e.g. "2026-05-21 10:34:12").

Error Responses

  • MISSING_API_KEY
    Missing or malformed Authorization header. Send as 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
    No user matches the provided API key. (HTTP 401)
    {
      "result": "error",
      "version": "v4",
      "request_id": "req_5a8c1f1c-...",
      "code": "INVALID_API_KEY",
      "message": "API key is invalid.",
      "elapsed_sec": 0.0011
    }
  • SCHEDULE_RESULT_NOT_FOUND
    No data set matches the ID, or the caller does not have access. (HTTP 404)
    {
      "result": "error",
      "version": "v4",
      "request_id": "req_5a8c1f1c-...",
      "code": "SCHEDULE_RESULT_NOT_FOUND",
      "message": "ScheduleResult not found.",
      "elapsed_sec": 0.0021,
      "details": { "resource": "schedule_result", "id": "999999" }
    }
  • INVALID_PARAM (sorting)
    sorting must be asc or 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 is malformed or unparseable. (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" }
    }

Related Guides

Example Request
  • cURL
  • Ruby
  • Python
  • NodeJS
  • PHP
  • Java
Optional
Example Response 200
{
  "result": "success",
  "version": "v4",
  "request_id": "req_5a8c1f1c-9b2d-4e7c-9abf-3f7e0a4d1b21",
  "elapsed_sec": 0.0178,
  "count": 3,
  "next_cursor": 26284152,
  "data": [
    {
      "id": 26283699,
      "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,
      "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,
      "created_at": "2026-05-06T16:52:49+09:00",
      "updated_at": "2026-05-06T16:52:49+09:00",
      "제목": "함께할 개발자 모집 (C#)",
      "회사명": "에딤스 주식회사",
      "회사 주소": "부산 사상구",
      "URL": "https://www.saramin.co.kr/..."
    }
  ]
}