Greenhouse Jobs Scraper
Pricing
from $1.50 / 1,000 job items
Greenhouse Jobs Scraper
Greenhouse jobs scraper for any company board via the official public Job Board API: every pay range, departments, offices and optional application questions. Schedule changes mode for only new, updated and closed jobs. $1.50 per 1,000 jobs. Unofficial; not affiliated with Greenhouse.
Pricing
from $1.50 / 1,000 job items
Rating
0.0
(0)
Developer
Tallow Lane Labs
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Security
Limited permissionsShare
Greenhouse Jobs Scraper: pay ranges and new-job alerts from any Greenhouse job board
Greenhouse jobs scraper for any company board (Anthropic, Airbnb, Figma, Databricks, Discord and thousands more). Scrape Greenhouse job postings from Greenhouse's official public Job Board API, with every published pay range, departments, offices and, optionally, the application questions. Schedule it in changes mode and each run returns only new, updated and closed jobs.
What monitoring costs: watching one 100-job board daily in changes mode costs about $0.23 a month (about 3 changed jobs a day; $0.045 if nothing changes; plus a one-time $0.15 baseline on the first run), versus about $4.55 a month to download the full board every day as a snapshot. These prices apply from Nov 3, 2026, 10:57 AM ET, when the per-run start fee dropped from $0.005 to $0.0005; before that, the same watch cost about $0.36 a month.
By Tallow Lane Labs. Unofficial tool; not affiliated with, endorsed by or sponsored by Greenhouse Software, Inc.
Why this one
- Every pay range, not just the first.
payRangeslists each range the company publishes (per location or level) with currency, pay period and the employer's pay note;salaryholds the first for filtering. - Deep Greenhouse fields:
departmentsandofficeswith IDs and parent IDs (rebuild the org tree),requisitionId,updatedAt,educationRequirement,applicationDeadline. - Application questions (opt-in, no extra charge): spot visa-sponsorship, clearance or relocation questions.
- Change alerts.
changesmode returns onlynew,updated(withchangedFieldsandprevious) andremovedjobs, with an outage guard against false mass removals. - Pay filters:
salaryOnlyandminSalary. - Paste anything:
boards.greenhouse.io/stripe,job-boards.greenhouse.io/..., EU boards, embed URLs with?for=,stripe,greenhouse:stripe, or a careers page that embeds Greenhouse. - Official API, no proxies, no browser. Runs in seconds at 256–512 MB.
Use cases
- Pay-transparency salary benchmarking across companies, levels and locations.
- Sales and investor signals: new teams and roles at target accounts.
- Recruiting and sourcing alerts, filtered by keyword, department or location.
- Job seekers: alerts for remote roles above a pay floor, plus which jobs ask about sponsorship.
- Competitive hiring intel and labor-market research.
- Job boards and aggregators: a clean, normalized Greenhouse feed.
Quick start
- Click Try for free and run the example board, or replace it with your own.
- Add boards, e.g.
anthropic,https://boards.greenhouse.io/airbnb,greenhouse:figma. - The default
mode: snapshotreturns the full list each run; for alerts, setmode: changesand schedule daily.
Input example
{"boards": ["https://boards.greenhouse.io/airbnb", "figma", "greenhouse:anthropic"],"mode": "changes","keywords": ["engineer", "data"],"minSalary": 150000}
Main options: boards (leave empty for a 5-job demo), mode, changeTypes, emitBaseline, filters (keywords, excludeKeywords, locations, departments, workplaceTypes, postedWithinDays, salaryOnly, minSalary), maxJobsPerBoard, includeDescriptions, descriptionFormats, redactContactInfo, includeApplicationQuestions, stateStoreName / stateKeyPrefix. See the Input tab for all fields.
Output example
Real record from a test run on Discord's board (description and questions shortened):
{"recordType": "job","id": "greenhouse:discord:8806482002","ats": "greenhouse","board": "discord","companyName": "Discord","jobId": "8806482002","requisitionId": "R-107406","title": "Commercial Policy Lead","department": "Policy","location": "San Francisco Bay Area","salary": { "min": 192000, "max": 216000, "currency": "USD", "interval": "year", "text": "Base Salary" },"postedAt": "2026-09-15T16:52:11.000Z","updatedAt": "2026-10-21T00:27:20.000Z","url": "https://job-boards.greenhouse.io/discord/jobs/8806482002","departments": [{ "id": 4054683002, "name": "Policy", "parentId": 4094263002 }],"offices": [{ "id": 4082816002, "name": "Remote (US)", "location": null, "parentId": null }],"payRanges": [{ "title": "Base Salary", "min": 192000, "max": 216000, "currency": "USD", "interval": "year","note": "The base salary range for this full-time position is listed below. This position will also be eligible for equ ..." }],"applicationQuestions": [{ "label": "Are you legally authorized to work in the United States for our Company?", "required": true,"fields": [{ "name": "question_38318892002", "type": "multi_value_single_select", "options": ["Yes", "No"] }] }],"descriptionText": "Discord has a highly engaged community of millions of daily active users ...","changeType": "baseline","firstSeenAt": "2026-10-28T18:21:50.127Z","detectedAt": "2026-10-28T18:21:50.127Z"}
updatedrecords addchangedFieldsandprevious;removedrecords carry the last known values pluslastSeenAt.- Board errors are
recordType: "error"rows, never charged.RUN_SUMMARYhas per-board counts. - Dataset views: Jobs & changes, Changes only, Pay & offices, Board errors.
Pricing (pay per event)
| Event | Price | When |
|---|---|---|
| Job item | $0.0015 | Each job in snapshot mode, and each baseline job on a board's first changes run |
| Job change | $0.002 | Each new, updated or removed record later |
| Board check | $0.001 | Each board checked per run (per started 1,000 jobs) |
| Actor start | $0.0005 | Once per run (same at 256, 512 or 1,024 MB). Was $0.005 for runs started before Nov 3, 2026, 10:57 AM ET |
Not charged: error rows, failed boards, filtered-out jobs, application questions.
- 6 companies, no changes: $0.0065 per run (about $0.20 a month daily).
- Anthropic's full board (about 680 jobs) as a snapshot: about $1.02.
- 50 companies (~7,500 jobs): baseline about $11.30 once (or $0.0505 with
emitBaseline: false), then ~$0.35 on a day with 150 changes. - Set Apify's maximum cost per run for a hard cap; the Actor stops cleanly and saves its state.
Integrations
- Make, Zapier, n8n: Apify's official app/node → Run Actor
tallowlanelabs/greenhouse-jobs-scraper→ send each new job to Slack, Google Sheets, Airtable or your CRM. - Apify API and clients:
POST https://api.apify.com/v2/acts/tallowlanelabs~greenhouse-jobs-scraper/run-sync-get-dataset-items, or
from apify_client import ApifyClientclient = ApifyClient("<YOUR_APIFY_TOKEN>")run = client.actor("tallowlanelabs/greenhouse-jobs-scraper").call(run_input={"boards": ["anthropic"], "mode": "snapshot", "salaryOnly": True})jobs = list(client.dataset(run["defaultDatasetId"]).iterate_items())
- AI agents (MCP):
https://mcp.apify.com?tools=tallowlanelabs/greenhouse-jobs-scraperlets an AI assistant answer "what does Airbnb pay data scientists?" from live data. - Webhooks, Slack, Google Sheets: on the Actor's Integrations tab.
FAQ
How do I find a company's board name? It's the part after boards.greenhouse.io/ or job-boards.greenhouse.io/. Or paste the careers page and the Actor finds it.
Do all jobs have pay? Only if the company publishes it. On Oct 29, 2026, for example, 598 of Anthropic's 680 jobs and 156 of Airbnb's 191 had pay ranges; Stripe's 729 had none.
Why is workplaceType sometimes null? Greenhouse has no remote/hybrid field; we infer it from the location text. Employment type isn't published at all.
How is the pay period worked out? Greenhouse doesn't send one, so interval comes from the range title or note, otherwise from the amount; null if unclear.
Do application questions cost extra? No, but they add one request per job, so runs are slower.
Is it legal? It reads Greenhouse's public, unauthenticated Job Board API (developers.greenhouse.io/job-board.html), which exists so anyone can display a company's published jobs. Internal metadata that can name hiring managers is dropped. Use the data in line with Greenhouse's and employers' terms and laws such as GDPR and CCPA.
Limits
Public postings only; pay only when published; workplaceType inferred. Memory: 512 MB covers most watch lists; use 1,024 MB if any board has over 5,000 jobs (RUN_SUMMARY.memory advises).
Support
Open an issue on the Issues tab or email Tallow Lane Labs at wdeornellas+tallowlanelabs@gmail.com.