Greenhouse Jobs Scraper - Company Career Boards to JSON
Pricing
Pay per usage
Greenhouse Jobs Scraper - Company Career Boards to JSON
Scrape job postings from any company's Greenhouse career board. Enter a board token like 'adyen' or 'doctolib' and get every open position: department, office, location, remote flag, salary when listed, and full description text. Fast official JSON API, no login or cookies required.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
Studio Amba
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
13 days ago
Last modified
Categories
Share
Greenhouse Jobs Scraper
Scrape job postings from any company's Greenhouse career board — enter a board token like adyen or doctolib and get every open position as clean, structured JSON.
Why use this actor?
Thousands of companies (Adyen, Doctolib, GitLab, N26, HelloFresh, SumUp, Monzo, Celonis and many more) run their careers page on Greenhouse, one of the most widely used applicant tracking systems. This actor pulls their full job board through Greenhouse's official public JSON API — no HTML parsing, no brittle selectors, no login, no cookies.
Typical use cases:
- Recruiting & sourcing — monitor competitors' open roles, spot hiring sprees and freezes
- Sales intelligence — companies hiring for a role often buy tools for that role; job postings are buying signals
- Job aggregators — feed fresh postings from hundreds of company boards into your job site
- Market research — track salaries, remote policies, and demand for specific skills
- Talent mapping — see which departments and offices a company is growing
Because the data comes from a stable JSON API rather than scraped HTML, runs are fast (one request per company board) and the output stays consistent.
Input
| Field | Type | Required | Description |
|---|---|---|---|
boardTokens | Array | No | Greenhouse board tokens — the company slug in job-boards.greenhouse.io/{token}. Defaults to a set of verified European tech companies. |
careerPageUrls | Array | No | Alternative: paste Greenhouse career board URLs and the token is derived automatically. |
contentFlag | Boolean | No | Include the full job description text (HTML-stripped). Default: true. |
maxItemsPerBoard | Integer | No | Maximum postings per company board. Default: 200. |
locationFilter | String | No | Only return jobs whose location or office contains this text, e.g. "Amsterdam" or "Remote". |
proxyConfiguration | Object | No | Proxy settings. Datacenter proxies are sufficient — the API is public. |
How do I find a company's board token?
Open the company's careers page and look at the URL of an individual job posting. It looks like https://job-boards.greenhouse.io/{token}/jobs/123456 — the {token} part is what you need. You can also just paste that URL into careerPageUrls and the actor extracts the token for you.
Verified working examples (June 2026): adyen, doctolib, celonis, n26, gitlab, sumup, hellofresh, contentful, monzo, getyourguide, trivago.
Output
Each result contains:
| Field | Type | Example |
|---|---|---|
company | String | "Adyen" |
boardToken | String | "adyen" |
jobId | Integer | 7436701 |
positionName | String | "Account Manager" |
department | String | "Account Management" |
departments | Array | ["Account Management"] |
office | String | "Amsterdam" |
location | String | "Amsterdam" |
remote | Boolean | false |
salary | String | "£78,000 - £110,000" (when listed) |
contentText | String | Full job description, plain text |
requisitionId | String | "JR_3740" |
jobLanguage | String | "en" |
firstPublished | String | "2026-01-15T08:53:34-05:00" |
updatedAt | String | "2026-06-08T02:57:37-04:00" |
url | String | Direct application URL |
scrapedAt | String | ISO 8601 timestamp |
Example output
{"company": "Adyen","boardToken": "adyen","jobId": 7436701,"positionName": "Account Manager","department": "Account Management","departments": ["Account Management"],"office": "Amsterdam","location": "Amsterdam","remote": false,"salary": "","contentText": "This is Adyen\n\nAdyen provides payments, data, and financial products in a single solution for customers like Meta, Uber, H&M, and Microsoft...","requisitionId": "JR_3740","jobLanguage": "en","firstPublished": "2026-01-15T08:53:34-05:00","updatedAt": "2026-06-08T02:57:37-04:00","url": "https://job-boards.greenhouse.io/adyen/jobs/7436701","scrapedAt": "2026-06-11T12:09:41.146Z"}
How to scrape Greenhouse jobs data
- Create a free Apify account and open this actor.
- Enter board tokens for the companies you want to track (e.g.
adyen,gitlab), or paste their Greenhouse careers URLs. Leave it empty to try the verified defaults. - Optionally filter by location — e.g.
"Berlin"or"Remote"— and setmaxItemsPerBoard. - Run the actor. One company board takes a few seconds; the entire board is fetched in a single API call.
- Export your data as JSON, CSV, or Excel from the dataset tab, or connect via the Apify API to feed your own systems.
To monitor hiring activity over time, schedule the actor to run daily or weekly and compare jobId sets between runs — new IDs are new openings, missing IDs are closed roles.
Salary data
Greenhouse does not have a structured salary field, but many companies (especially UK-based ones, where pay transparency is common) include pay ranges in the description. The actor extracts these with a best-effort parser that looks for ranges like £78,000 - £110,000 or €77.000 - €94.000 near salary-related wording. Expect salary coverage to vary by company — Monzo lists ranges on most roles, Adyen on none.
Cost estimate
One request per company board, regardless of how many jobs it has. Scraping 10 company boards (~1,000 postings) uses well under 0.01 compute units — effectively the only cost is the per-result fee. This makes it one of the cheapest ways to build a multi-company jobs dataset.
Limitations
- Only works for companies that use Greenhouse as their ATS. For companies on Lever, Workday, or SmartRecruiters you need a different scraper.
- The board token must be exact —
spotifyandklarnafor example do not expose public Greenhouse boards. - Salary extraction is best-effort; not all companies publish pay ranges.
- Data comes from the public Greenhouse board API and may change without notice. Respect the website's terms of service and use the data responsibly.
Need this data on a schedule, or a custom version?
We run this scraper as a managed service for businesses: scheduled runs, deduplication, delta detection, and delivery to your inbox, Google Sheets, or API — maintenance included. We can also build a custom version with your exact fields and filters, or combine multiple sources into one feed.
See studioamba.dev/services or email hello@studioamba.dev for a free data sample. We maintain 300+ European web scrapers and answer within one business day.