add_screening_candidates
Attach parsed CVs to a screening for scoring. Accepts CV data with or without email; returns counts of saved, skipped, and candidates without email for further action.
Instructions
Attach parsed CVs to a screening as candidates, ready to be scored.
Pass the rows returned by parse_cvs straight through — each
{"identity": {...}, "details": {...}} row is reshaped automatically into
what the backend needs. Already-flat dicts ({firstName, lastName, email,
summary, parsedResumeData, number, location}) also work.
Email is NOT required here — screening scores a CV, it doesn't message
anyone. CVs with no email are kept and given an unroutable placeholder so
they still rank; the response's 'withoutEmail' count tells you how many.
Those rows CANNOT be scheduled later until a real email is added — surface
that number to the user.
Returns {savedCount, skippedEmpty (CVs with no readable content),
withoutEmail, candidates}. After this, call run_screening(role_id).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| role_id | Yes | ||
| candidates | Yes |