Skip to main content
Glama

Company Hiring Signals: Job Openings & Hiring Intent by Company

company_hiring_signals
Read-only

Measure company hiring intent from public job boards to spot sales triggers, recruiting leads, or competitor growth signals via open roles, new jobs, and a 0–100 hiring score.

Instructions

Measure hiring intent per company from its public job board (Greenhouse, Lever, Ashby and more): open jobs, new jobs in 7/30 days, teams hiring, leadership openings, a 0-100 hiring score and hot/warm/cold signal. Unlike company_website_enricher (tech stack and contacts) and company_team_finder (current staff), this reads open roles as a buying or growth signal. Use when you need sales triggers, recruiting leads or competitor hiring watch for a known list of companies. Do not use to discover companies from scratch (start from local_business_leads, federal_contract_finder or your own list) or for individual job search. Parameters: companies accept domains, names or direct job-board links; links are exact, names can match the wrong board. checkWebsite=true reads the careers page to find the exact board (more accurate, slower). minOpenJobs filters below-threshold companies out unbilled. titleKeywords only count matches; they do not filter. Companies with no public board are returned free with status. Returns per item: agentSummary, company, domain, signal, hiringScore, openJobs, newJobs7d, newJobs30d, leadershipJobs, leadershipTitles, topFunctions, functionCounts, remoteShare, topLocations, keywordHits, newestJobs, lastPostedAt, ats, boardUrl, matchedBy, status.

Behavior: read-only; runs the Apify Actor pandadad0214/company-hiring-signals (https://apify.com/pandadad0214/company-hiring-signals) on your own Apify account. Price: $0.003 per company analyzed. Runs that find nothing are not charged per result, and spending is capped per call by run_max_charge_usd (default $0.50). run_max_items (default 50) limits items returned and fills maxCompanies when you leave it unset, so it also limits what is billed; setting maxCompanies higher can bill more than is returned. Most calls finish in 5-15 s for a few inputs; large inputs or crawls can take minutes, so raise run_timeout_secs (max 300) or shrink the input after a timeout error. Returns JSON {actor, count, items}; long text output is trimmed to whole items, with all items in structuredContent.

Input Schema

NameRequiredDescriptionDefault
companiesNoCompanies. One per line: a company domain (stripe.com), a company name (Notion) or a job-board link (https://jobs.lever.co/spotify, https://boards.greenhouse.io/airbnb, https://jobs.ashbyhq.com/ramp). Leave empty for a 3-company demo.
minOpenJobsNoOnly return companies with at least this many open jobs. Companies below this are listed in the run summary but not returned and not charged. 0 returns every company with a job board.
checkWebsiteNoLook for the job board on the company website. When you give a domain, read the home and careers pages (robots.txt respected) to find the exact job-board link. Off = match the board by company name only (faster, less exact).
maxCompaniesNoMaximum companies. You pay per company returned, so this also caps the cost. 1 to 5,000; default 500.
run_max_itemsNoOptional. Most results to return from this call (default from PANDA_MAX_ITEMS, 50). Also limits how many results the Actor produces and charges for, unless you set its own max field.
titleKeywordsNoKeywords to count in job titles. Optional. Count open roles whose title (or board department) contains these words, e.g. a tool you sell into (Salesforce, HubSpot, Snowflake) or a role you care about (SDR, Account Executive, DevOps).
run_timeout_secsNoOptional. Seconds to wait for results (default from PANDA_TIMEOUT_SECS, 120; max 300).
run_max_charge_usdNoOptional. Hard spending cap for this call in USD (default from PANDA_MAX_CHARGE_USD, 0.50).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already mark this read-only/open-world, but the description goes well past them: per-company price ($0.003), the nuance that below-threshold companies are filtered out unbilled, that companies with no public board come back free with a status, per-call spend cap via run_max_charge_usd, and typical 5-15s vs multi-minute runtimes with a timeout remediation path. The subtle billing warning that raising maxCompanies higher than run_max_items can bill more than is returned is exactly the kind of hazard an agent cannot get from structured fields.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose, usage, exclusions, parameters, and operations are front-loaded in a logical order with no filler sentences. The one cost is the 21-field return enumeration, which is long but defensible given there is no output schema; a compact grouped phrasing would read better.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For an 8-parameter, open-world, paid actor tool with no output schema, the definition covers what an agent needs before calling: cost model, caps, latency, timeout behavior, input ambiguity, non-obvious parameter interactions, and the return shape. Nothing material is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, yet the description still adds decision-relevant meaning: links are exact while bare names "can match the wrong board," checkWebsite trades accuracy for speed, minOpenJobs filters unbilled, and — most importantly — titleKeywords only count matches and do not filter results. It also explains that run_max_items fills maxCompanies when unset, which materially changes cost interpretation beyond the schema text.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Opens with a specific verb+resource ("Measure hiring intent per company from its public job board") and enumerates the concrete outputs (open jobs, new jobs 7/30d, leadership openings, 0-100 score, hot/warm/cold signal). It explicitly distinguishes itself from the two closest siblings, company_website_enricher (tech stack/contacts) and company_team_finder (current staff), framing itself as a forward-looking buying/growth signal instead.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

States exactly when to reach for it ("sales triggers, recruiting leads or competitor hiring watch for a known list of companies") and exactly when not to ("Do not use to discover companies from scratch" or "for individual job search"), naming local_business_leads and federal_contract_finder as the discovery alternatives. Nothing about tool selection is left to inference.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.