# Hacker News API: List Who is hiring posts

> Lists top-level job posts from a monthly Ask HN: Who is hiring? thread in thread order, with post text and the company, roles, location, work arrangement, salary and application contact inferred from each post.

Unofficial. Not affiliated with or endorsed by Hacker News.

- Page: https://fous.com/methods/news.ycombinator.com/list-hiring-posts
- Method: `news.ycombinator.com/list_hiring_posts`, version 1
- Website: news.ycombinator.com
- Returns: thread title and link; per post: company, roles, location, work arrangement, salary, post text, application contact, posted date, comment link
- Effect: read (it gets data and changes nothing)
- Sign-in: none needed
- Cost: 1 credit per completed run (1¢ with pay as you go); failed runs are free
- Verified: Nov 2, 2026

## Inputs

| Field | Type | Required | In the run below | Description |
|---|---|---|---|---|
| `month` | string | no | `"September 2026"` | Thread month, such as 2026-09 or September 2026. Leave blank for the latest available thread. Default "". |
| `keywords` | string | no | `"remote Python"` | Words that must all appear in the full post, ignoring case; for example, remote Python. Default "". |
| `max_results` | integer | no | `50` | Maximum number of matching posts to return, from 1 to 500; for example, 50. Default 50. |
| `remote_only` | boolean | no | `true` | Only include posts offering remote work; for example, true. Default false. |

## Output

From a run on Oct 31, 2026, shortened. Its input:

```json
{
  "month": "September 2026",
  "keywords": "remote Python",
  "max_results": 50,
  "remote_only": true
}
```

Its output:

```json
{
  "job_posts": [
    {
      "roles": "Multiple Engineering + Product Roles",
      "salary": null,
      "company": "Snout",
      "location": "Remote US or Ontario, Canada",
      "post_text": "Snout https://snout.com/ | Multiple Engineering + Product Roles | Remote US or Ontario, Canada | Full Time\nJoin us at Snout on our mission to ensure no one ever has to make a health decision for their pet based on the cash in their bank account. Snout plans pay for 100% of routine veterinary care, u…",
      "posted_date": "2026-09-01",
      "comment_link": "https://news.ycombinator.com/item?id=49522989",
      "work_arrangement": "remote",
      "application_contact": "https://jobs.gem.com/snoutd"
    },
    {
      "roles": "AI, Full Stack, Frontend, SRE & Cloud Automation",
      "salary": null,
      "company": "GovStar",
      "location": "Remote (U.S. — Eastern/Central Time)",
      "post_text": "GovStar | https://www.govstar.us | Remote (U.S. — Eastern/Central Time) | AI, Full Stack, Frontend, SRE & Cloud Automation | U.S. Citizens\nGovStar is hiring 5 engineers to help build secure, production-grade AI and advanced analytics capabilities supporting U.S. national security missions.\n• AI Engi…",
      "posted_date": "2026-09-01",
      "comment_link": "https://news.ycombinator.com/item?id=49524943",
      "work_arrangement": "remote",
      "application_contact": "nicholas.hanson@govstar.us"
    },
    {
      "roles": "Senior/Staff Backend Engineer, Backend Platform",
      "salary": null,
      "company": "Close",
      "location": "Remote (US)",
      "post_text": "Remote (US) Close ( https://close.com ) | Senior/Staff Backend Engineer, Backend Platform | Full-time\nWe're bootstrapped, profitable, and 130 people, all remote, building an AI-powered CRM. We're spinning up a new Backend Platforms team and you'd be one of the first hires — unusual influence over wh…",
      "posted_date": "2026-09-08",
      "comment_link": "https://news.ycombinator.com/item?id=49615973",
      "work_arrangement": "remote",
      "application_contact": "https://jobs.ashbyhq.com/close/5bf4629b-d2ee-4129-980f-e31b96185c9c"
    }
  ],
  "thread_link": "https://news.ycombinator.com/item?id=49522897",
  "thread_title": "Ask HN: Who is hiring? (September 2026)"
}
```

## Run it

From code, with a Fous API key in `FOUS_API_KEY`; the answer's `data` holds the output:

```bash
curl https://api.fous.com/v1/runs \
  -H "Authorization: Bearer $FOUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"method":"news.ycombinator.com/list_hiring_posts","input":{"month":"September 2026","keywords":"remote Python","max_results":50,"remote_only":true}}'
```

From an AI agent connected to the Fous MCP server: its `run` with the same method and input. To connect one, give it `set up https://fous.com/SKILL.md`.

## Ask your agent

