Skip to main content
WEBHOOK
interview_collected
{
  "id": "<string>",
  "interview_id": "<string>",
  "question_set_id": "<string>",
  "status": "<string>",
  "interview_status": "<string>",
  "processing_status": "<string>",
  "profile_interview_id": "<string>",
  "profile_id": "<string>",
  "score": 123,
  "ai_analysis_recruiter_score": 123,
  "ai_analysis": "<string>",
  "ai_analysis_recruiter": "<string>",
  "recruiter_go_next_round": true,
  "pdf_export_url": "<string>",
  "reason": "<string>",
  "candidate_external_id": "<string>",
  "candidate_name": "<string>",
  "candidate_email": "<string>",
  "candidate_phone_number": "<string>",
  "ai_analysis_recruiter_why_hire": "<unknown>",
  "ai_analysis_recruiter_why_not_hire": "<unknown>"
}

Body

application/json

Event payload POSTed to your configured webhook URL for interview/assessment lifecycle events.

id
string
required

interview_result id this event is about.

interview_id
string
required

Interview definition id (question_set_id).

question_set_id
string
required

Same as interview_id (the interview_def_set id).

status
string
required

Result lifecycle status (e.g. active, draft).

interview_status
string | null
required

Coach/interview status (coach_status), e.g. completed, "completed, stopped early", failed, abandoned.

processing_status
string | null
required

AI processing status (e.g. completed).

profile_interview_id
string | null
required

Candidate profile_interview id.

profile_id
string | null
required

Candidate profile id (when a registered profile is linked).

score
number | null
required

Overall interview score.

ai_analysis_recruiter_score
number | null
required

Recruiter-facing AI score (score_interview_ai).

ai_analysis
string | null
required

Candidate-facing AI analysis.

ai_analysis_recruiter
string | null
required

Recruiter-facing AI analysis.

recruiter_go_next_round
boolean | null
required

Recruiter decision to advance the candidate to the next round.

pdf_export_url
string | null
required

URL of the generated PDF report. Provided only when the interview is configured to generate a PDF report; null otherwise.

reason
string | null
required

Which watched field(s) changed to trigger this delivery (change reason).

candidate_external_id
string | null

Your external id for the candidate (present when a candidate is linked).

candidate_name
string | null

Candidate name (present when a candidate is linked).

candidate_email
string | null

Candidate email (present when a candidate is linked).

candidate_phone_number
string | null

Candidate phone number (present when a candidate is linked).

ai_analysis_recruiter_why_hire
any | null

Reasons to hire (list/text).

ai_analysis_recruiter_why_not_hire
any | null

Reasons not to hire (list/text).

Response

200

Return any 2xx status to acknowledge receipt. Non-2xx or a timeout causes the delivery to be retried.