Search jobs, get companies
Filter postings by title, description, AI keywords, field, seniority, employment type, work arrangement, location, and recency, then receive distinct companies, not individual jobs.
Signal-based TAM
Filter job postings like a search, get accounts back like a market map: deduplicated companies actively hiring for the roles you care about, each with a matched-jobs count.
Trusted by the best GTM teams














A static TAM goes stale. Hiring activity tells you which accounts are investing right now.
Filter postings by title, description, AI keywords, field, seniority, employment type, work arrangement, location, and recency, then receive distinct companies, not individual jobs.
Stack job-level filters with company firmographics (industry, size, headcount, HQ) so results match your ICP and are actively hiring.
Use min_per_company to keep only companies with enough matching openings: one job is noise, five is a strategy.
Exclude confirmed recruitment and staffing agencies with a single flag, so your TAM contains buyers, not intermediaries.
One endpoint, POST /v2/company/tam-by-jobs, turns hiring criteria into a deduplicated market.
Filter by job title, description keywords, AI-matched themes, seniority band, work arrangement, location, and how recently the job was posted.
Add firmographic criteria (industry, size, headcount, HQ) and exclude staffing agencies to keep only real buyers.
Floor the matched-jobs count with min_per_company so only companies hiring at meaningful volume make the list.
Walk cursor-based pages until the cursor comes back null. Each result is a full company profile with its matched_jobs count.
The endpoint
The TAM by Jobs API runs job posting filters and returns the distinct companies behind the matching postings, deduplicated, each with a matched_jobs count. Set min_per_company to keep only the companies hiring for a role several times, then page with the cursor.
curl -X POST https://api.blitz-api.ai/v2/company/tam-by-jobs \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"job": {
"title": {"include": ["Account Executive"]},
"min_per_company": 3
},
"company": {"industry": {"include": ["Software Development"]}},
"max_results": 50
}'from blitz_api import BlitzAPI
client = BlitzAPI() # reads BLITZ_API_KEY
tam = client.company.tam_by_jobs(
job={
"title": {"include": ["Account Executive"]},
"min_per_company": 3,
},
company={"industry": {"include": ["Software Development"]}},
max_results=50,
)
for match in tam.results:
print(match.company.name if match.company else None, match.matched_jobs)import { BlitzAPI } from "blitz-api-js";
const client = new BlitzAPI(); // reads BLITZ_API_KEY
for await (const match of client.company.tam_by_jobs({
job: { title: { include: ["Account Executive"] }, min_per_company: 3 },
company: { industry: { include: ["Software Development"] } },
max_results: 50,
max_items: 200,
})) {
console.log(match.company?.name, match.matched_jobs);
}results[].companyresults[].matched_jobscursorSearch and discover companies by industry, size, location, keywords, and signals. Build markets, identify accounts, and create better prospecting workflows.
Search job postings by title, description, location, date, and company data. Use hiring activity to build TAMs, enrich accounts, and trigger GTM workflows.
Track all jobs related to a company, grouped by month. Detect hiring trends, growth and keyword signals, and company movements with hourly refreshed data.
Jobs Search returns individual postings. TAM by Jobs runs the same job filters but returns the distinct companies behind them, deduplicated, each with a matched_jobs count, so the output is an account list, not a jobs feed.
All filters combine with AND. Multiple values inside a single include list combine with OR: two titles return companies hiring for either role, and exclude lists remove matches.
Pagination is cursor-based: pass each response's cursor into the next request until it comes back null. When min_per_company filters heavily, a page can come back partial, so keep paging until the cursor is null.
The list of companies that make up your total addressable market: every account that fits your ICP. TAM by Jobs builds it from hiring activity, so the list starts with the companies growing the teams you sell to.