Performance data about the candidate in a specific role. Each learn request has a name and a category. The name should be consistent for the same type of request. Example: "grade_after_interview" or "weekly_howdy".

The learn category is to group different names together. There is a predefined list of categories defined below:

Learn categories

  • application - If the candidate has applied for the role at the organization. No score required.
  • employed - If the candidate has been employed for a role. No score required.
  • hard_performance_data - Data collected from sale metrics, customer satisfaction or other types of reports.
  • interview - If the candidate has been called to interview. No score required.
  • recruiter_grade - Grade given by the recruiter in different stages of the recruitment process.
  • self_assessment - Score that the candidate has given themself. Ie by weekly or monthly questionnaires
  • soft_performance_data - Data collected from managers or coworkers. Ie their opinions about a candidate.

Learn score

The score must be between 0-100. A score of 50 is considered as neutral as in "not good nor bad". Scores above 50 is good and scores below 50 is bad. Below are examples of how you may score a candidate.

  • 0 - Damaging to the company
  • 20 - Almost regret hiring
  • 40 - Poor candidate
  • 60 - Good
  • 80 - Very good
  • 100 - Excellent


Create performance data


POST /api/learn
Host:          api.happyrmatch.com
Authorization: Bearer eyJ0eXAi1QiLCJ...
Accept:        application/vnd.api+json
Content-Type:  application/vnd.api+json

    "candidate": "[candidate_id]",
    "role": "[role_id]",
    "category": "foo",
    "name": "foobar",
    "score": 78


HTTP/1.0 202 Accepted
Cache-Control: no-cache, private
Content-Type:  application/vnd.api+json
Date:          Wed, 14 Sep 2022 05:38:55 GMT

    "meta": {
        "message": "Accepted"