An evaluation stage is one step inside a template. If a template is the
whole journey, a stage is a single door the candidate walks through.
You can have one stage (a quick screen) or many stages in a row (screen →
technical → final). Each stage runs its own interview.
How stages connect
Template: "Senior Backend Engineer"
Stage 1: Phone Screen → Stage 2: Technical → Stage 3: Final
pass? advance pass? advance pass? recommend
Each stage points at an agent profile (the interviewer for that step) and
has its own pass mark.
Every field, in plain words
Which template this stage belongs to.
A short label for the step, like "technical".
The name the candidate sees, like "Technical Screen".
The format: ai_interview, roleplay_simulation, practice_session,
manual_review, async_assessment, or final_review.
The interviewer (agent profile) that runs this step.
The position in line. 0 is first, 1 is next, and so on.
How long the interview lasts (default 30).
The score needed to pass this step.
Can the candidate try again if they fail? Default false.
automation_rule
none | auto_advance | require_reviewer_approval
What happens when the step finishes:
auto_advance — move on automatically
require_reviewer_approval — wait for a human to say yes
none — do nothing automatic
Build a stage, step by step
Stages live inside a template , so you add them from a template — in the
dashboard or over the API.
Open the template
In the left sidebar, click Evaluation Templates and open the one you
want to add a stage to.
Add a stage
In the template’s Stages section, click Add stage .
Name it and pick the format
Set the Stage name and type (AI interview, roleplay, practice…).
Choose the interviewer
Pick the Agent profile that runs this stage.
Set the order and pass mark
Set the order and the pass threshold , then choose what happens on
completion (auto-advance or wait for approval).
Save
Save the stage. Repeat to build a multi-round pipeline.
Have a template and an agent ready
You need a evaluation_template_id and (usually) an agent_profile_id.
Name the step and pick the format
Set stage_name and stage_type.
Set the order and pass mark
Set stage_order (start at 0) and pass_threshold.
Send the request
curl -X POST "https://www.intervyo.ai/api/v1/evaluation-stages?accountSlug=<slug>" \
-H "x-api-key: iv_live_your_key_here" \
-H "Content-Type: application/json" \
-d '{
"evaluation_template_id": "ce1cd564-...",
"type": "technical",
"stage_name": "Technical Screen",
"stage_type": "ai_interview",
"stage_order": 0,
"duration_minutes": 45,
"pass_threshold": 70,
"automation_rule": "auto_advance",
"agent_profile_id": "455b1513-..."
}'
Examples for each use case
Hiring
Training
Mock interview
Several steps, a rising bar, and a human check before the last round. [
{ "stage_name" : "Phone Screen" , "stage_type" : "ai_interview" , "stage_order" : 0 , "pass_threshold" : 60 , "automation_rule" : "auto_advance" },
{ "stage_name" : "Technical" , "stage_type" : "ai_interview" , "stage_order" : 1 , "pass_threshold" : 75 , "automation_rule" : "require_reviewer_approval" },
{ "stage_name" : "Final" , "stage_type" : "final_review" , "stage_order" : 2 , "pass_threshold" : 80 }
]
Practice steps people can retry. No gate — the goal is to improve. [
{ "stage_name" : "Discovery Drill" , "stage_type" : "roleplay_simulation" , "stage_order" : 0 , "allow_retake" : true , "pass_threshold" : 70 },
{ "stage_name" : "Objection Drill" , "stage_type" : "roleplay_simulation" , "stage_order" : 1 , "allow_retake" : true , "pass_threshold" : 70 }
]
Just one step the person can repeat as many times as they want. [
{ "stage_name" : "Mock Round" , "stage_type" : "practice_session" , "stage_order" : 0 , "allow_retake" : true , "duration_minutes" : 45 }
]
Next
Participants Add the people who will go through your stages.
Create a stage (API) The full endpoint reference.