ATS Career-Site Jobs (Greenhouse, Lever, Ashby)
Pricing
$7.88 / 1,000 job extracteds
ATS Career-Site Jobs (Greenhouse, Lever, Ashby)
Get open jobs from company career sites hosted on Greenhouse, Lever or Ashby as one normalized JSON schema: title, department, location, remote flag, posted date, apply URL. Uses the public job-board APIs. No login, no browser, no proxy.
Pricing
$7.88 / 1,000 job extracteds
Rating
0.0
(0)
Developer
EchoEmpire Machine Foundry (EchoEmpire LLC)
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
Company career-site slugs in, open jobs out, in one JSON schema no matter which ATS hosts the board.
Which jobs Actor should I use?
Use this one when you already know which companies you care about and they host their career site on Greenhouse, Lever or Ashby. It reads those boards' public job-board APIs and normalizes every posting into the same fields. It does not cover other ATS vendors (Workday, iCIMS, SmartRecruiters, etc.) or job aggregators. For keyword search across LinkedIn, use LinkedIn Jobs.
| Input | companies[] (board slugs or board URLs), optional title/location/remote/date filters |
| Output per job | id, title, company, companySlug, sourceAts, department, team, location, remote, workplaceType, employmentType, postedAt, updatedAt, url, applyUrl, status |
| Pricing | $0.00788 per job returned ($7.88 / 1,000). Failed boards are not billed. |
| Access | Public job-board APIs (boards-api.greenhouse.io, api.lever.co, api.ashbyhq.com). No login, no browser, no proxy. |
| Call it | REST skilled_glee~ats-career-site-jobs · MCP https://mcp.apify.com/?tools=skilled_glee/ats-career-site-jobs |
Pipeline role (n8n / agents): Jobs → Discover + Fetch. Next step for hiring leads: pass company sites to Contact Details Extractor. Full catalog of steps: EchoEmpire Machine Foundry llms.txt.
Input
{"companies": ["greenhouse:stripe", "https://jobs.lever.co/palantir", "ashby:ramp"],"titleKeywords": ["engineer"],"maxJobsPerCompany": 3}
companies(required, 1–100):greenhouse:SLUG,lever:SLUG,ashby:SLUG, or a board URL (boards.greenhouse.io/SLUG,job-boards.greenhouse.io/SLUG,jobs.lever.co/SLUG,jobs.ashbyhq.com/SLUG). The slug is the company part of the board URL.ats(defaultauto): used for bare slugs.autotries Greenhouse, then Lever, then Ashby and uses the first board that exists. The same slug can belong to different companies on different systems, so prefix the slug when in doubt.titleKeywords,locationKeywords(optional): keep jobs whose title / location contains any of the words (case-insensitive).remoteOnly(defaultfalse),postedWithinDays(default0= off).maxJobsPerCompany(1–2000, default 200): limit after filters.includeDescription(defaultfalse): addsdescriptionText(plain text).
Output
One dataset row per job. Rows from a real run (2026-10-29):
{"id": "8172503", "title": "Abuse Research Engineer", "company": "Stripe", "companySlug": "stripe", "sourceAts": "greenhouse", "department": "8611 Security Analytics", "team": null, "location": "Remote from the US", "remote": true, "workplaceType": null, "employmentType": null, "postedAt": "2026-09-09T14:52:09Z", "updatedAt": "2026-10-29T14:42:09Z", "url": "https://stripe.com/jobs/search?gh_jid=8172503", "applyUrl": "https://stripe.com/jobs/search?gh_jid=8172503", "input": "greenhouse:stripe", "status": "ok"}
Field notes:
postedAt: Greenhousefirst_published, LevercreatedAt, AshbypublishedAt, as UTC ISO 8601.updatedAtis only available on Greenhouse.remote:truewhen the ATS marks the job remote (AshbyisRemote, LeverworkplaceType: remote) or the location text contains "remote";falseonly when Lever says on-site; otherwisenull(unknown). It is not a guess.team,workplaceType,employmentTypecome from Lever/Ashby; Greenhouse's public API does not expose them, so they arenullthere.companyis the company name from Greenhouse; for Lever and Ashby (whose APIs do not return a name) it is the slug.
A company that fails (unknown slug, not one of the three ATS, HTTP error) produces one row {"input": "...", "status": "error", "error": "..."} and is not billed. A run summary (per-company counts, jobs charged, whether a spending limit stopped the run) is saved as SUMMARY in the default key-value store.
Pricing (pay per event)
| Event | When | Price |
|---|---|---|
job-extracted | Once per job row with status: "ok" saved to the dataset | $0.00788 |
No start fee. Error rows are free. Example: 3 companies × 50 jobs = 150 × $0.00788 = $1.18. If you set a maximum charge per run, the Actor stops saving jobs when the limit is reached.
Limits
- Greenhouse, Lever and Ashby public boards only; boards a company hides or keeps internal are not visible.
- Only currently open postings (these APIs do not return closed jobs).
- No salary/compensation fields.