Skip to main content
POST
Pre-screen a candidate from a binary resume upload

Authorizations

Authorization
string
header
required

Supabase JWT — Authorization: Bearer <token>.

Body

multipart/form-data
position_id
string
required

The position the candidate is being pre-screened against.

Minimum string length: 1
candidate_name
string
required

Full name of the candidate.

Minimum string length: 1
candidate_email
string
required

Candidate email (normalized to lowercase, trimmed).

Minimum string length: 1
file
file
required

Resume file (pdf, doc, docx, txt, etc.)

candidate_country_code
string

Optional ISO country code used as the residency/nationality fallback when those are not supplied in form. If the position has a form_nationality or form_residency screening rule and neither this field nor the corresponding form value is provided, the candidate is screened with no nationality/residency and will fail that rule (marked for review or rejected per its action).

candidate_external_id
string

Optional external identifier for the candidate.

candidate_linkedin_url
string

Optional candidate LinkedIn profile URL.

form
string

Optional JSON string with the candidate form answers, same shape as the form object of job-interview-pre-screening-api-resume-text: education (level key), languages ([{ code, level }]), residency/nationality (ISO codes), visa (key), age (int), gender (key). Custom fields (custom_) may also be included.

Example:

"{\"education\":\"masters\",\"languages\":[{\"code\":\"en\",\"level\":\"fluent\"}],\"residency\":\"US\"}"

Response

Pre-screening result, or an early-exit status message.

Either the completed pre-screening result, or an early-exit status message when the candidate is not in the pre-screening candidate_action state.

success
boolean
required
decision_status
string
required
recommendation
string | null
required
profile_interview_id
string
required
interview_result_pre_screening_id
string
required
interview_file_id
string
required
pre_screening_score
number | null
required
resume_ai_analysis
string | null
required
resume_ai_education
string | null
required
resume_ai_technical_experience
number | null
required
resume_ai_is_switching_profession
boolean | null
required
processing_reason
string | null
required