Company Job Postings Scraper
Pricing
$2.00 / 1,000 results
Company Job Postings Scraper
Extract live job postings from company career pages (Greenhouse, Lever, Ashby, Workable, Recruitee, SmartRecruiters). Clean, normalized JSON with salaries, locations, remote flags. Company-level hiring data — no LinkedIn, no personal data.
Pricing
$2.00 / 1,000 results
Rating
0.0
(0)
Developer
Kurt Blair
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
0
Monthly active users
2 days ago
Last modified
Categories
Share
Job Postings Scraper — Company Career Pages (Greenhouse, Lever, Ashby & more)
Extract live job postings directly from company career pages — the hiring data source that never needs LinkedIn or Indeed. Point the Actor at any list of companies and get a clean, normalized dataset of every open role: title, department, locations, remote status, employment type, salary ranges, posting dates, and application URLs.
Supports the ATS platforms behind most tech & startup career pages:
| Platform | Coverage | Salary data | Detection |
|---|---|---|---|
| Greenhouse | Full board | Pay ranges where published | ✅ auto |
| Lever | Full board | Structured salaryRange where published | ✅ auto |
| Ashby | Full board | Structured compensation tiers | ✅ auto |
| Workable | Full board | Parsed from description | ✅ auto |
| Recruitee | Full board | Structured where published | ✅ auto |
| SmartRecruiters | Full board (paginated) | Parsed from description | ✅ auto |
Why scrape career pages instead of job boards?
- Fresher: postings appear on the company's own board before (and sometimes instead of) aggregators.
- Complete: no aggregator filtering — you see every public role, including the ones never syndicated.
- Compliant: this Actor reads the same public, logged-out JSON endpoints the career pages themselves use. It collects company-level data only — job postings, not people. No LinkedIn, no Indeed, no personal data.
- Cheap: no headless browser, no CAPTCHAs — results stream in seconds.
What can you do with hiring data?
- Sales signals / ABM: a company hiring "Salesforce Administrator" is buying Salesforce tooling. Route accounts to your reps the week the signal appears.
- Recruiting & talent intel: track which competitors are hiring, for what roles, where, and at what salary bands.
- Market & investment research: headcount growth by function is a leading indicator. Watch a portfolio or a whole sector.
- Job boards & aggregators: build a niche job board from the source of truth.
- AI agents & RAG: clean JSON, stable schema — pipe it into your agent, vector DB, Clay table, or spreadsheet without post-processing.
Input
Three ways to specify a company — mix them freely:
{"companies": ["https://jobs.lever.co/mistral","greenhouse:vercel","https://ramp.com","linear"],"remoteOnly": false,"titleKeywords": ["engineer", "data"],"maxTotalResults": 1000}
- ATS board URL — fastest, zero ambiguity (
https://boards.greenhouse.io/vercel,https://jobs.ashbyhq.com/ramp, …) platform:slug— explicit pair (lever:mistral,workable:acme)- Company website or bare name — the Actor fetches the careers page, finds the ATS link automatically, and falls back to probing all six platforms.
Optional filters: title keywords, location keywords, remote-only, posted-within-N-days, per-company and total result caps (cost control), full descriptions on/off.
Output (real example rows)
Data captured from live boards on 2026-07-21:
| company | title | department | location | remote | salary | published | ats |
|---|---|---|---|---|---|---|---|
| Ramp | Security Engineer, Cloud | Engineering | New York, NY (HQ) (+ Miami, Remote US/CA) | true | $211.4K – $290.6K USD/yr | 2026-04-07 | ashby |
| Vercel | Account Executive- Startups, Greenfield | — | Hybrid - San Francisco, New York City, Austin | false | — | 2025-08-19 | greenhouse |
| Mistral | Account Executive – AI for Citizens | Business | Paris | false | — | 2025-07-28 | lever |
Full JSON per job (real record, abbreviated description omitted via includeDescription: false):
{"company": "Ramp","companySlug": "ramp","ats": "ashby","jobId": "34413f8d-26bf-4bbc-8ade-eb309a0e2245","title": "Security Engineer, Cloud","department": "Engineering","team": "Backend","employmentType": "FullTime","location": "New York, NY (HQ)","allLocations": ["New York, NY (HQ)", "Miami, FL", "Remote (US)", "Remote (Canada)"],"country": "USA","isRemote": true,"workplaceType": "Hybrid","salaryMin": 211400,"salaryMax": 290600,"salaryCurrency": "USD","salaryInterval": "year","salarySummary": "$211.4K – $290.6K • Offers Equity","publishedAt": "2026-04-07T17:12:35.753Z","updatedAt": null,"url": "https://jobs.ashbyhq.com/ramp/34413f8d-26bf-4bbc-8ade-eb309a0e2245","applyUrl": "https://jobs.ashbyhq.com/ramp/34413f8d-26bf-4bbc-8ade-eb309a0e2245/application","sourceEndpoint": "https://api.ashbyhq.com/posting-api/job-board/ramp","scrapedAt": "2026-07-21T00:19:43.009Z"}
Every field is present on every row (with null where the ATS doesn't publish it), so the dataset drops straight into Sheets, BigQuery, Clay, or a dataframe.
Pricing & typical cost
Pay per result — you only pay for jobs actually saved. Filters and caps (maxTotalResults, maxJobsPerCompany) are applied before billing, so a title-filtered run costs a fraction of a full dump. Monitoring 500 companies weekly at ~40 open roles each ≈ 20,000 results per run.
Scheduling & integrations
- Schedule the Actor (e.g. daily) and diff
jobIdsets downstream to detect newly opened/closed roles. - Use the Apify API, webhooks, or the dataset export (JSON, CSV, Excel) — plus native integrations with Make, Zapier, n8n, Google Sheets, and MCP for AI agents.
FAQ
Is this legal? The Actor reads public, logged-out JSON endpoints that the companies' own career pages call, and collects only company-level information (job postings). It does not touch LinkedIn, Indeed, or any personal data.
How do I find a company's board/slug? Usually you don't need to — pass the company website and let auto-detection work. If you want to be explicit, open the company's careers page and copy the jobs.lever.co/..., boards.greenhouse.io/..., jobs.ashbyhq.com/... etc. link.
A company wasn't found. Why? Either it uses an unsupported ATS (e.g. Workday, iCIMS, SAP SuccessFactors — on the roadmap), its board has no public roles, or its careers page hides the ATS link behind JavaScript. The run log lists every unresolved company with a tip. Passing the exact board URL always works.
Do I get salaries for every job? Only where the company publishes them. Ashby and Lever expose structured compensation most often; for the rest the Actor parses ranges out of the description text ("$120,000 - $150,000", "€80k–100k", etc.).
What about descriptions? Off by default to keep datasets light. Set includeDescription: true to get plain-text and HTML descriptions. (On SmartRecruiters this needs one extra request per job, so it's slower there.)
Rate limits / blocking? The endpoints are public APIs designed for careers-page traffic; the Actor uses gentle concurrency, retries with backoff, and optional Apify Proxy. Runs are HTTP-only — no browser — so they're fast and cheap.
Which platforms are next? Teamtailor, Personio, BambooHR, and JazzHR are the shortlist. Open an issue to vote.