HN Who is Hiring Scrape
Configured with Airtable, Chain LLM, Filter, HTTP Request, and additional nodes. Review the connections and setup before adapting this template.
Node categories in this workflow
- Trigger
- Transform
- AI & models
- Web / API
- Routing
- Code
- Data store
Icons describe general node roles, inferred from node types. Inspect the parameters for the configured action.
Drag to pan; use + and − to zoom. Reconstructed from the exported node positions; nothing runs here. Dashed lines represent non-main connections. Full node names and notes appear below.
How it works
The exported workflow contains the following configured nodes. Their connections are shown above; inspect the JSON for the complete logic, expressions, and external actions.
| Node | Category | Type | Operation |
|---|---|---|---|
| When clicking ‘Test workflow’ | Trigger | Manual Trigger | See node parameters |
| Split Out | Transform | Split Out | See node parameters |
| OpenAI Chat Model | AI & models | OpenAI Chat Model | See node parameters |
| Structured Output Parser | Transform | Output Parser Structured | See node parameters |
| Search for Who is hiring posts | Web / API | HTTP Request | POST |
| Get relevant data | Transform | Edit Fields | See node parameters |
| Get latest post | Routing | Filter | See node parameters |
| Split out children (jobs) | Transform | Split Out | See node parameters |
| Trun into structured data | AI & models | Chain LLM | See node parameters |
| Extract text | Transform | Edit Fields | See node parameters |
| Clean text | Code | Code | See node parameters |
| Limit for testing (optional) | Transform | Limit | See node parameters |
| Write results to airtable | Data store | Airtable | create |
| HI API: Get the individual job post | Web / API | HTTP Request | See node parameters |
| HN API: Get Main Post | Web / API | HTTP Request | See node parameters |
Setup
- Download the JSON and import it into an isolated n8n instance. Leave the workflow inactive.
- Connect your own credentials through n8n’s credential store. Replace
REPLACE_WITH_*values with your resource identifiers. - Inspect API destinations, Code nodes, database queries, file paths, and outbound actions.
- Run with synthetic data and harmless destinations. Enable triggers only after checking the actual outputs.
Requirements
An n8n instance with the listed node types and compatible versions. Service-connected workflows may require accounts, credentials, or paid APIs.
Credential types declared in the source
airtableTokenApihttpHeaderAuthopenAiApi
Workflow notes
Go to https://hn.algolia.com
Go to https://hn.algolia.com
- filter by "Ask HN: Who is hiring?" (important with quotes for full match)
- sort by date
- Chrome Network Tab > find API call > click "Copy as cURL"
- n8n HTTP node -> import cURL and paste
- I've set the API key as Header Auth so you will have to do the above yourself to make this work
Go to HN API
Go to HN API
https://github.com/HackerNews/API
We'll need following endpoints:
- For example, a story: https://hacker-news.firebaseio.com/v0/item/8863.json?print=pretty
- comment: https://hacker-news.firebaseio.com/v0/item/2921983.json?print=pretty
Data Structure
Data Structure
We use Openai GPT-4o-mini to transform the raw data in a unified data structure. Feel free to change this.
{
"company": "Name of the hiring company",
"title": "Job title/role being advertised",
"location": "Work location including remote/hybrid status",
"type": "Employment type (Full-time, Contract, etc)",
"salary": "Compensation details if provided",
"description": "Main job description text including requirements and team info",
"apply_url": "Direct application/job posting URL",
"company_url": "Company website or careers page"
}
Clean the result
Clean the result
{
"title": "Ask HN: Who is hiring? (February 2025)",
"createdAt": "2025-02-03T16:00:43Z",
"updatedAt": "2025-02-17T08:35:44Z",
"storyId": "42919502"
},
{
"title": "Ask HN: Who is hiring? (January 2025)",
"createdAt": "2025-01-02T16:00:09Z",
"updatedAt": "2025-02-13T00:03:24Z",
"storyId": "42575537"
},
Hacker News - Who is Hiring Scrape
Hacker News - Who is Hiring Scrape
In this template we setup a scraper for the monthly HN Who is Hiring post. This way we can scrape the data and transform it to a common data strcutre.
First we use the Algolia Search provided by hackernews to drill down the results.
We can use the official Hacker News API to get the post data and also all the replies!
This will obviously work for any kind of post on hacker news! Get creative 😃
All you need is an Openai Account to structure the text data and an Airtable Account (or similar) to write the results to a list.
Copy my base https://airtable.com/appM2JWvA5AstsGdn/shrAuo78cJt5C2laR
HN Who is Hiring Scrape
HN Who is Hiring Scrape
Purpose and structure
This folder contains the HN Who is Hiring Scrape workflow. Its executable nodes use airtable, chainLlm, code, filter, httpRequest, limit, lmChatOpenAi, manualTrigger, outputParserStructured, set, splitOut. The table and connection map below are derived from the JSON, not an inferred guarantee of behavior.
Setup
Import inactive. Configure your own credentials and replace REPLACE_WITH_* values. Review external destinations and Code nodes before running.
Entry points
When clicking ‘Test workflow’
Verification
Sanitized source candidate; not runtime-tested. This overview is generated from node metadata. Read the folder README for the connection map, credential types, and license.
Attribution
https://github.com/Zie619/n8n-workflows/blob/94007c1445d9258a7da116646b79473e7c7c3282/workflows/Splitout/1880_Splitout_Code_Automation_Webhook.json MIT; preserve source notices.