Company Jobs Scraper — Greenhouse, Lever, Ashby + Salaries avatar

Company Jobs Scraper — Greenhouse, Lever, Ashby + Salaries

Pricing

from $1.40 / 1,000 jobs

Go to Apify Store
Company Jobs Scraper — Greenhouse, Lever, Ashby + Salaries

Company Jobs Scraper — Greenhouse, Lever, Ashby + Salaries

Open jobs from any company's career board on Greenhouse, Lever, Ashby, Workable, SmartRecruiters or Recruitee in one clean table, with the salary ranges companies publish. Or one hiring-signal row per company: open roles, new in 7/30/90 days, remote share, top departments. No login, no proxies.

Pricing

from $1.40 / 1,000 jobs

Rating

0.0

(0)

Developer

tidyfeed

tidyfeed

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

5 days ago

Last modified

Share

Who is hiring, for what, where — and what do they pay?

Paste a list of companies. Get every open job on their career boards in one clean table: title, department, location, remote flag, publish date, link — and the salary range, as numbers, wherever the company publishes one. Works across the six applicant tracking systems most tech companies use: Greenhouse, Lever, Ashby, Workable, SmartRecruiters and Recruitee, in one run, one schema.

Or flip the switch and get one hiring-signal row per company: how many roles are open, how many opened in the last 7, 30 and 90 days, what share is remote, which departments and cities are growing, and the median published salary range.

No login. No API key. No proxies. No browser.


Why this one

  • Six systems, one table. You do not need to know which system a company uses. Paste the board URL, the company's own careers page, or just a name — the actor works out the rest and tells you what it found.
  • Salaries as numbers. salaryMin, salaryMax, salaryCurrency, salaryInterval — parsed from the pay-transparency data the company itself publishes, not guessed from the job text. On boards that publish pay, 80%+ of rows carry a range.
  • Only what is new. daysBack: 1 on a daily schedule returns just the jobs published since yesterday. No diffing on your side.
  • Hiring signals, ready to sort. Summary mode turns 500 company boards into 500 rows you can rank by newLast30d — a sales-ready list of who is growing, and in which function.
  • It tells you when it could not. A board that does not exist, a careers page with no board link, a run cut short — each is reported by name with the reason. Nothing fails silently, and nothing empty is billed.

Two modes

Jobs — one row per open job. The default. Filter by title words (engineer, account executive), location words (london, germany), remote only, or publish date. Newest first.

Summary — one hiring-signal row per company. Reads each whole board and reports the counts. The same filters apply, so you can ask "how many sales roles does each of these 200 companies have open, and how many are new this month?"


What you get

Jobs mode

The job — title, department, team, employmentType, description (optional, plain text)

Where — location, locations (all listed), country, isRemote, workplaceType (remote, hybrid, onsite)

Pay — salaryMin, salaryMax, salaryCurrency, salaryInterval (year, month, hour …), salaryText (the range as the company words it, e.g. $211.4K – $290.6K • Offers Equity)

When — publishedAt, daysSincePublished, updatedAt

Links and IDs — jobUrl, applyUrl, companyName, company (as you typed it), ats, boardSlug, jobId, requisitionId, language

Summary mode

companyName, company, ats, boardUrl, openJobs, newLast7d, newLast30d, newLast90d, remoteJobs, remotePercent, hybridJobs, departmentsCount, topDepartments, topLocations, employmentTypes, jobsWithSalary, salaryCoveragePercent, usdSalaryJobs, medianSalaryMinUsd, medianSalaryMaxUsd, newestJobAt, oldestJobAt, medianJobAgeDays, filters, status


Typical uses

  • Sales and lead generation. A company that opened twelve engineering roles this month has budget and a problem. Run summary mode weekly over your target accounts and sort by newLast30d; filter by titleKeywords to catch the function you sell to.
  • Recruiting and sourcing. Track competitors' openings daily with daysBack: 1. See which teams they are building and in which cities.
  • Compensation benchmarking. Pull every published range for titleKeywords: ["product manager"] across fifty companies into one sheet.
  • Job boards and aggregators. A clean, deduplicated feed with stable IDs and apply links, straight from the source of truth.
  • Investors and analysts. Hiring velocity across a portfolio or a sector, as a dated series when scheduled.

Input

