Two ways to do everything. You can build and run interviews entirely in
the dashboard (no code) or over the API. Each concept page below shows
both a Dashboard and an API path for creating it — pick whichever fits
you. Prefer a guided walkthrough? Start with
How it works, end to end.
The mental model
Configuration flows top-down. You define how the AI behaves, what it assesses, and which steps a candidate goes through — then attach people and run sessions.Reuse is the point. One agent profile can power many templates; one
template can have many stages; one participant can run many sessions. Define
your calibration once, apply it everywhere.
Agent Profile
The interviewer’s personality and judgment. An agent profile decides how the AI introduces itself, how hard it pushes, and how it converts a conversation into a score. Attach a profile to a stage to control that step’s interview.Key fields
Display name, e.g.
"Senior Engineering Interviewer".How the AI introduces itself at the start, e.g.
"Alex, a senior engineer at Acme." Sets the candidate’s first impression and the AI’s voice.Selects the recommendation vocabulary —
hiring yields hire / no-hire,
training yields ready / needs practice, and so on.The scoring axes:
[{ name, description, weight }]. Weights must sum to
100. This is the rubric the AI grades against.Conversation behavior:
tone (friendly · professional · strict ·
challenging), style (structured · conversational · adaptive), difficulty
(easy · medium · hard · adaptive), and probingDepth (low · medium · high).How scores are computed:
scale (0-10 · 0-5 · 0-100), scoringMethod
(weighted_average · rule_based), and optional recommendationLogic.Grounding for the AI:
organizationContext, domainContext,
scenarioContext — e.g. company background or the roleplay setup.What the scorecard contains:
includeTranscript, includeScoreBreakdown,
includeRecommendation, includeImprovementFeedback (all default true).How it changes per use case
- Hiring
- Training
- Mock interview
Calibrated, slightly challenging, weighted toward role skills.
Evaluation Template
The blueprint for a role or assessment. A template describes what the AI should determine and the bar for success. Every participant and session belongs to a template.Key fields
Display name, e.g.
"Senior Backend Engineer".The category, which drives the recommendation vocabulary and defaults.
The single thing the interview must determine, e.g. “Assess whether the
candidate can own backend system design.”
The verdict label:
hire_no_hire, admit_reject, pass_fail,
ready_needs_training, certified_not_certified, or custom. Auto-derived
from use_case if omitted.Technical skills to probe, e.g.
["Go", "PostgreSQL", "Distributed Systems"].Behavioral traits, e.g.
["Communication", "Ownership"].What the candidate must demonstrate to pass — your bar, in plain language.
Default session length (default
30).Question depth (default
intermediate).live_ai_interview, async_interview, roleplay_simulation,
practice_session, or manual_review. Sets the interview format.How it changes per use case
| Field | Hiring | Training | Mock interview |
|---|---|---|---|
use_case | hiring | training | training |
objective | ”Can they do the job?" | "Are they ready to perform?" | "Are they ready for the real thing?” |
success_outcome | hire_no_hire | ready_needs_training | pass_fail |
default_session_mode | live_ai_interview | roleplay_simulation | practice_session |
skills | role-specific | competencies to build | target-role skills |
Evaluation Stage
A single step within a template’s pipeline — e.g. Phone Screen → Technical → Final. Each stage runs its own interview with its own agent profile, duration, and pass threshold.Key fields
The parent template this stage belongs to.
Display name shown to candidates, e.g.
"Technical Screen".ai_interview, roleplay_simulation, practice_session, manual_review,
async_assessment, or final_review.The agent profile that conducts this stage. This is where the interviewer’s
persona and rubric plug in.
Position in the pipeline (0-based).
Minimum score required to pass this stage.
Whether a candidate can retry on failure (default
false).What happens on completion — advance automatically, or wait for a human.
How it changes per use case
- Hiring
- Training
- Mock interview
Multiple gated stages, rising bar, human approval before the final round.
Participant
The person being evaluated — a candidate, trainee, or student. Create the participant first, then schedule sessions for them. A participant is scoped to a template, so the same email can exist as separate participants under different templates.Key fields
Full name.
Email address — unique per account. The interview invite is sent here.
The template (role / program) this participant is being evaluated against.
Your ATS / LMS / system ID. Echoed back in every webhook payload, so you
can reconcile results without storing our IDs.
{ title, organization, experienceLevel, location } — context the AI uses to
tailor questions.{ skills: string[], education, languages: string[] }.Publicly accessible resume — triggers vector extraction so the AI can
reference it during the interview.
Arbitrary labels for filtering, e.g.
["senior", "remote"].How it changes per use case
- Hiring
- Training
- Mock interview
A candidate sourced from your ATS, with resume and role context.
Session
The output — one AI interview for one participant, producing audio, a transcript, per-dimension scores, a recommendation, and authenticity signals. You schedule a session against a participant + template; the invite email goes out automatically. See Sessions.Putting it together
Where to next
Quickstart
Run your first AI interview in 5 minutes.
Authentication
Generate API keys and authenticate requests.
API Reference
Every endpoint with request builders and response examples.
Documentation is versioned with the platform — what you read here matches
what’s deployed.