Company Hiring Signals (Greenhouse, Lever, Ashby + More)
Under maintenancePricing
from $0.01 / 1,000 results
Company Hiring Signals (Greenhouse, Lever, Ashby + More)
Under maintenanceTurn company names or careers URLs into hiring signals: open roles by department and location, remote share, posts in the last 30 days, and roles added/removed since your last run. Uses companies' own public job-board APIs.
Pricing
from $0.01 / 1,000 results
Rating
0.0
(0)
Developer
Troy Daniels
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 hours ago
Last modified
Categories
Share
Give it a company name or careers URL, and get back one clean row per company saying what it's hiring for right now:
- Total open roles, and how many were posted in the last 30 days
- Top departments and locations
- Remote share, and how many roles list a salary
- New and removed roles since your last run when persistent monitoring state is available (see Monitoring below), so you can schedule it daily or weekly and see when a company starts hiring sales, security or AI people
You can also turn on every job row: title, department, location, remote flag, type, date posted, link and salary where it's published. All ATSs come back in the same format.
Why it's reliable
It reads each company's own public job-board API (Greenhouse, Lever, Ashby, SmartRecruiters, Recruitee). Those are official, keyless JSON endpoints, the same ones that power the company's careers page. It doesn't scrape LinkedIn or Indeed, so there's no login, no browser and no anti-bot blocking. That makes runs fast and cheap.
Use cases
- B2B sales signals: "Acme just opened 6 security roles" is a trigger to reach out
- Investors and analysts: track hiring velocity across a portfolio or watchlist
- Recruiters and job boards: pull normalised jobs from hundreds of companies in one run
- AI agents through the Apify MCP server: "Which of these 40 companies posted ML roles this month?"
Input
{ "companies": ["stripe", "https://jobs.ashbyhq.com/ramp", "lever:palantir"],"includeJobs": false, "monitorChanges": true, "maxJobsPerCompany": 2000 }
Bare names are auto-detected, trying Greenhouse, then Lever, Ashby, SmartRecruiters and Recruitee. For an exact match, use a careers URL or ats:slug.
Output: company row
{ "type": "company", "company_slug": "stripe", "ats": "greenhouse", "open_roles": 731,"posted_last_30_days": 273, "remote_share": 0.157, "with_salary": 0,"top_departments": {"Engineering": 210}, "top_locations": {"San Francisco, CA": 120},"new_since_last_run": ["greenhouse:stripe:123"], "removed_since_last_run": [] }
Monitoring (new / removed roles)
With monitorChanges on (the default), the Actor records the job IDs it saw under PREVIOUS_JOB_IDS.
By default that record lives in the run's own key-value store, so it does not persist across runs and no new/removed diff is reported.
To track changes across runs, create a key-value store in your own Apify account and pass its ID as the optional keyValueStoreId input; that store is then used for the record.
If a store cannot be opened (for example, Apify store runs run under limited permissions, which block named stores), the Actor logs a warning and still returns the company results without change tracking -- monitoring never fails the run.
Pricing (pay per event)
company-analyzed: $0.01 per company found. Companies that aren't found are free.job-returned: $0.001 per job row ($1 per 1,000), only when "Also return every job row" is on
Limitations
- Workday, Teamtailor, Workable and custom career sites aren't supported yet.
remote_shareuses each ATS's own remote flag. Ashby marks a role remote whenever any of its locations is remote.- Only public job postings are read. No applicant or personal data is involved.