Use Casesπ︎
Not sure how to tie the APIs together to build a solution? Here are pointers for the most common use cases.
Candidate Searchπ︎
To retrieve the most relevant candidates for a job:
- Parse and index all candidates
- Optionally: Include custom fields. These are fields not coming from the parser but from your own database. For example: βcandidate statusβ.
- Construct a query using the Query Language
- Ensure you include field names for best results (e.g. job titles go in a job title field).
- Set SynonymLanguages to only the languages in which the terms should be expanded with synonyms and related terms.
- Run the search
Recommendations:
- Use Autocomplete in your UI to help users build queries
- Allow users to use Natural Language Queries (documentation will be added soon)
- Use Condition types to filter, boost, or exclude terms. The Default condition is "nice to have".
- Optionally Set Weights. Each individual term can be weighted separately.
Refining a Searchπ︎
- To change or add terms to the query: from the response of the initial search, modify the QueryParts, and include those in the new query.
- Provide Facets in your UI for easy filtering
Job-to-Candidate Matchingπ︎
To find the most relevant candidate for a job:
Example:
To match job ID 123
:
POST /v10/matchv2/candidates/match
{
"SourceDocument" : {
"Type" : "vacancy",
"Id" : "123"
},
"SearchAndMatchEnvironment": "PROD",
"Options" : {
"Roles" : [ "all" ]
}
}
Candidate-to-Job Matchingπ︎
To find the most relevant jobs for a candidate:
- Parse and index the candidate
- Parse and index all jobs
- Perform a Match from the candidate to the jobs index
Example:
To match candidate ID 123
:
POST /v10/matchv2/vacancies/match
{
"SourceDocument" : {
"Type" : "candidate",
"Id" : "123"
},
"SearchAndMatchEnvironment": "PROD",
"Options" : {
"Roles" : [ "all" ]
}
}
Finding Similar Candidatesπ︎
To find candidates similar to an existing candidate:
Example:
To match candidate ID 123
:
POST /v10/matchv2/candidates/match
{
"SourceDocument" : {
"Type" : "candidate",
"Id" : "123"
},
"SearchAndMatchEnvironment": "PROD",
"Options" : {
"Roles" : [ "all" ]
}
}
Ranking Applicants for a Jobπ︎
To rank applicants who have a applied to a job. Similar to "Getting the most relevant candidates for a job" with an added step to track which jobs candidates applied to.
- Parse the candidates and the job
- Index the jobs
- Index the candidates. Track which jobs candidates applied to by adding a custom field
To set up:
- Log into Tx Console
- Go to Custom Field tab
- Add a field with name:
AppliedTo
and typeMulti-text
-
In your indexing request, add a
string[]
property calledAppliedTo
in thecustomFields
object -
Match from job to candidates
Example:
Filter on candidates who applied to job 789
: appliedTo:789
POST /v10/matchv2/candidates/match
{
"SourceDocument" : {
"Type" : "vacancy",
"Id" : "123"
},
"SearchAndMatchEnvironment": "PROD",
"Options" : {
"Roles" : [ "all" ]
},
"Query" : {
"QueryString": "appliedTo:789"
}
}
Match Candidate to External Jobsπ︎
Match candidates against public jobs on the internet.
Example:
To match candidate ID 123
:
POST /v10/matchv2/externaljobs/match
{
"SourceDocument" : {
"Type" : "candidate",
"Id" : "123"
},
"SearchAndMatchEnvironment": "PROD",
"Options" : {
"Roles" : [ "all" ]
}
}