Search Hiring Recruiters
POST /hiring-signals/recruiters
The recruiters who posted the matching jobs.
Paged by recruiter_limit/recruiter_offset, INDEPENDENTLY of the
companies paging: one recruiter can serve many companies, so the two
counts diverge and paging one must not move the other.
Authorizations
Parameters
Header Parameters
Request Body required
One request shape for every Hiring Signals tab.
The app uses a single command for all of them deliberately - the form is flat, and each handler needs both the base filters and the persona half. Splitting them here would just add a layer the routes flatten back out.
object
Drop postings from job-board aggregators. On by default because an aggregator is not a company that is hiring - it is a company that lists other people’s jobs. /jobs/search/aggregators returns exactly what this suppressed, so a caller can audit it.
Run the recruiter aggregation and enrichment hop. Set false to skip two round-trips when only Companies and Decision-makers are needed.
Job-title keywords. OR semantics - any match counts.
Page size. Capped at 200 to bound the ClickHouse cost.
Max postings counted per company.
Recruiter paging, INDEPENDENT of limit/offset: one recruiter can serve many companies, so the two counts diverge and a caller can page one tab without touching the other.
How far back to look for postings.
Responses
200
Successful Response
object
A page of Hiring Signals results.
Rows stay open dicts: each tab (jobs, companies, decision-makers, recruiters, aggregators) returns a different shape assembled from ClickHouse plus OpenSearch, and the columns move as enrichment improves.
object
object
422
Validation Error