VOOZH about

URL: https://apify.com/hamzatrq/hiring-signal-monitor

โ‡ฑ Hiring Signal Monitor โ€” Open Roles & Hiring Velocity ยท Apify


๐Ÿ‘ Hiring Signal Monitor: Open Roles & Hiring Velocity avatar

Hiring Signal Monitor: Open Roles & Hiring Velocity

Pricing

from $5.00 / 1,000 results

Go to Apify Store

Hiring Signal Monitor: Open Roles & Hiring Velocity

Track open roles and hiring velocity from companies' Greenhouse and Lever job boards as a B2B sales and expansion trigger. New-role and velocity-spike alerts, with a hard cost cap. For sales, recruiting and market research.

Pricing

from $5.00 / 1,000 results

Rating

0.0

(0)

Developer

๐Ÿ‘ Hamza Tariq

Hamza Tariq

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

0

Monthly active users

9 days ago

Last modified

Share

Hiring Signal Monitor โ€” track open roles & hiring velocity for sales triggers

Turn a company's hiring into a sales and expansion signal. A hiring signal monitor / job-postings scraper / extractor / data API / feed that reads companies' public Greenhouse and Lever job boards and surfaces the actual SIGNAL โ€” which functions a company is hiring for, how fast, and where โ€” not just raw rows. Every open role is normalized to one schema with a normalized function (Engineering, Sales, Product, โ€ฆ), a real derived seniority, a cleaned department, hiring velocity (postedWithinDays / isRecent), and a best-effort salary band. Flip on groupBy: "company" for one aggregated hiring summary per company โ€” roles by function, roles posted in the last 30/90 days, top locations, remote share, and the newest roles. Repeated runs turn it into a new-role and velocity-spike monitor โ€” for B2B sales teams, recruiters, CI/market researchers, and investors tracking talent demand.

Quick Start: click Start with the default input. With zero configuration it pulls open roles from a known public Greenhouse board and a known public Lever board and returns clean rows โ€” company, role title, function, seniority, department, team, employment type, location, remote flag, days since posted + a recent flag, salary (when listed), open-role count, and the posting link. To track your own target accounts, paste company board tokens into greenhouseTokens (e.g. gitlab โ€” the slug after boards.greenhouse.io/) and/or leverTokens (e.g. leverdemo โ€” the slug after jobs.lever.co/). Set groupBy to company for one rolled-up hiring-signal summary per company. Narrow the feed with the optional filters โ€” roleKeywords, seniority, department, locationIncludes, remoteOnly (all empty = every role). First useful results in under two minutes.

What it does

Greenhouse and Lever expose public, no-auth JSON job boards per company, so the data is clean, stable, and easy to extract โ€” no browser, no login, and deliberately not the anti-bot Indeed/LinkedIn head. This actor:

  • pulls a company's open roles with title, cleaned department, team, employment type, location, and remote flag;
  • enriches every role with a normalized business function (Engineering, Product, Design, Data & Analytics, Sales, Marketing, Customer Success, Support, Operations, Finance, People & HR, Legal, IT, Security, Other), a real derived seniority band (intern โ†’ executive), hiring velocity (postedWithinDays + an isRecent โ‰ค30-day flag), and a best-effort salary band (from a structured pay field where the board exposes one, else parsed from the description);
  • normalizes every role across boards to one schema with a stable, board-scoped id and a company-level open-roles count (a hiring level โ€” the budget-and-expansion signal; tracked over scheduled runs it becomes the velocity trend);
  • with groupBy: "company", aggregates the whole board into one summary per company โ€” open-role count, roles by function and by seniority, top locations, remote share, roles posted in the last 30/90 days, the top functions, and the newest roles;
  • on a schedule, becomes a monitor โ€” emitting (and charging for) only roles (or company summaries) that are new or whose details changed since the last run.

The function field is deterministic-first: a built-in keyword classifier always populates it, so the actor works with no setup. Set an optional AI_API_KEY (any OpenAI-compatible endpoint โ€” OpenRouter by default) and a single batched AI call per run refines the function for each company's bespoke department names; without a key it degrades silently to the deterministic rules.

Who it's for

B2B sales teams (hiring is a buying trigger โ€” a company hiring five sales reps is expanding), recruiters, and market researchers tracking talent demand.

Sources & roadmap

  • Greenhouse โ€” live today, via the public board JSON (boards-api.greenhouse.io).
  • Lever โ€” live today, via the public board JSON (api.lever.co).
  • Other ATS / niche boards (Ashby, Workable, vertical boards) โ€” planned follow-ons; the schema already carries a board field so they slot in without a schema change.

Input

