Greenhouse Jobs Scraper — Keyword, Location, Date
Pricing
from $2.00 / 1,000 job postings
Greenhouse Jobs Scraper — Keyword, Location, Date
Get job openings from any company on Greenhouse via the official API. Filter by keyword, location, department and days since posted. No personal data — public job listings only.
Pricing
from $2.00 / 1,000 job postings
Rating
0.0
(0)
Developer
KeyMan98
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
18 hours ago
Last modified
Categories
Share
Greenhouse Jobs Scraper
Scrape job postings and job listings from any company careers page built on Greenhouse, the applicant tracking system (ATS). Pulls data through Greenhouse's public, official API — not by scraping the web page — and exports the results to CSV, Excel, or JSON.
What you get (output fields)
For each job posting, one dataset row with:
company—boardTokenandnameof the company this job belongs to.jobId— Greenhouse internal job id.title— job title.location— job location, as published by the company.departments— department name(s) this job belongs to.offices— office name(s) this job belongs to.url— public URL of the job posting.updatedAt— when the job posting was last updated (ISO 8601).firstPublished— when the job posting was first published (ISO 8601), when available.description— job description as cleaned plain text (null if not requested).descriptionHtml— job description as original HTML (null unless requested).metadata— extra fields the company attached to the job (e.g. employment type).scrapedAt— when this row was collected (ISO 8601, UTC).
Who it's for
- Recruiting — track which positions a company opens, when, and where.
- B2B lead generation — a company hiring for a specific role (e.g. "DevOps", "Sales") is often a qualified lead for whoever sells tools or services to that team.
- Job market research — see which skills, roles, or locations a company or industry is hiring for right now.
This Actor does not extract personal data of recruiters or candidates — only public job posting data (title, location, department, description) that the company itself publishes.
How to find a company's board token
Every company on Greenhouse has a careers page shaped like:
https://boards.greenhouse.io/gitlabhttps://job-boards.greenhouse.io/gitlab
The part after greenhouse.io/ (here, gitlab) is the board token. You can paste this kind of URL directly into the "Companies" field — it is recognized and converted automatically. If a company does not use Greenhouse, no page in this format will exist for it.
How to use
- Companies — paste one or more board tokens or URLs, e.g.
gitlab,stripe,https://boards.greenhouse.io/coinbase. - Optional filters — title keywords (
keywords), location (locations), department (departments), or only jobs updated within the last N days (postedWithinDays). - Run the Actor. Each job posting that passes the filters becomes one row in the dataset.
Description options: Include description adds the cleaned plain-text description; Include description (original HTML) also adds the original HTML, if you need to format it yourself.
Input example (JSON)
{"companies": ["gitlab", "https://boards.greenhouse.io/stripe"],"keywords": ["engineer"],"locations": [],"departments": [],"includeDescription": true,"includeDescriptionHtml": false,"maxJobsPerCompany": 500}
Output example (JSON)
{"company": { "boardToken": "gitlab", "name": "GitLab" },"jobId": 8556658002,"title": "AI Engineer","location": "Remote, Bangalore","departments": ["Enterprise Applications"],"offices": ["India"],"url": "https://job-boards.greenhouse.io/gitlab/jobs/8556658002","updatedAt": "2026-09-14T16:01:39-04:00","firstPublished": "2026-05-22T09:16:29-04:00","description": "GitLab is the intelligent orchestration platform...","descriptionHtml": null,"metadata": { "Quota Coverage Type": "n/a" },"scrapedAt": "2026-09-23T10:00:00+00:00"}
If a company is not found or does not respond
That company is skipped: the rest of the list keeps running, the run does not fail, and you are not charged for that company. The reason (board not found, network error) is written to the run log.
Pricing
Pay only for job postings actually returned in the results, after filters — no fixed cost, nothing charged for companies that could not be found or fetched. Pricing model: pay-per-event.
| Event | When it's charged | Price |
|---|---|---|
job-scraped | a job posting was returned in the results (after filters) | 0.002 USD |
Limitations
- Works only on companies that use Greenhouse as their ATS — not LinkedIn, Lever, Ashby, Workday, or others.
- No personal data of recruiters or candidates — only job posting data.
maxJobsPerCompanycaps how many matching jobs are returned per company, to keep time and cost predictable on very large boards.- Does not bypass rate limits or protections: it only uses Greenhouse's public, documented API endpoint.
FAQ
Can I use this on LinkedIn or other job boards?
No. It works only on companies that use Greenhouse as their applicant tracking system.
Does it extract recruiter emails or contact details?
No, by design: only job posting data (title, location, department, description), never personal data.
A company does not appear in the results, why?
Either the board token is wrong, or that company does not use Greenhouse. The run still continues for the other companies, and you are not charged for the one not found.
Am I charged if a company is not found?
No. You are only charged for job postings actually returned in the results.
How do I filter by keyword, location, or department?
Use the keywords, locations, and departments input fields — each matches case-insensitively against the job title, location, or department, and can hold multiple terms. Leave a filter empty to keep everything.
Can I get the full HTML of the job description?
Yes, enable Include description (original HTML) in the input.
Is this legal? Am I scraping personal data?
No personal data is involved. This Actor only reads job postings that the company itself has published on its public Greenhouse careers page — no recruiter or candidate personal data of any kind.
Can I monitor a company for new postings over time?
Yes. Set postedWithinDays to a short window (e.g. 1-3) and run the Actor on a schedule (Apify's built-in scheduler) — each run then only returns postings updated since the last check.
Which companies use Greenhouse?
Any company with a careers page shaped like boards.greenhouse.io/<token> or job-boards.greenhouse.io/<token> is covered — Greenhouse is one of several ATS providers, alongside Lever, Ashby, and others this Actor does not support. See "How to find a company's board token" above.
Can I use this through the Apify API or an MCP server?
Yes. Like any Apify Actor, you can run it and read results through the standard Apify API, or through the Apify MCP server if you use Claude, Cursor, or another MCP-enabled client.
Export
Results can be downloaded from the Apify dataset as JSON, CSV, or Excel, or accessed via the Apify API.