---
title: "Search Hacker News"
method: GET
path: "/v1/hackernews/search"
tags: ["Hacker News"]
---

# Search Hacker News

`GET /v1/hackernews/search`

## Request

- Base URL: `https://api.scrapeatlas.com`
- URL: `https://api.scrapeatlas.com/v1/hackernews/search`
- Auth: API key in header `x-api-key`

Search Hacker News by relevance or by date. Use tags to select stories, comments, polls, Show HN, Ask HN, front-page items or an author; query is optional when tags or numericFilters select the results, so a tags-only request returns the current front page or one author’s items. Filter timestamps and counts with numericFilters, restrict matching to chosen attributes, disable typo tolerance for exact matching, and select a results page. Each successful request costs 1 account credit, including partial results. Failed requests cost 0 credits.

## Query parameters

- `query` string
- `tags` string
- `numericFilters` string
- `sortBy` 'relevance' | 'date'
- `typoTolerance` 'true' | 'false'
- `restrictSearchableAttributes` string
- `includeChildren` 'true' | 'false'
- `hitsPerPage` string
- `page` string

## Response `200`

Inspect the response status and failure or coverage fields.

- union
  - object
    - `requestId` string, uuid, required
    - `accounting` object, required
      - `upstreamRequests` integer, required
      - `responseBytes` integer, required
      - `durationMs` number, required
    - `success` true, required
    - `status` 'success' | 'partial', required
    - `sourceUrl` string, uri, required
    - `fetchedAt` string, date-time, required
    - `coverage` object, required
      - `source` 'public_api', required
      - `complete` boolean, required
      - `warnings` string[], required
    - `hits` object[], required
      - `objectID` string, required
      - `created_at` string, required
      - `created_at_i` integer, required
      - `updated_at` string
      - `author` string, nullable
      - `title` string, nullable
      - `url` string, nullable
      - `points` integer, nullable
      - `num_comments` integer, nullable
      - `story_id` integer, nullable
      - `story_title` string, nullable
      - `story_url` string, nullable
      - `story_text` string, nullable
      - `comment_text` string, nullable
      - `parent_id` integer, nullable
      - `children` integer[]
      - `_tags` string[], required
    - `nbHits` integer, required
    - `page` integer, required
    - `nbPages` integer, required
    - `hitsPerPage` integer, required
    - `exhaustiveNbHits` boolean, required
  - object
    - `requestId` string, uuid, required
    - `accounting` object, required
      - `upstreamRequests` integer, required
      - `responseBytes` integer, required
      - `durationMs` number, required
    - `success` false, required
    - `status` 'failed' | 'challenged', required
    - `failure` object, required
      - `code` 'invalid_request' | 'unauthorized' | 'not_found' | 'upstream_challenged' | 'upstream_rate_limited' | 'upstream_error' | 'unsupported_page' | 'response_too_large' | 'unsafe_redirect' | 'request_limit' | 'timeout' | 'busy' | 'payload_too_complex', required
      - `message` string, required

## Other responses

- `400`: Request could not complete; inspect error or failure.code.
- `401`: Request could not complete; inspect error or failure.code.
- `402`: Request could not complete; inspect error or failure.code.
- `403`: Request could not complete; inspect error or failure.code.
- `404`: Request could not complete; inspect error or failure.code.
- `408`: Request could not complete; inspect error or failure.code.
- `413`: Request could not complete; inspect error or failure.code.
- `429`: Request could not complete; inspect error or failure.code.
- `500`: Request could not complete; inspect error or failure.code.
- `502`: Request could not complete; inspect error or failure.code.
- `503`: Request could not complete; inspect error or failure.code.
- `504`: Request could not complete; inspect error or failure.code.

---

[API](https://skmtc.dev/scrapeatlas/apis/scrapeatlas-api.md) · [All operations](https://skmtc.dev/scrapeatlas/apis/scrapeatlas-api/llms.txt) · [OpenAPI document](https://skmtc.dev/scrapeatlas/apis/scrapeatlas-api/revisions/9ba049316894?raw)
