opening_line is the literal first thing the avatar says; it’s the only scripted line, so set it in character (it defaults to a bare “Hello” if you omit it).
Other ways to create an interview: Create an interview. The avatar template you pick decides voice-only or avatar: see The template picks the interview modality.
Two variants
POST /persona-create creates one of two variants, chosen with the optional portal parameter. Both run the identical session mechanics — free-form role-play, no question list, the same persona_* and opening_line fields, and the same persona scoring — but they live on different portals and are billed differently.
portal defaults to coaching, so existing callers are unaffected — a persona-create call that doesn’t mention portal behaves exactly as it did before. The coaching persona is otherwise unchanged: coaching portal only, billed against consumer coaching credits, with no attempt limit.portal: "interview") behaves like a persona in the session but like an interview commercially and operationally:
- Recruiters see the results. Interview role-plays are scored on the persona scoring path — you get per-answer and session-level feedback, the same as a coaching persona — and completed sessions appear in the recruiter results list alongside regular interviews. See Review results.
- Candidates are invited normally. Use the standard invitation flow (
POST /job-interview-register-users) to generate links or send email invites — see Invite candidates. - It draws on merchant credits. Cost is the standard interview formula — base format cost × duration multiplier, plus any recording add-ons — not consumer coaching credits. Each completed session is billed, so a candidate who uses every attempt costs a multiple of the single-session price. See How credits work.
- Attempts are capped.
interview_attemptslimits how many times a candidate may take the role-play; it defaults to 3.
interview_def_set_id (and embed_id / embed_signing_key when is_embedded is true).
Key fields
Common optional fields also apply:
code, cover_image_url, interview_location, max_duration (seconds, default 1200), recording, recording_full_session, result_view, interview_conversation_speed, candidate_video_introduction, tags, recruiter_profile_id, merchant_id, and is_embedded.
On the interview role-play variant (portal: "interview"), max_duration, recording, and recording_full_session drive the merchant-credit cost exactly as they do on a standard interview.
Progression
persona_avatar_progress is what stops a role-play from being either trivially easy or unwinnable. It is one plain-text value: the first line picks the mode, and the following lines are that mode’s labels, one per line. Use one mode, not both.
Pick turning point for a scene built on resistance the candidate has to work through, and steps for a difficult conversation the candidate is expected to run to a protocol.
Unlocks when/Done whenmust be observable. “The rep asks about the missed deliveries” is something an assessor can point at in the transcript. “The rep builds rapport” is not, and the avatar will apply it inconsistently.- No moving goalposts. Once the candidate has earned progress, the avatar must not invent a fresh obstacle. Without the
No goalpostsline, a role-play that is supposed to be winnable often is not.
Gates line is the link back to persona_avatar_knowledge: anything listed there should be one of the later personal details you wrote in that field, and none of them should be required to reach the goal.
The same progression is also fed to the grader, so it scores whether the candidate actually did the thing that was meant to unlock progress — not whether the avatar happened to soften.
Next steps
Invite candidates
Turn your new interview into links or email invitations.
Review results
Read transcripts, scores, and export reports once candidates finish.