Improved

2026-08-14

GET /v3/scorecard_candidate_attributes

  • Added: value to the response, a read-only alias of candidate_attribute_rating in the vocabulary the nested write path accepts. A rating cleared with value: null reads back as no_decision.

GET /v3/scorecard_question_answers

  • Added: value to the response: the answer in the same vocabulary the nested write path accepts, dispatched on the question's answer_type — a string for text, a boolean for yes_no, the selected option id for single_select, and an array of option ids for multi_select. null when unanswered.

PATCH /v3/scorecard_candidate_attributes/{id}

  • Added: value to the response, a read-only alias of candidate_attribute_rating in the vocabulary the nested write path accepts.

PATCH /v3/scorecard_question_answers/{id}

  • Added: value to the response: the answer in the same vocabulary the nested write path accepts, dispatched on the question's answer_type.

PATCH /v3/scorecards/{id}

  • Added: question_answers on the request body, writing answers to the interview kit's scorecard questions atomically with the scorecard. Omitted entries are left untouched.
  • Added: candidate_attributes on the request body, writing ratings for the job's candidate attributes atomically with the scorecard. Omitted entries are left untouched.

POST /v3/scorecard_candidate_attributes

  • Added: value to the response, a read-only alias of candidate_attribute_rating in the vocabulary the nested write path accepts.

POST /v3/scorecard_question_answers

  • Added: value to the response: the answer in the same vocabulary the nested write path accepts, dispatched on the question's answer_type.

POST /v3/scorecards

  • Added: question_answers on the request body, writing answers to the interview kit's scorecard questions atomically with the scorecard. Each entry identifies its question by scorecard_question_id and carries a value shaped by that question's answer_type.
  • Added: candidate_attributes on the request body, writing ratings for the job's candidate attributes atomically with the scorecard. Each entry identifies its attribute by job_candidate_attribute_id.
  • Changed: A create that sends question_answers or candidate_attributes now records an entry for every active non-instruction question on the kit and every attribute on the job, not only the ones sent, so questions omitted from the request come back as unanswered rows rather than no rows.