Fetching Matches

Once your Employees and Vacancies have been created inside the Skill Engine API, you can start generating Vacancy/Employee matches.

Finding Vacancies for an Employee

To find the most suitable Vacancies for a given Employee, submit a POST request to /employees/<external_id>/matching_vacancies. When you want to use the default matching configuration, the request body below is sufficient. In case you want to add filters & configure the matching score calculation, head over to the next page!

{
    "filters": [],
    "weights": []
}

The matches in the response object are sorted by decreasing match score. They are returned with the following structure:

[
    {
        "employee_id": "b003505-eb84-42dc-a79f-5e7b1fe897b7",
        "vacancy_id": "a3903505-eb84-42dc-a79f-5e7b1fe897b7",
        "score": 0.87657
    },
    {
        "employee_id": "b003505-eb84-42dc-a79f-5e7b1fe897b7",
        "vacancy_id": "ae4fcdf2-cda5-11ea-87d0-0242ac130003",
        "score": 0.6544
    }
]

You can tune the matching results to your preference via the query parameters score_min_threshold and limit.

Finding Employees for a Vacancy

Finding the most suitable Employees for a given Vacancy is similar to the approach described above, with the only difference being the endpoint: /vacancies/<external_id>/matching_employees.

Getting Explanations

With the matching_employees and matching_vacancies presenting the best matches for a given entity, we can also zoom in on an individual match, fetching not just the match score itself, but also the explanations behind it.

By sending a GET request to /employees/<external_id_1>/vacancies/<external_id_2>/match, with query parameter response_format=explained, you can retrieve the relevant skills & relevant experience, which explain the matching score.

You can then use these explanations to enrich your user experience, as well as to assist users in providing feedback about the match.