Company Tech Stack API avatar

Company Tech Stack API

Pricing

Pay per event

Go to Apify Store
Company Tech Stack API

Company Tech Stack API

Detect any company's tech stack and hiring footprint from its public ATS job board. 80+ tools across cloud, data, AI and business systems.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Spool

Spool

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 days ago

Last modified

Share

Company Tech Stack API — Detected from Job Postings

Find companies by the technology they run. Not a lookup — a search.

Ask for "YC fintech companies that are hiring and use Salesforce, NetSuite or Snowflake" and get the list back, with each company's full stack, hiring breakdown and expansion signals.

Scanned 60 · resolved 29 · matched 5
ramp 142 jobs Salesforce · NetSuite · Snowflake · Looker · dbt 62 of 142 roles are Sales
atob 10 jobs Salesforce · Stripe · Shopify · Ruby · PostgreSQL
alpaca 59 jobs Spark · GCP · Kubernetes · gRPC · PostgreSQL

Companies announce their stack in public every day and nobody reads it. A firm hiring three Kubernetes engineers and a Snowflake analyst has told you what it runs and what it's spending on, months before any vendor database catches up.


Why nothing else does this

Every other technographic tool is an enrichment tool: you bring a list, it annotates it. That is not a choice they made — it is a wall. No applicant tracking system publishes a company directory or a cross-board search. Every such endpoint returns 404 or 401:

Greenhouse board list → 404 Lever directory → 404
Ashby directory → 401 Cross-board search → 404

So a tech stack can only be looked up for a company you can already name.

Unless you bring your own directory. Two are public and complete enough:

DirectorySizeWhat it adds
Y Combinator6,202 companies59 industries, 335 tags, 50 batches — each its own endpoint
Hacker News Who is hiring?~240 companies/month~95% are not YC — the half of the market YC cannot reach

YC companies run overwhelmingly on Greenhouse and Ashby, exactly the boards this reads. HN posters often link their ATS board directly. Joining these to the board APIs turns lookup into search.

That query — find companies by the tools they're hiring for — is not answered by BuiltWith, Datanyze or any ATS scraper, because it is built from hiring intent rather than a website scan or a purchased list.


Why hiring beats a website scan

Most "tech stack" tools read a website's HTML and find the marketing pixels — Google Analytics, HubSpot, Intercom. Useful, shallow, identical across thousands of companies.

Job postings reveal the internal stack: the data warehouse, the cloud, the ERP, the orchestration layer, the ML framework. None of that appears in a <script> tag. And a job posting is a budgeted signal — somebody approved headcount for it.


Quick start

Search mode — pick a directory, filter it, and name the technologies you care about:

{
"discoverFrom": "ycombinator",
"ycIndustries": ["fintech"],
"requireTech": ["Salesforce", "NetSuite", "Snowflake"],
"maxCompanies": 100
}

Industries and tags combine with AND, so b2b + tag ai gives B2B companies also tagged AI — 611 of them, 212 hiring. Only the endpoints you ask for are downloaded, so a narrow search costs a few hundred KB rather than the 10 MB dump.

Lookup mode — name the companies yourself. Names, domains and board URLs all work, mixed freely:

You typeWhat happens
StripeName matched against live boards
ramp.comDomain
https://boards.greenhouse.io/okloBoard URL — always resolves

Both can run together.


What you get back

