GuidesAPI EndpointsAPI Changelog
Live AI Demo
API Changelog
Added

Upskilling API now detects uncertainties to check in the interview

GET /profile/upskilling and GET /job/upskilling now detect uncertainties: the criteria the profile or the job leaves open, to check in the interview. As a consequence, these criteria are no longer counted as weaknesses, so the weaknesses returned are more often real gaps.

Action required

  • Now: none. Both endpoints keep their parameters, and strengths and weaknesses keep their format. If you display weaknesses to your users, display uncertainties too, so they see what to check in the interview.
  • Later: none. Nothing in this update is deprecated.

What changed

  • Both endpoints now detect uncertainties: the criteria the profile or the job leaves open. They come back in a new uncertainties list, whose items have a name and a description like those of strengths and weaknesses. The list is always present, and empty when nothing is uncertain.
  • As a consequence, criteria detected as uncertain are no longer counted as weaknesses: weaknesses holds fewer items, and more of them are real gaps.
  • The description of an uncertainty says what is missing or unclear, and what to check during the interview (GET /profile/upskilling) or what the candidate should ask the recruiter (GET /job/upskilling).
  • Experience that runs to the present ("2023 – present") is counted up to the day of the request, so criteria on years of experience are judged on the right duration.
  • max_axes caps the total number of criteria across the three lists, so uncertainties shares the cap with strengths and weaknesses.

Performance

On our benchmark:

  • GET /profile/upskilling: 25% fewer false weaknesses.
  • GET /job/upskilling: 83% fewer false weaknesses.

In exchange, some real gaps are now listed as uncertainties instead of weaknesses.

Example

curl -G https://api.hrflow.ai/v1/profile/upskilling \
  -H "X-API-KEY: <your_api_key>" \
  --data-urlencode "board_key=<board_key>" \
  --data-urlencode "job_key=<job_key>" \
  --data-urlencode "source_key=<source_key>" \
  --data-urlencode "profile_key=<profile_key>" \
  --data-urlencode "score=0.9" \
  --data-urlencode "output_lang=en"

The response now holds three lists:

{
  "code": 200,
  "message": "SWOT prediction finished in 0.14 seconds.",
  "data": {
    "strengths": [
      {"name": "Python", "description": "The profile demonstrates experience and proficiency in Python development."}
    ],
    "weaknesses": [
      {"name": "JavaScript", "description": "There is no information in the provided text indicating experience or knowledge of JavaScript."}
    ],
    "uncertainties": [
      {"name": "SQL", "description": "Data analysis is mentioned, not the tools. Check SQL in the interview."}
    ]
  }
}

Links