get_screening_results
Get ranked candidates for a screening role, sorted best-first by screening score, including skills, fit, and verdict. Identify top candidates to schedule.
Instructions
Read a screening's ranked candidates (the poll for run_screening).
Returns {roleId, count, role:{name, mustHaveSkills, niceToHaveSkills,
location, workMode, additionalRequirements}, candidates:[...]}, candidates
sorted best-first by screeningScore. Each candidate:
{id, name, email, hasEmail, phone, position, experienceYears, location,
locationFit ('remote'|'in_region'|'other'|null), screeningScore (0-100),
screeningVerdict ('strong'|'possible'|'weak'|'reject'), screeningStatus,
reason, matchedSkills, relatedSkills, missingSkills, status, screenedAt}.
DONE-SIGNALS (scoring is async): a candidate is finished when
screeningStatus is 'scored', 'hard_filtered', 'overridden', or 'error',
and still pending at 'not_screened'. The whole screening is done when
every row has left 'not_screened' (or screenedCount == candidateCount in
list_screening_roles). If rows are still 'not_screened', wait and call again.
To schedule, take the 'id' of each candidate you want and pass them to
schedule_screened_candidates. Skip rows where hasEmail is false — they
need a real email first.
Results are capped at `limit` (default 100, top by score) and each
'reason' is truncated to keep the response small; raise limit if you
need more rows.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| role_id | Yes |