Runs zero-config. Optional fields:

  • greenhouseTokens โ€” one or more Greenhouse board tokens (the slug in a board URL). Leave empty for a demo run on a known public board.
  • leverTokens โ€” one or more Lever board tokens (the slug in a Lever jobs URL). Leave empty for a demo run on a known public board.
  • roleKeywords โ€” keep only roles whose title contains one of these (case-insensitive); e.g. ["engineer", "sales"]. Empty = every role.
  • seniority โ€” keep only roles whose derived seniority is one of intern, junior, mid, senior, lead, executive, unknown. Empty = every level.
  • department โ€” keep only roles whose department contains one of these. Empty = every department.
  • locationIncludes โ€” keep only roles whose location contains one of these (e.g. ["berlin", "remote"]). Empty = every location.
  • remoteOnly โ€” when true, keep only roles flagged remote. Default false.
  • groupBy โ€” role (default) = one row per open role with all the enriched fields; company = one aggregated hiring-signal summary per company.
  • maxItems โ€” cap on roles returned per run (keeps runs cheap).
  • maxCostPerRunUsd โ€” hard ceiling on spend per run (default $5).

Optional environment variable: AI_API_KEY (+ optional AI_BASE_URL, AI_MODEL) enables the AI function-refinement pass. It is never required โ€” the actor produces a full result without it.

All filters are applied at fetch time, so you only pay for the roles you asked for. The boards have no query API; the actor fetches the public board and drops non-matching roles in-process.

Output

groupBy: "role" (default) โ€” one role per row: company, board, title, function, seniority, department, team, employmentType, location, remote, postedDate, postedWithinDays, isRecent, salaryMin, salaryMax, salaryCurrency, openRoles, and the role sourceUrl, plus a stable board-scoped id and kind: "role".

groupBy: "company" โ€” one summary per company: company, board, openRoles, rolesByFunction, rolesBySeniority, topLocations, remotePct, postedLast30d, postedLast90d, topFunctions, newestRoles, the board sourceUrl, a company-scoped id, and kind: "company".

See .actor/dataset_schema.json (the overview and companies views).

Notes on fields:

  • function is a normalized business function from the fixed taxonomy above โ€” deterministic by default, AI-refined when AI_API_KEY is set.
  • postedWithinDays is whole days between the posting date and run time; isRecent is true at โ‰ค30 days. Salary is null on all three fields when the board exposes no structured pay field and the description states no pay.
  • openRoles is the number of open roles on that company's board at fetch time โ€” a hiring level (identical on every role row from the same board), not a per-run rate. Schedule the actor and the change in this level run-over-run is the velocity trend.
  • company for Lever rows is the board slug (e.g. leverdemo); Lever's public board JSON does not carry a display name. Greenhouse rows carry the real company_name.
  • department is cleaned of any leading internal-ID prefix (e.g. 1195 Account Executives โ†’ Account Executives). It populates on Greenhouse (via the public board's departments) and on Lever (native). team and employmentType are Lever-native and are null on Greenhouse.

Pricing

Pay-per-event: a small start fee plus a per-result charge, with a hard per-run cost cap on by default โ€” so the bill is never a surprise. In monitor mode you pay only for new or changed roles. Built on public, stable Greenhouse and Lever board APIs, so it is low-maintenance โ€” fixes within 24h.

You might also like

Hiring Signal Tracker

emastra/hiring-signal-tracker

Extract structured hiring signals and growth metrics from Greenhouse, Lever, and Ashby. Track headcount changes, department breakdowns, and new role velocity over time. Perfect for VCs, recruiters, and sales teams seeking real-time intent data from public job boards.

๐Ÿ‘ User avatar

Emiliano Mastragostino

7

Hiring Signals Finder - Companies Hiring (Sales Leads)

santhej/hiring-signals-finder

Find companies hiring for any role - aggregated from Google Jobs into a sales-trigger lead list. See which companies are hiring, how many openings, roles, locations and company domain.

๐Ÿ‘ User avatar

Santhej Kallada

4

5.0

Lever Jobs Scraper for Hiring Signal Data

fetch_cat/lever-jobs-scraper

Export public Lever jobs with titles, teams, locations, URLs, descriptions, and timestamps for recruiting, sales signals, job boards, and hiring alerts.

Public ATS Hiring Signals Monitor

sgforce/public-ats-hiring-signals-monitor

Monitor public Greenhouse, Lever, Ashby, Workable, and Recruitee job boards. Export clean hiring-signal rows for sales, recruiting, market research, and API workflows.

๐Ÿ‘ User avatar

Francesco Scilipoti

2

ATS Hiring Signal Scraper

taroyamada/ats-hiring-signal-intelligence

Monitor Greenhouse, Lever, and Ashby public job boards for new roles, departments, regions, remote hiring, matched keywords, hiring signal scores, PPE charged events, and no-charge invalid/no-public-board rows.

Job Market Intel

pranayjsathish/job-market-intel

Track hiring trends and detect company growth signals from job postings. Automatically scrapes 90+ tech companies (Greenhouse, Lever APIs) + remote job boards. Get alerts when companies post 10+ jobs (hiring spike = sales opportunity). Perfect for sales teams, recruiters, investors, and job seekers.

๐Ÿ‘ User avatar

Pranay J Sathish

14

5.0

Greenhouse Lever Ashby Job Scraper: GTM Hiring Signals

mambalabs/gtm-hiring-signal-scraper

Detect companies actively hiring GTM teams. Scrapes Greenhouse, Lever, Ashby, Workday, and Rippling for Sales, RevOps, and Growth roles. Flat JSON with role counts and velocity signals. Built for Clay enrichment columns. MCP-ready for Claude Desktop, Cursor, and AI agents.