{
"company": "ramp",
"atsProvider": "ashby",
"openJobs": 142,
"ycBatch": "Winter 2019",
"ycIndustry": "Fintech",
"ycTeamSize": 1000,
"techStack": ["Python", "Salesforce", "NetSuite", "LLM", "AWS", "Anthropic"],
"techByCategory": {
"business": ["Salesforce", "NetSuite", "Workday", "SAP", "HubSpot"],
"data": ["Snowflake", "Looker", "dbt", "BigQuery", "Airflow", "Kafka"],
"ai": ["LLM", "Anthropic", "RAG"]
},
"techDetail": [
{ "name": "Salesforce", "category": "business", "jobCount": 23 },
{ "name": "NetSuite", "category": "business", "jobCount": 22 }
],
"signals": {
"hiringFocus": "Sales",
"hiringScale": "scale-up",
"salesLed": true,
"aiAdoption": "committed",
"dataMaturity": "advanced",
"primaryCloud": "AWS",
"seniorityProfile": "balanced",
"remotePosture": "hybrid"
},
"departments": [{ "name": "Sales", "count": 62 }, { "name": "Engineering", "count": 30 }]
}

techDetail carries the evidence, not just the claim. A tool named in 1 job of 600 is a mention; named in 40, it's a commitment.

signals carries the reading of it. salesLed: true means the sales org is outgrowing engineering — the classic moment a company is expanding go-to-market and buying tools. Every threshold is published in signals.thresholds, so you can disagree with an interpretation without losing the numbers underneath.

Six dataset views ship with it: Overview, Discovery, Signals, Tech stack, Hiring footprint and Failures.


Recipes — copy, paste, run

Companies outside YC entirely — from Hacker News

{
"discoverFrom": "hackernews",
"hnMonths": 6,
"requireTech": ["Kubernetes", "Terraform"],
"maxCompanies": 400
}

Every YC company running a modern data stack

{
"discoverFrom": "ycombinator",
"requireTech": ["Snowflake", "dbt", "Looker"],
"requireTechMode": "all",
"maxCompanies": 400
}

Companies expanding their sales org — the moment they buy

{
"discoverFrom": "ycombinator",
"ycIndustries": ["B2B"],
"requireSignals": ["salesLed:true", "hiringScale:scale-up"],
"maxCompanies": 300
}

Who actually committed to AI, rather than talking about it

{
"discoverFrom": "ycombinator",
"requireSignals": ["aiAdoption:committed"],
"ycStages": ["Growth"],
"maxCompanies": 300
}

Enrich an account list you already have

{
"companies": ["ramp.com", "brex.com", "mercury.com"],
"techCategories": ["business"],
"minJobMentions": 3
}

Every option

OptionDefaultWhat it does
discoverFromnoneycombinator, hackernews, or both — search a directory instead of naming companies
ycIndustries(all)59 available: b2b (3,158), consumer (884), healthcare (697), fintech (658), healthcare-it (141), sales (135)…
ycTags(all)335 available: saas (1,097), artificial-intelligence (998), developer-tools (548), generative-ai (255), payments (146)… Combines with industries using AND
hnMonths3How many monthly Who is hiring? threads to read. Repeats across months are merged
ycStages(all)Early (5,116) or Growth (1,086)
ycRegions(all)US, Europe, Remote, Asia, Latin America…
ycBatches(all)winter-2024, summer-2023 — 50 batches
ycOnlyHiringtrueOnly companies with open roles. 1,477 of 6,202
ycOnlyTopCompaniesfalseYC's own breakout-company flag
ycMinTeamSize / ycMaxTeamSizeHeadcount bounds
maxCompanies100Cap on discovered companies scanned per run
companiesNames, domains or board URLs, mixed freely
requireTech(none)Only keep companies using these. The filter that makes it a lead list
requireTechModeanyall finds specific combinations, like Snowflake and dbt and Looker
requireSignals(none)salesLed:true, aiAdoption:committed, dataMaturity:advanced
onlyProvideranyGreenhouse, Ashby, Lever or SmartRecruiters
minJobMentions1Evidence threshold per technology
techCategories(all)business, data, ai, security, cloud, devops, database, language, frontend, backend, observability
detailLimit60SmartRecruiters only — descriptions to fetch
includeJobsfalseAdd every open role with its own tech and seniority
maxConcurrency5Companies looked up in parallel

What it covers, honestly

