What you get without code
Greenhouse, Lever and Ashby publish free APIs, but those return raw data per company, and using them means writing code. The Greenhouse, Lever and Ashby Actors on Apify add:- No code: fill in a form, click Start, and get a table.
- Exports: download CSV or Excel for a spreadsheet, or send results through Make, Zapier or n8n.
- A schedule: re-run weekly or daily, without a server.
- One format: every job has the same columns on all three platforms, including
company,title,department,location,urland a plain-textdescription. The raw APIs each name and format these differently.
Why search descriptions, not titles
Titles rarely name the tools. We searched 8,405 open jobs on 29 company boards on 2026-11-05, matching whole words and ignoring case:
These are mentions, not proof of use. A company’s own product or boilerplate counts too: every one of Vanta’s 84 jobs mentions SOC 2, because Vanta sells SOC 2 compliance software. Read the sentence before you act on it.
1. List the companies
The Actors read the boards you name; they don’t discover companies. Start from your account list. The board name is often the company’s name in lower case, and the address of a job on its careers page confirms it (job-boards.greenhouse.io/figma, jobs.lever.co/zoox, jobs.ashbyhq.com/ramp).
You can also test guesses. A name without a board comes back as a free error item, so paste your guesses into Job board names and see which ones return jobs.
2. Run the Actor
- Open the Actor for the platform, for example Greenhouse, and click Try for free.
- Paste the board names into Job board names.
- Optional: narrow by Department or Location to pay for fewer jobs. Leave Keyword in job title empty, because it reads titles and would drop the jobs you’re looking for.
- Click Start.
3. Find the term in the descriptions
The Actors don’t search descriptions themselves, so you do this step in the tool you already use. Google Sheets. Export the run as CSV, then use File > Import in Sheets. Ifdescription is column F, this keeps the matching rows:
- Apify: Run an Actor, with your input. Set Run synchronously to Yes for small runs. Make limits how long a synchronous run can take, depending on your plan, so use Watch Actor Runs as the trigger for larger ones.
- Apify: Get Dataset Items, with the run’s default dataset ID.
- A filter on the route:
description, Contains (case insensitive), your term. - Google Sheets: Add a Row, mapping
company,title,locationandurl.
- Trigger: Apify, Finished Actor run. Zapier stops synchronous runs after 30 seconds, so start with the trigger.
- Apify: Fetch dataset items.
- Filter by Zapier:
descriptioncontains your term. - Google Sheets: Create Spreadsheet Row.
description, then Google Sheets Append Row.
4. Keep it fresh
Add an Apify schedule to re-run weekly. Each run returns the jobs open that day. To see only what’s new, compare runs byjobId.
What it costs
You pay per job stored, whether or not its description matches your term: $1.00 per 1,000 jobs on Greenhouse, $0.75 on Lever and $0.75 on Ashby, plus a small start fee per run. Figma's board had 145 jobs on 2026-11-05, so one run costs $0.14. Department and location filters reduce it. Maximum cost per run caps a run. The Actors return job postings only, with no data about applicants or recruiters. You’re responsible for how you use the data under the applicable terms and the law.Run Greenhouse Jobs API & Scraper on Apify
$1.00 per 1,000 jobs, no subscription. You run it with your own Apify account.
Run Lever Jobs API & Scraper on Apify
$0.75 per 1,000 jobs, no subscription. You run it with your own Apify account.
Run Ashby Jobs API & Scraper on Apify
$0.75 per 1,000 jobs, no subscription. You run it with your own Apify account.
