Greenhouse Jobs Scraper - Job Boards by Company Name
Pricing
from $1.50 / 1,000 job records
Greenhouse Jobs Scraper - Job Boards by Company Name
Scrape all open jobs from Greenhouse job boards (boards.greenhouse.io) by company name, domain or board URL. Salary-ready schema, title/location/remote/date filters, new & closed job tracking and a hiring summary per company. $1.50 per 1,000 jobs.
Pricing
from $1.50 / 1,000 job records
Rating
0.0
(0)
Developer
HireWatch
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Greenhouse Jobs Scraper: job boards by company name, with salaries
Scrape all open jobs from any company's Greenhouse job board. Just type a company name (e.g. Airbnb), a website domain (e.g. figma.com) or the board URL. You get clean, flat JSON, CSV or Excel with published salary ranges, full descriptions, and filters for title, location, remote and posted date. Every run labels jobs new / unchanged / closed, so a daily schedule becomes a hiring-change feed.
Independent tool: not affiliated with, endorsed by or sponsored by Greenhouse Software, Inc. "Greenhouse" is used only to describe which job boards this works with.
What you can use it for
- Sales and recruiting signals. See which startups and tech companies are hiring, in which teams, and how fast.
- Salary research. Many Greenhouse boards publish pay ranges, returned as
salaryMin,salaryMax,salaryCurrencyandsalaryInterval. - Job boards and newsletters. Get complete listings straight from the source with descriptions included.
- Candidates. Get new roles at your target companies as soon as they're posted.
Why this Greenhouse scraper
- Company-name lookup.
Airbnb,Scale AIandfigma.comall work. The Actor tries the usual board spellings, then the company's/careerspage. - Accepts any Greenhouse link:
boards.greenhouse.io/<company>,job-boards.greenhouse.io/<company>, embed links, or a careers page with an embedded Greenhouse board. - Salary ranges from Greenhouse pay transparency, wherever the company publishes them.
- Filters: title keywords, location keywords, remote only, posted within N days, max jobs per company, and an overall
maxItemscap. - New / closed tracking between runs, plus an optional hiring-signal summary per company: open jobs, new and closed jobs, trend, jobs posted in the last 7 and 30 days, top departments and locations.
- Fast and polite. A whole board comes back in one request, and descriptions add no extra requests. It uses Greenhouse's public job-board API, needs no login, and respects robots.txt. Contact details are never collected, and e-mails and phone numbers in descriptions are masked.
Input examples
By company name, domain or URL:
{"targets": ["Airbnb", "figma.com", "https://boards.greenhouse.io/stripe"],"maxJobsPerCompany": 0}
Remote jobs posted in the last 30 days, with descriptions:
{"targets": ["Stripe", "Databricks"],"remoteOnly": true,"postedWithinDays": 30,"includeDescriptions": true}
Daily change feed for engineering roles (schedule it daily):
{"targets": ["Stripe", "Anthropic", "Databricks"],"maxJobsPerCompany": 0,"outputMode": "changesOnly","titleKeywords": ["engineer"]}
Output
One row per job (real example from a test run, trimmed):
{"recordType": "job","platform": "greenhouse","companySlug": "airbnb","companyName": "Airbnb","jobId": "8184174","globalId": "greenhouse:airbnb:8184174","title": "Account Manager","department": "Business Development","location": "London, United Kingdom","postedAt": "2026-09-09T08:35:19Z","salaryText": "GBP 46,000 - 54,000 (United Kingdom Annual Pay Range)","salaryMin": 46000.0,"salaryMax": 54000.0,"salaryCurrency": "GBP","salaryInterval": "year","url": "https://careers.airbnb.com/positions/8184174?gh_jid=8184174","changeStatus": "new","firstSeenAt": "2026-10-11T23:19:14Z"}
Every row has the same fields (missing values are null), including remoteType, employmentType, requisitionId, descriptionText and descriptionHtml. globalId stays the same across runs, so use it as your key. changeStatus is new, unchanged or closed (with closedAt). Optional company_summary rows hold the hiring signals, which are also saved as COMPANY_SUMMARIES. A per-company RUN_REPORT shows status and errors, such as a name with no matching board.
Pricing (pay per event)
- $1.50 per 1,000 job records ($0.0015 per job, including jobs labelled
closed) - $0.01 per company summary (optional; turn off
includeCompanySummaryto skip it)
Examples: all ~730 Stripe jobs ≈ $1.10. 50 companies with ~150 jobs each ≈ $11.75. A daily changes-only feed for 50 companies ≈ $0.50–$1 per day. You pay only for results. Set Maximum cost per run (or maxItems) to cap spending.
Tips & limits
- Name lookups check a few spellings (e.g.
Scale AI→scaleai,scale-ai). If the board found isn't the one you meant, pass the URL instead. The run report says which board each name resolved to. - Remote: Greenhouse has no remote flag, so a job counts as remote when its location says "Remote".
- Closed jobs are only reported when the whole board was fetched in both runs, so use
maxJobsPerCompany: 0for tracking. - EU-hosted boards (
job-boards.eu.greenhouse.io) are not supported yet.
Use with AI agents / MCP
This Actor is built to be called by AI agents (Grok Bot, Claude, ChatGPT, Cursor, LangChain and others) through the Apify MCP server or the Apify API.
- Add only this tool:
https://mcp.apify.com?tools=hirewatch/greenhouse-jobs-scraper. You can also let your agent find it throughsearch-actors. - Keep calls small so they finish fast. The MCP
call-actortool waits up to 45 seconds, so setmaxItems(e.g. 50) andmaxJobsPerCompany(e.g. 100), and leaveincludeDescriptionsoff unless you need the text. Cap spend withmaxTotalChargeUsdincallOptions. - Read results with
get-dataset-itemsusing the run'sdatasetId. Each row hasrecordType:jobrows share one flat schema, andcompany_summaryrows hold the hiring signals. Per-company errors are in theRUN_REPORTkey-value record, so one bad input never fails the whole run. - Pay without an Apify account. The Actor uses pay-per-event pricing with limited permissions, so agents can pay per run with agentic payments (x402 / MPP prepaid tokens or Skyfire).
Minimal agent call:
{"targets": ["Stripe"],"titleKeywords": ["engineer"],"postedWithinDays": 14,"maxItems": 50,"includeCompanySummary": false}
Other HireWatch jobs Actors
| Actor | Best for |
|---|---|
| Workday Jobs Scraper | Workday career sites (*.myworkdayjobs.com), including sites with more than 2,000 jobs |
| Greenhouse Jobs Scraper | Greenhouse boards by company name or domain, with published salary ranges |
| Lever Jobs Scraper | Lever boards (jobs.lever.co) by company name or domain, with salaries and remote/hybrid type |
| Ashby Jobs Scraper | Ashby boards (jobs.ashbyhq.com), popular with startups and AI companies, with salary ranges |
| Workday, Greenhouse, Lever, Ashby & Oracle Jobs Scraper | Mixed lists across all five platforms in one run and one schema |
| Website Tech Stack Detector + DMARC/SPF Checker | Find out what the hiring companies' websites are built with |
All of them use the same output schema and the same new/closed tracking, so you can combine their datasets.
Is it legal?
It reads only publicly available job postings from Greenhouse's public job-board API, which employers use to publish their jobs. It does not log in or bypass any access control, and it follows robots.txt. Job postings are not personal data, but you are responsible for how you use the results and for following the laws and site terms that apply to you.
Support
A company that doesn't resolve, or a board that fails? Open an issue on the Issues tab.