Greenhouse, Ashby, Lever and SmartRecruiters. The first three cover startup and scale-up hiring; SmartRecruiters covers the enterprise end (Bosch alone lists 4,811 roles). Workday and iCIMS are not covered.

Name resolution, measured on 110 real companies:

Resolved from the name alone
Companies that use a supported ATS89%
An arbitrary list of companies58%

The gap is coverage, not guessing. Roughly half of companies run on an ATS this does not read, or a custom careers page. In a discovery run expect about half the scanned companies to resolve — that is normal and the run summary states it plainly. Misses return board_not_found with the candidates that were tried, so a miss is always visible rather than silent.

Depth differs by provider. Greenhouse, Ashby and Lever return every description in one request, so detection reads the whole board. SmartRecruiters returns none — each description is a separate call — so descriptions are read for the first detailLimit roles and the rest still contribute titles, departments and locations. Those rows carry descriptionsRead and totalFoundOnBoard, so the sampling is visible rather than implied.

190 technologies across 11 categories. Each has an explicit match pattern — ambiguous names like Go, R and Ray require surrounding context, so "going to the algorithm" never registers as Go.

No proxy, no key, no blocking. These are public JSON endpoints published by the ATS vendors themselves. Greenhouse's robots.txt permits the board API.


What it costs

Companies that match your filters and are returned are the billable unit. Companies scanned and filtered out are charged at a fraction of that, because looking them up still did work but gave you nothing to act on. A company that isn't on a supported ATS costs nothing at all.

That means a wide search with a narrow filter stays cheap: scanning 300 companies to find the 12 running NetSuite bills 12 at the full rate.


When a lookup fails

errorMeaning
board_not_foundNot on a supported ATS, or the name didn't match. triedLookups shows what was attempted — paste the board URL instead
no_open_jobsBoard exists but is currently empty
network_errorTimeout or connection failure
invalid_inputCouldn't read a name, domain or URL from that value

A full breakdown is saved to the key-value store as RUN_SUMMARY.


FAQ

Can I search for companies, or must I know them already? Search. Two directories are built in: Y Combinator (filterable by 59 industries, 335 tags, 50 batches, stage, region, team size and hiring status) and the monthly Hacker News Who is hiring? thread, which is about 95% non-YC companies. Both can run at once, duplicates merged. You can also just name companies yourself.

What no tool can do is search the whole market — no ATS publishes a directory, so coverage is bounded by whichever directories you point it at.

How reliable is the Hacker News parsing? Posts follow a pipe convention — Company | Role | City | REMOTE | url — and only top-level comments are read, since replies are candidates asking questions. Only the first field and the first URL are trusted; everything after varies too much between posters to be worth parsing. On a recent thread that gave 228 companies from 240 posts, with replies correctly rejected.

How is this different from BuiltWith or Wappalyzer? Those scan a website's HTML and see front-end and marketing tools. This reads hiring intent and sees the internal stack — warehouse, cloud, ERP, ML framework — which never appears in page source.

Can I find every company using Salesforce or NetSuite? Every company in the directory that is hiring and on a supported ATS, yes — set requireTech. Not every company on earth; no honest tool can claim that.

How many technologies can it detect? 190, across languages, frontend, backend, cloud, DevOps, databases, data, AI/ML, business systems, security and observability.

Does it work for companies posting in other languages? Yes. Departments are read from the company's own ATS labels first and only fall back to title matching, so a board posting in German, Spanish and Portuguese still classifies correctly. On Bosch that took unclassified roles from 51% to 3%.

Is this legal? It reads public job postings that companies publish deliberately to be found, plus a public startup directory. Everything returned is company-level — technologies, counts, departments, locations. No candidate data, no personal contacts, no names. That is a deliberate design choice, not an oversight.


Support

Open an issue on the Issues tab and you'll get a reply, usually the same day. Requests for extra technologies in the taxonomy are especially welcome — tell me what you need detected and I'll add it.