Greenhouse Jobs Scraper & API
Pricing
from $1.30 / 1,000 jobs
Greenhouse Jobs Scraper & API
Scrape jobs directly from Greenhouse ATS via one fast API. Pull live roles from top tech companies like Airbnb, Stripe & Discord. Zero ghost jobs, verified daily — built for job boards, AI agents & tech hiring research.
Greenhouse Jobs Scraper & API — search 175,000+ live jobs scraped from Greenhouse, the ATS of choice for the tech industry, used by companies like Airbnb, Stripe, Anthropic, Figma, and Datadog. One normalized JSON schema, verified daily, zero ghost jobs. Open the actor, hit Try for free, and run the default input (queries: ["Software Engineer", "Product Manager"]) — no code or API key required.
What does Greenhouse Jobs Scraper do?
- Searches 175,000+ live Greenhouse jobs across thousands of company boards in one call — no board tokens, no per-company setup
- Filters by work model, employment type, experience level, salary range, skills, companies, and posting date
- Excludes noise with negative keywords — prefix any query token with
-(["Software Engineer", "-staff"]) - Returns de-duplicated, verified listings — duplicates merged by company + canonical title + listing URL, expired jobs removed daily, so no ghost jobs
- Enriches every job with AI-extracted data: typed hard/soft skills, responsibilities, benefits, a 2–3 sentence summary, geocoded locations, USD-normalized salaries, and work-authorization signals (H1B sponsorship, clearance)
- Optionally attaches the full company profile — funding, leadership, ratings, tech stack, H1B history — with one switch
- Exports to JSON, CSV, or Excel, and plugs into schedules, webhooks, Zapier, Make, and the Apify API
Why scrape Greenhouse jobs?
Greenhouse is the applicant tracking system the tech industry hires on. Its customer base skews heavily toward well-funded product companies — from public giants to breakout startups — which makes its job boards one of the highest-signal sources of tech hiring data anywhere: real openings, posted directly by employers, with salary ranges increasingly disclosed. If you want to know who's hiring engineers, designers, or PMs in tech — and what they're paying — Greenhouse is the board to watch.
Jobo's live Greenhouse index currently holds 175,000+ open roles, about two-thirds of them in the United States, with the UK, India, and Canada next. Companies hiring through Greenhouse right now include Airbnb, Stripe, Anthropic, Datadog, Figma, Pinterest, Reddit, Robinhood, Coinbase, and Discord — alongside thousands of smaller product companies.
Can I use the official Greenhouse API instead?
Greenhouse does publish an official Job Board API, but it is strictly one board per call — you must already know each company's board token, and you get raw per-board data with no search, no filters, and no normalization. No ATS offers a public cross-company search API. That's the gap this actor closes: one query across every Greenhouse board Jobo indexes, with fields the official feed doesn't provide — geocoded locations, USD-normalized salaries, and AI-extracted skills.
What data can you extract from Greenhouse?
Every result is a structured job record in Jobo's normalized schema — the same shape across all Jobo actors, so you can mix sources freely. Highlights:
| Field | Description |
|---|---|
title / normalized_title | Raw posting title + canonical title for grouping |
company | Company preview: name, website, logo, summary, industries (+ id for enrichment) |
locations | Geocoded: city, region, country, latitude/longitude |
compensation | {min, max, currency, period}, normalized to annual USD for filtering |
employment_type / workplace_type / experience_level | e.g. "Full-time" / "Remote" / "Mid Level" |
qualifications | AI-extracted must-have & preferred skills (typed hard/soft), education, certifications |
responsibilities / benefits | Bullet lists extracted from the description |
summary / description | 2–3 sentence AI recap + full description, HTML stripped |
listing_url / apply_url | Canonical Greenhouse listing + direct apply link |
is_h1b_sponsor / is_work_auth_required / is_clearance_required | Work-authorization signals |
date_posted / created_at / updated_at | Employer posting date + Jobo index/refresh timestamps |
source | Always "greenhouse" for this actor |
Set include_company_details: true to replace the company preview with the fully enriched profile: funding rounds and investors, leadership, employee ratings, tech stack, headcount and revenue bands, and H1B filing history. The complete field list is on this page's Output schema tab and at docs.jobo.world.
How much does it cost?
This actor uses pay-per-result pricing: you pay a fixed rate per job record returned — the current rate is in the pricing box on this page. There are no separate compute, proxy, or storage charges, and a run never returns more than page_size results, so spend is fully predictable. Apify's free plan includes enough credit to pull thousands of jobs, so you can evaluate the full dataset before paying anything.
How do I scrape Greenhouse jobs?
- Open the actor and click Try for free — you'll need a free Apify account.
- Enter your search on the Input tab: keep the default
queries(["Software Engineer", "Product Manager"]) or add your own titles andlocations. - Narrow with filters (optional): work model, experience level, salary range, skills, or specific companies.
- Click Start. A typical run finishes in under a minute.
- Export your results from the Output tab as JSON, CSV, or Excel — or connect a schedule, webhook, or integration to make it run on autopilot.
⬇️ Input
Every field is optional — an empty input returns the newest Greenhouse jobs. Up to 5 queries are OR-ed together; prefix a token with - to exclude it.
| Parameter | Type | Description |
|---|---|---|
queries | array (≤5) | Job titles or keywords, OR-ed. -token excludes. |
locations | array | Cities, regions, or countries — geocoded server-side. |
work_models | array | remote, hybrid, onsite. |
employment_types | array | full-time, part-time, contract, internship, freelance, temporary. |
experience_levels | array | intern, entry, mid, senior, lead, executive. |
skills_include / skills_exclude | array | Match against AI-extracted skills. |
companies_include / companies_exclude | array | Filter by company name (case-insensitive). |
min_salary_usd / max_salary_usd | integer | Annual USD bounds; jobs without a disclosed salary are excluded when set. |
posted_after / posted_before | string | ISO 8601 (2026-01-01) or relative (7 days ago). |
page / page_size | integer | Page 1–100 × 1–100 results per page (default 50). |
include_company_details | boolean | Attach the full enriched company profile (default false). |
The full input schema with defaults is on this page's Input schema tab.
Remote roles, biggest page
{"queries": ["Software Engineer"],"work_models": ["remote"],"page_size": 100}
Senior+ roles at specific tech companies, 180k+ USD
{"queries": ["Software Engineer", "-staff"],"companies_include": ["Stripe", "Datadog", "Figma"],"experience_levels": ["senior", "lead"],"min_salary_usd": 180000,"page_size": 100}
⬆️ Output example
Results land in the dataset under two views: Greenhouse Job Listings (one row per job) and Company details (populated when include_company_details is on). Export as JSON, CSV, or Excel. A typical record:
{"id": "f0f6a7d0-c667-48f7-95bc-a91f172e2d6d","title": "Software Engineer","normalized_title": "Software Engineer","summary": "Design and develop software for capital equipment and medical devices used by cardiac surgeons and electrophysiologists…","company": {"id": "6647fb14-d420-434a-a332-9c972016b9b0","name": "AtriCure","website": "https://atricure.com","logo_url": "https://images.jobo.world/logos/atricure.jpg","industries": ["Medical Devices & Equipment"],"details_url": "https://connect.jobo.world/api/companies/6647fb14-d420-434a-a332-9c972016b9b0"},"locations": [{"location": "Minneapolis, MN","city": "Minneapolis","region": "Minnesota","country": "United States","latitude": 44.9772995,"longitude": -93.2654692}],"compensation": { "min": 71036, "max": 104186, "currency": "USD", "period": "yearly" },"employment_type": "Full-time","workplace_type": "On-site","experience_level": "Mid Level","qualifications": {"must_have": {"education": ["Bachelor's degree in Systems Engineering, Electrical Engineering, or Computer Engineering"],"skills": [{ "name": "C", "type": "hard" },{ "name": "C++", "type": "hard" },{ "name": "Software Development Methodologies", "type": "hard" }]},"preferred": {"skills": [{ "name": "Rust", "type": "hard" },{ "name": "Python", "type": "hard" }]}},"is_work_auth_required": true,"listing_url": "https://job-boards.greenhouse.io/atricure/jobs/4309998009","apply_url": "https://job-boards.greenhouse.io/atricure/jobs/4309998009#app","source": "greenhouse","date_posted": "2026-07-09T13:47:14Z","description": "…full job description, HTML stripped…"}
What can you expect from a run?
- One run returns one page — up to 100 results per call. Walk
page1→100 to reach 10,000 jobs per query; for full-inventory pulls use ATS Jobs Feed (cursor pagination, 1,000 jobs per batch). - Freshness: every listing is re-verified daily; expired jobs are removed within 24 hours of disappearing from the source board.
- Salaries are normalized to annual USD using current FX rates, so
min_salary_usdworks across currencies. - Geocoding is best-effort — loose strings like
"Worldwide"won't geocode, but the raw location string is always preserved. industriescan be empty for long-tail companies that Jobo's enrichment pipeline hasn't profiled yet.sourceis always"greenhouse"— handy for provenance when you mix datasets from several Jobo actors.
Integrations, API & MCP
Everything on the Apify platform works out of the box: schedules (hourly/daily/weekly runs), webhooks on run completion, and one-click integrations with Zapier, Make, n8n, Slack, Google Sheets, and Google Drive.
Prefer code? Call this actor as a Greenhouse jobs API from Python or JavaScript with the Apify API clients — start a run, wait for it, and page through the dataset in a few lines (ready-made snippets are in the API section of this page). AI agents can run it through the Apify MCP server, which exposes this actor as a tool.
Use cases
| Who | What for |
|---|---|
| Job boards | Tech-focused aggregators built on Greenhouse's high-signal startup and scale-up inventory |
| AI agents | Career copilots and résumé-matching agents grounded in live tech openings |
| Recruiters | Sourcing intel on who's hiring at Airbnb, Stripe, Anthropic, and thousands of peers |
| HR tech | Market dashboards scoped to the companies that hire on Greenhouse |
| Salary research | Compensation benchmarks from disclosed tech salary ranges |
| Market research | Hiring-velocity tracking across the venture-backed tech sector |
❓ FAQ
Should I use this actor or ATS Jobs API?
Use this actor if you only need Greenhouse — simpler input, identical output schema. Use ATS Jobs API to search Greenhouse together with Workday, SmartRecruiters, iCIMS, and 70+ other platforms in one call.
How do I download more than 10,000 jobs?
Use ATS Jobs Feed — it streams the full inventory with cursor pagination at 1,000 jobs per batch, built for ETL pipelines.
Are duplicate listings removed?
Yes. Jobo de-duplicates by company + canonical title + listing URL before results are returned, so cross-posted duplicates of the same role are merged.
Can I filter by salary?
Yes — min_salary_usd / max_salary_usd, matched against USD-normalized compensation. Jobs that don't disclose a salary are excluded whenever a salary filter is set.
How fresh is the data?
New Greenhouse jobs are indexed within 24 hours of appearing; every listing is re-verified daily and removed within 24 hours of expiring.
Does this actor cover private or internal Greenhouse boards?
No — it indexes publicly published job boards only, the listings employers post to be found. Internal-only or unlisted requisitions never appear.
Where can I check if the API behind this actor is up?
At jobo.world/status — the live status page for the Jobo Connect API that powers every Jobo actor.
⚖️ Is it legal to scrape Greenhouse job listings?
Yes — this actor only extracts publicly posted job listings, the content employers publish specifically to be found and shared. It does not collect private user data. Note that scraped results can incidentally contain personal data (e.g., a recruiter's name in a job description); personal data is protected by the GDPR and similar regulations, so only process it with a legitimate reason and consult a lawyer if unsure. Read more in Apify's guide to the legality of web scraping.
Greenhouse is a trademark of Greenhouse Software, Inc. This actor is an independent product and is not affiliated with, endorsed by, or sponsored by Greenhouse Software, Inc.
🔗 Related actors
| Actor | Best for |
|---|---|
| ATS Jobs API | Search 75+ ATS platforms in one call |
| ATS Jobs Feed | Bulk export for data pipelines — cursor pagination, 1,000 jobs/batch |
| AI Deep Job Search | Describe your ideal job in plain English, get AI-scored matches |
| Lever Jobs Scraper | 75,000+ jobs from VC-backed startups on Lever |
| Ashby Jobs Scraper | 55,000+ jobs from AI and dev-tools startups on Ashby |
| Crunchbase Company Lookup | Funding, leadership, and tech-stack data for any company |
About Jobo & support
Jobo builds job-data infrastructure: a normalized, daily-verified index of jobs scraped directly from company ATS boards, powering job boards, AI agents, and HR-tech products.
- Questions or bugs? Open a ticket on this actor's Issues tab — issues are answered within hours.
- Website: jobo.world · Enterprise API: jobo.world/enterprise · API status: jobo.world/status
- Email: enrico@jobo.world