Greenhouse Jobs Search API
Search a company's Greenhouse board by keyword, department, office, location, remote and publish date.
Sendboard
Returnstitlelocationcompany_namepublished_atupdated_atremote
Get the jobs on any company's public Greenhouse board as clean JSON: titles, locations, departments, posting dates, full descriptions and published pay ranges, plus the board's departments and offices. Send a board name such as airbnb.
| # | Title | Location | Company | Published | Updated | Remote | Job ID | Language | Absolute url |
|---|---|---|---|---|---|---|---|---|---|
| 1 | Account Manager | London, United Kingdom | Airbnb | 2026-09-09T04:35:19-04:00 | 2026-09-29T20:00:54-04:00 | false | 8184174 | en | https://careers.airbnb.com/positions/8184174?gh_jid=8184174 |
| 2 | Associate Legal Counsel, Japan | Tokyo, Japan | Airbnb | 2026-04-13T04:49:05-04:00 | 2026-09-29T20:00:54-04:00 | false | 7789554 | en | https://careers.airbnb.com/positions/7789554?gh_jid=7789554 |
| 3 | Associate Principal, Procurement Innovation Supplier Programs | United States | Airbnb | 2026-09-24T18:17:39-04:00 | 2026-09-29T20:00:54-04:00 | true | 8231416 | en | https://careers.airbnb.com/positions/8231416?gh_jid=8231416 |
| 4 | Business Development Manager | Berlin, Germany | Airbnb | 2026-06-10T08:50:56-04:00 | 2026-09-29T20:00:54-04:00 | false | 7995153 | en | https://careers.airbnb.com/positions/7995153?gh_jid=7995153 |
| 5 | Business Systems Engineer, Tech Foundations | San Francisco, CA | Airbnb | 2026-09-18T16:54:20-04:00 | 2026-09-29T20:00:54-04:00 | true | 8214444 | en | https://careers.airbnb.com/positions/8214444?gh_jid=8214444 |
| 6 | Community Engagement Lead, Spain and Portugal | Barcelona, Spain | Airbnb | 2026-06-04T12:14:37-04:00 | 2026-09-29T20:00:54-04:00 | false | 7982715 | en | https://careers.airbnb.com/positions/7982715?gh_jid=7982715 |
| 7 | Community Support Forecasting and Demand Planning Analyst | United States | Airbnb | 2026-04-24T17:11:08-04:00 | 2026-09-29T20:00:54-04:00 | true | 7839229 | en | https://careers.airbnb.com/positions/7839229?gh_jid=7839229 |
| 8 | Complex Claims Manager | United States | Airbnb | 2026-08-24T10:18:09-04:00 | 2026-09-29T20:00:54-04:00 | true | 8153094 | en | https://careers.airbnb.com/positions/8153094?gh_jid=8153094 |
| 9 | Complex Claims Manager | Canada | Airbnb | 2026-08-24T10:18:12-04:00 | 2026-09-29T20:00:54-04:00 | true | 8152131 | en | https://careers.airbnb.com/positions/8152131?gh_jid=8152131 |
| 10 | Customer Service Partner Operations Manager, Mandarin Speaking … | Manila, Philippines | Airbnb | 2026-09-02T05:33:30-04:00 | 2026-09-29T20:00:54-04:00 | true | 8172735 | en | https://careers.airbnb.com/positions/8172735?gh_jid=8172735 |
| # | Department | Open jobs | Department ID | Parent id |
|---|---|---|---|---|
| 1 | 1. Technical | 0 | 60966 | |
| 2 | 2. Business | 0 | 60666 | |
| 3 | 3. Independent Team | 0 | 73248 | |
| 4 | 4. Prospecting (DONOTUSE) | 0 | 76314 | |
| 5 | 5. (DoNotUse) Temp | 0 | 375108 | |
| 6 | Accounting | 0 | 73677 | 73694 |
| 7 | Administrative | 0 | 73686 | 73698 |
| 8 | Analytics | 7 | 85346 | 60666 |
| 9 | Apprenticeship | 0 | 73689 | 73700 |
| 10 | Art and Creative | 1 | 6427 | 73692 |
What each one takes and what it returns. Open one for a real response, every input and every field.
Search a company's Greenhouse board by keyword, department, office, location, remote and publish date.
Sendboard
Returnstitlelocationcompany_namepublished_atupdated_atremote
Get one posting: the full description, departments, offices, dates and, when the employer publishes them, pay ranges and the application questions.
Sendboardorjob_idorjob_url
Returnsjob
List a board's departments as a tree, with how many open jobs each one has.
Sendboard
Returnsnamejob_countidchild_ids
List a board's offices as a tree, with the departments in each.
Sendboard
Returnsnamechild_idsdepartment_countid
Get one department with its place in the tree and its open jobs.
Sendboardanddepartment_id
Returnsdepartment
Get one office with its place in the tree and its departments.
Sendboardandoffice_id
Returnsnameidjob_count
Get a board's company name and its introduction text.
Sendboard
Returnsname
Count open roles by department, office and date to see where a company is growing.
Jobs searchDepartmentsOfficesPull every posting from the boards you follow with full descriptions and links to apply.
Jobs searchJob detailsCollect the pay ranges employers publish on their postings, by role and location.
Job detailsMap a company's departments and offices as Greenhouse shows them.
DepartmentsOfficesDepartmentOfficeOne request shape for every Greenhouse Jobs endpoint: the endpoint ID and its input. No SDK needed.
curl --request POST \ --url https://data.upscrape.com/execute \ --header "Authorization: Bearer $UPSCRAPE_API_KEY" \ --header "Content-Type: application/json" \ --header "Prefer: wait=30" \ --data '{ "capability": "greenhouse.jobs.search", "input": { "board": "airbnb" }}'
import jsonimport osimport requestspayload = json.loads(r'''{ "capability": "greenhouse.jobs.search", "input": { "board": "airbnb" }}''')response = requests.post( "https://data.upscrape.com/execute", headers={ "Authorization": f"Bearer {os.environ['UPSCRAPE_API_KEY']}", "Content-Type": "application/json", "Prefer": "wait=30", }, json=payload,)response.raise_for_status()print(json.dumps(response.json(), indent=2))
const response = await fetch("https://data.upscrape.com/execute", { method: "POST", headers: { "Authorization": `Bearer ${process.env.UPSCRAPE_API_KEY}`, "Content-Type": "application/json", "Prefer": "wait=30", }, body: JSON.stringify({ "capability": "greenhouse.jobs.search", "input": { "board": "airbnb" }}),});if (!response.ok) { throw new Error(`Upscrape request failed: ${response.status}`);}console.log(JSON.stringify(await response.json(), null, 2));
{ "has_more": true, "page": 1, "per_page": 25, "total_matches": 151, "jobs": [ { "title": "Account Manager", "company_name": "Airbnb", "location": "London, United Kingdom", "published_at": "2026-09-09T04:35:19-04:00", "absolute_url": "https://careers.airbnb.com/positions/8184174?gh_jid=8184174", "id": "8184174", "language": "en", "remote": false, "updated_at": "2026-09-29T20:00:54-04:00" }, { "title": "Associate Legal Counsel, Japan", "company_name": "Airbnb", "location": "Tokyo, Japan", "published_at": "2026-04-13T04:49:05-04:00", "absolute_url": "https://careers.airbnb.com/positions/7789554?gh_jid=7789554", "id": "7789554", "language": "en", "remote": false, "updated_at": "2026-09-29T20:00:54-04:00" } ]}
https://data.upscrape.com/mcp
Use Upscrape to list the open jobs on Airbnb's Greenhouse board with title, location and publish date, newest first.
With Upscrape, open Airbnb Greenhouse job 8184174 and summarise the role, its location and department, and any pay range it publishes.
Using Upscrape, list the departments on Airbnb's Greenhouse board and which ones have open jobs.
The short answers. The docs have the long ones.
Greenhouse publishes a Job Board API for its customers' boards. Upscrape gives you one API for any public Greenhouse board, with search filters, departments, offices and pay ranges, plus the same request shape as every other job platform we cover.
No. You send a board name and get JSON back. Nothing runs on any account.
Jobs search, job details, departments, offices, department, office and board. Each is its own endpoint with a published input schema, and the response is JSON.
Every Greenhouse Jobs endpoint costs 1 credit per successful call. You buy credits once, with no subscription, and paid credits never expire. New accounts get free credits to try it.
Yes. Connect any MCP client to the Upscrape MCP server with OAuth or an API key. The agent finds the Greenhouse Jobs endpoint, checks its price and runs it with the same credits as the REST API.
Upscrape reads public pages only and needs no login. How you use the data is yours to decide under the laws that apply to you; we sign a data processing agreement for your legal review.
We fix the endpoint. Your request and the response fields stay the same.
Up to 100 free credits to start, no card needed.