FieldWhat it does
companiesOne per line: a board URL (https://job-boards.greenhouse.io/airbnb, https://jobs.lever.co/spotify, https://jobs.ashbyhq.com/openai, https://apply.workable.com/<company>, https://jobs.smartrecruiters.com/<Company>, https://<company>.recruitee.com), a company careers page, greenhouse:airbnb, or a bare name.
modejobs (default) or summary.
daysBackJobs mode. 0 for all open jobs; 1 or 7 for what is new.
titleKeywordsKeep jobs whose title contains any of these. Both modes.
locationKeywordsKeep jobs whose location or country contains any of these. Both modes.
remoteOnlyKeep only jobs marked remote. Both modes.
maxJobsPerCompanyJobs mode. Cap per company after filters, newest first. Default 50.
includeDescriptionJobs mode. Adds the full text.

What it costs

$2.00 per 1,000 jobs in jobs mode, $10.00 per 1,000 company summaries in summary mode, plus $0.005 per run. Apify's Starter, Scale and Business plans get 10%, 20% and 30% off.

You pay for rows delivered. A board that does not exist, a careers page with no board on it, a company with nothing open, or filters that match nothing cost nothing. Filters run before billing, so daysBack: 1 on a daily schedule costs only the handful of new jobs.


How it works

Every applicant tracking system publishes its customers' open jobs through a public JSON API — it is how companies embed the job list on their own website. This actor reads those APIs directly: Greenhouse's Job Board API, Lever's Postings API, Ashby's posting API, and the equivalent public endpoints of Workable, SmartRecruiters and Recruitee. No HTML is parsed for job data and no browser is launched, so a careers-page redesign does not break it, and a 600-job board reads in about a second.

When you paste a company's own careers page instead of a board URL, the actor fetches that one page and looks for the board link or embed the company put there.


Honest limits

  • Six systems. Companies on Workday, iCIMS, Taleo, SuccessFactors, BambooHR or a home-grown careers site are not covered. They are reported as "no supported job board link found" and cost nothing.
  • Salary is there only when the company publishes it in the system's pay fields — common for US roles under pay-transparency laws, rare elsewhere. It is never extracted from the description text or estimated. Workable and SmartRecruiters expose no pay fields at all.
  • salaryInterval is empty when the company does not state the period (Greenhouse has no period field; it is read from the range's own label, e.g. "Annual Pay Range"). In summary mode the median USD range uses ranges stated as yearly, plus unlabelled USD ranges of 15,000 or more; usdSalaryJobs says how many jobs that is, so you can judge a median built on three jobs.
  • Greenhouse has no remote flag. isRemote is true there only when the company's own location text says "Remote", and empty otherwise — empty means unknown, not on-site.
  • Careers-page lookup reads one page without running JavaScript. Pages that load their board with scripts, or sit behind bot protection, will not reveal it. Paste the board URL in that case; it is the link behind any "Apply" button.
  • A bare company name is a guess at the board name. figma is tried on Greenhouse, Lever, Ashby, Workable and Recruitee in turn and the first board by that name wins; the status column says where it matched, and companyName lets you check it is who you meant. SmartRecruiters is skipped here because it answers "unknown company" and "nothing open" identically.
  • publishedAt is what each system calls the publish date: first publication on Greenhouse, Ashby, Workable, SmartRecruiters and Recruitee; creation time on Lever. Companies sometimes re-post old roles, which resets it.
  • Date windows need the whole board. If a run is cut short (rate limit, or the 10,000-posting safety cap on very large SmartRecruiters companies), newLast7d/30d/90d are left empty rather than reported as a floor, and status says why.
  • What is listed is what is public. Internal-only and unlisted postings are not in these APIs.

Scheduling

Schedule jobs mode daily with daysBack: 1 for a feed of new openings, or summary mode weekly for a dated record of hiring velocity per company. Both are cheap: the daily run bills only the new jobs, and a weekly summary of 500 companies is $5.


This actor reads only the public job-board APIs that applicant tracking systems provide for embedding job lists on company websites, without authentication. It requires no account and bypasses no access control. Job postings are public business information published for the purpose of being found; the actor returns no personal data about applicants or employees. You remain responsible for how you use the exported data.


Questions, a system you want added, or a board that behaves oddly? Open an issue on the actor — issues are read and answered.