- Pull the job listings from this month's Ask HN: Who is hiring? thread and give me company, role, location, salary and how to apply for each
- Find remote-only Rust positions posted in the March 2025 Hacker News hiring thread, up to 30 results
- Which companies in the latest monthly hiring thread are looking for a senior backend engineer with Go? Include pay ranges if listed
- I need up to 200 job posts from the November 2024 Who is hiring thread on news.ycombinator.com that mention machine learning and San Francisco
- Show me fully remote roles mentioning TypeScript and React from the 2025-06 hiring thread, with the contact email or application link for each

## Input schema

```json
{
  "type": "object",
  "properties": {
    "month": {
      "type": "string",
      "default": "",
      "description": "Thread month, such as 2026-09 or September 2026. Leave blank for the latest available thread."
    },
    "keywords": {
      "type": "string",
      "default": "",
      "description": "Words that must all appear in the full post, ignoring case; for example, remote Python."
    },
    "max_results": {
      "type": "integer",
      "default": 50,
      "maximum": 500,
      "minimum": 1,
      "description": "Maximum number of matching posts to return, from 1 to 500; for example, 50."
    },
    "remote_only": {
      "type": "boolean",
      "default": false,
      "description": "Only include posts offering remote work; for example, true."
    }
  }
}
```

## Output schema

```json
{
  "type": "object",
  "required": [
    "thread_title",
    "thread_link",
    "job_posts"
  ],
  "properties": {
    "job_posts": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "company",
          "roles",
          "location",
          "work_arrangement",
          "salary",
          "post_text",
          "application_contact",
          "posted_date",
          "comment_link"
        ],
        "properties": {
          "roles": {
            "type": [
              "string",
              "null"
            ],
            "description": "Job roles named in the post, if clear."
          },
          "salary": {
            "type": [
              "string",
              "null"
            ],
            "description": "Salary as written, if stated."
          },
          "company": {
            "type": [
              "string",
              "null"
            ],
            "description": "Company named in the post, if clear."
          },
          "location": {
            "type": [
              "string",
              "null"
            ],
            "description": "Location or geographic eligibility stated in the post, if clear."
          },
          "post_text": {
            "type": "string",
            "description": "Full post in plain text."
          },
          "posted_date": {
            "type": "string",
            "description": "Date the comment was posted."
          },
          "comment_link": {
            "type": "string",
            "description": "Link to the comment."
          },
          "work_arrangement": {
            "enum": [
              "remote",
              "onsite",
              "hybrid",
              null
            ],
            "type": [
              "string",
              "null"
            ],
            "description": "Remote, onsite, hybrid, or null when unclear."
          },
          "application_contact": {
            "type": [
              "string",
              "null"
            ],
            "description": "Application link or email address, if given."
          }
        }
      },
      "description": "Matching top-level posts, in thread order."
    },
    "thread_link": {
      "type": "string",
      "description": "Link to the monthly hiring thread."
    },
    "thread_title": {
      "type": "string",
      "description": "Title of the monthly hiring thread."
    }
  }
}
```

## See more

- [Hacker News API: Search stories](https://fous.com/methods/news.ycombinator.com/search-stories.md): Searches Hacker News stories or comments by words, date range and sort order. Comments include their parent story's website link when one exists; text-only stories have no website link.
- [Hacker News API: List stories](https://fous.com/methods/news.ycombinator.com/list-front-page.md): Lists current Hacker News stories in rank order from the top, newest, best, Ask HN, Show HN or jobs list.
- [Hacker News API: Search YC companies](https://fous.com/methods/ycombinator.com/search-companies.md): Searches the Y Combinator company directory by keyword, industry, batch, location, hiring and status, returning companies in directory order.
- [Hacker News API: Get discussion](https://fous.com/methods/news.ycombinator.com/get-discussion.md): Gets a Hacker News story and its comments in the order shown on the site. The story can be given as a discussion link or as words from its title. Deleted and flagged comments are left out.
- [Hacker News API: Get YC company profile](https://fous.com/methods/ycombinator.com/get-company.md): Looks up a Y Combinator company by name or YC company page link and returns its profile, founders, social links and open job count.
- [Remote OK API: Search remote jobs](https://fous.com/methods/remoteok.com/search-jobs.md): Searches Remote OK jobs by role or skill. Results can be filtered by listed region and by minimum annual USD salary.
- [Greenhouse API: List company jobs](https://fous.com/methods/boards.greenhouse.io/list-company-jobs.md): Lists open jobs on a company's Greenhouse job board, with optional department and location filters.
- [LinkedIn API: Search jobs](https://fous.com/methods/linkedin.com/search-jobs.md): Searches public LinkedIn job listings by keywords and location, with optional date, seniority, employment type and company filters.
- [All Hacker News methods](https://fous.com/methods/ycombinator.com.md)
