Job Postings Monitor - Greenhouse, Lever & Ashby
Pricing
Pay per usage
Job Postings Monitor - Greenhouse, Lever & Ashby
Monitor job boards of any companies on Greenhouse, Lever or Ashby. Get new, changed and closed job postings as events — perfect hiring signals for outbound sales, recruiting and market intelligence.
Job Postings Monitor — Greenhouse, Lever & Ashby
Track the job boards of any list of companies hiring through Greenhouse, Lever or Ashby — and get new, changed and closed job postings as clean events, not a raw dump you have to diff yourself.
Companies post jobs before they buy tools, expand teams, or enter markets. That makes job postings the highest-signal, publicly available buying intent data there is. This Actor turns them into a feed you can pipe straight into your outreach, recruiting or market-intelligence workflow.
Who is this for?
- Outbound sales & GTM teams — "company X just opened 3 Sales Ops roles" is a perfect trigger to reach out. Feed events into Clay, n8n, Make or your CRM.
- Recruiters & sourcing agencies — know the moment target companies open (or quietly close) positions.
- Founders & analysts — watch competitors' hiring to see what they're building next.
- Job seekers — get notified the hour your dream company posts a matching role.
What it does
- You give it a list of company slugs (from their job board URL — the Actor auto-detects whether each company uses Greenhouse, Lever or Ashby).
- On the first run it snapshots the full board (optional baseline output, so you get data immediately).
- On every following run it compares against the stored state and outputs only what happened:
event | Meaning |
|---|---|
new | job posting appeared since last run |
changed | title / location / department of a posting changed |
closed | posting disappeared (filled or withdrawn) |
baseline | first-run snapshot (optional) |
heartbeat | nothing changed this run (single record, so you can see the monitor is alive) |
- Optionally it POSTs the events to your webhook (Slack, Discord, Zapier, Make, n8n — anything that accepts JSON).
Run it on a schedule (daily is typical) and you have a fully automated hiring-signals feed.
Quick start
{"companies": ["gitlab", "duolingo", "ramp"],"roleFilters": ["engineer", "sales|account executive"],"webhookUrl": "https://hooks.slack.com/services/XXX/YYY/ZZZ"}
companies— slugs from the job board URL:boards.greenhouse.io/gitlab→gitlab,jobs.lever.co/acme→acme,jobs.ashbyhq.com/ramp→ramp. ATS is auto-detected; pin it explicitly withgitlab:greenhouseif you want to skip detection.roleFilters— optional case-insensitive regex list. Only postings whose title matches are tracked ("companies hiring this role").webhookUrl— optional. Fires only when there are actual events (never on baseline).
Output example
{"event": "new","source": "greenhouse","company": "gitlab","job_id": "8565469002","title": "AI Engineer","location": "Remote, US","department": null,"url": "https://job-boards.greenhouse.io/gitlab/jobs/8565469002","published_at": "2026-07-01T09:12:44-04:00","detected_at": "2026-07-23T20:01:17+00:00"}
Get results as JSON, CSV or Excel from the dataset, via API, or in the Apify MCP server for AI agents.
Why this instead of a generic job scraper?
Generic scrapers give you today's snapshot. To get signals you'd have to store yesterday's snapshot, diff them, handle companies that temporarily fail, and de-duplicate — every day, yourself. This Actor does exactly that internally (state is kept in a named key-value store in your Apify account) and charges you for events, so a quiet day costs almost nothing.
- Covers the three most popular startup/scaleup ATS platforms in one Actor
- Auto-detection: paste slugs, not ATS names
- Role regex filters: track "who is hiring senior Python engineers", not everything
- Resilient: if one company's board is temporarily down, its jobs are not falsely reported as closed
- No login, no proxies to configure, no cookies — public JSON APIs only
FAQ
Where do I find a company's slug? Open their careers page and look at the job application links: boards.greenhouse.io/<slug>, jobs.lever.co/<slug> or jobs.ashbyhq.com/<slug>.
What if a company isn't on Greenhouse/Lever/Ashby? The run reports it in companies_failed (see the SUMMARY key-value record) and continues with the rest.
How often should I run it? Daily fits most sales/recruiting workflows. The monitor state is per-configuration, so you can run several different company lists in parallel without them interfering.
Is this legal? The Actor reads the same public job-board APIs the companies' own careers pages use. No authentication is bypassed and no personal data is collected.