Skip to content

Interviews

Schedule AI interviews, candidate join flow, and bot-driven in-room lifecycle.

Key APIs

MethodPathPurpose
GET/v1/interviews/status-countsStatus tab counts
GET/v1/interviews/credit-quoteCredit cost preview
GET/v1/interviewsList interviews
POST/v1/interviewsSchedule interview
GET/v1/interviews/:idInterview detail
PATCH/v1/interviews/:idEdit scheduled interview
POST/v1/interviews/:id/cancelCancel and release credits
POST/v1/interviews/:id/resendResend invitation
POST/v1/interviews/:id/copy-linkFresh join URL and password
DELETE/v1/interviews/:idSoft delete (admin)
GET/v1/join/:token/peekPre-auth branding (public)
POST/v1/join/:token/verifyPassword → session token
GET/v1/candidate/interviewLobby (candidate session)
POST/v1/candidate/consentRecording consent
GET/v1/candidate/statusStatus poll
POST/v1/candidate/bot-sessionBot WebSocket credentials

Bot control plane: ten x-internal-token routes under /v1/bot/interviews/:id (context, start, runtime, disconnect, rejoin, complete, fail, error, proctoring, cost). See OpenAPI.

Business Rules

  • Schedule freezes a snapshot of position, candidate, and resume text; credits are reserved up front.
  • One active scheduled/in-progress interview per candidate; edit only while scheduled.
  • Cancel releases credits; resend is rate-limited and rotates join credentials.
  • Complete/fail from the bot enqueue async settlement and report generation.

Dependencies

  • Daily.co, SQS, bot service (candidate JWT), credits module (reserve / release / settle)

Sophia AI Interview Platform — Internal Documentation