Candidate Search
The sourcing hub uses AI to find professionals matching your requirements. Results stream in real-time via SSE.
Search candidates
POST /v1/searches/candidates/search
Authorization: Bearer <token>
Content-Type: application/json
{
"prompt": "senior backend engineer with Node.js and PostgreSQL in New York"
}The response streams via text/event-stream with candidate results as they are found.
Search with intent classification
Before running a search, classify the prompt to extract structured filters:
POST /v1/searches/candidates/classify-intent
Authorization: Bearer <token>
Content-Type: application/json
{
"prompt": "senior backend engineer with Node.js in New York"
}Search from Sales Navigator URL
Import search criteria directly from a LinkedIn Sales Navigator URL:
POST /v1/searches/candidates/start-with-sales-navigator-url
Authorization: Bearer <token>
Content-Type: application/json
{
"url": "https://www.linkedin.com/sales/search/people?..."
}View search history
GET /v1/searches/candidates/history
Authorization: Bearer <token>Returns a list of previous searches with metadata.
Get search results
GET /v1/searches/candidates/:candidateSearchId
Authorization: Bearer <token>Expand search results
When initial results are too narrow, expand to find more candidates:
POST /v1/searches/candidates/:candidateSearchId/expand
Authorization: Bearer <token>Update search prompt
Refine a search by updating its prompt:
PATCH /v1/searches/candidates/:candidateSearchId
Authorization: Bearer <token>
Content-Type: application/json
{
"prompt": "senior backend engineer with Node.js, 5+ years, remote OK"
}Helper endpoints
Get job title synonyms and skill suggestions to refine searches:
POST /v1/searches/candidates/job-title-synonyms
Content-Type: application/json
{ "title": "backend engineer" }POST /v1/searches/candidates/skills-suggestions
Content-Type: application/json
{ "skills": ["Node.js"] }Candidate lists
Save search results to a named list for ongoing management:
POST /v1/pools/candidates
Authorization: Bearer <token>
Content-Type: application/json
{
"name": "NYC Backend Engineers Q2",
"candidateSearchId": "search_01abc..."
}List, update, and delete saved lists:
GET /v1/pools/candidates/user/:userId
GET /v1/pools/candidates/:listId
PUT /v1/pools/candidates/:listId
DELETE /v1/pools/candidates/:listIdFull spec
See the API Reference for the complete request/response schema.
Last updated on