---
title: "Create a reinterview"
method: POST
path: "/api/v1/interviews/{id}/reinterview"
tags: ["Interviews"]
---

# Create a reinterview

`POST /api/v1/interviews/{id}/reinterview`

## Request

- Base URL: `https://app.probbai.com`
- URL: `https://app.probbai.com/api/v1/interviews/{id}/reinterview`
- Auth: HTTP bearer

Create a new interview attempt for a candidate who needs another session. Unlike resend, this prepares a new interview and uses the current assigned version and allowance.

## Before you call

Use the previous interview ID, a fresh quote for the same report, invitation details, and a new Idempotency-Key. An in-progress session cannot be replaced.

**Required scope:** `interviews:write`.

## What happens next

Save the newly returned interviewId. Previous public results remain tied to the old attempt. Old invitation links cannot enter the replacement session.

## Recovery

Check the old lifecycle before replacing it. Retry identical requests after timeouts; requote with a new key if configuration has changed. Do not use reinterview merely to resend an email.

[Follow the complete workflow](/integration-interviews/) · [Errors and retries](/api-errors/)

## Path parameters

- `id` string, required

## Headers

- `Idempotency-Key` string, required

## Request body

- InterviewInput
  - `reportId` string, required: Report ID returned by upload preparation, admission, discovery, or an event. It must belong to the API key's workspace.
  - `candidateEmail` string, email, required: Email address of the intended candidate. The quote and invitation must use the same address.
  - `sendEmail` boolean: True (default) asks ProBB AI to email the invitation. False returns a private link credential for your system to deliver. Invitation batches require true.
  - `quoteFingerprint` string, required: Fingerprint copied unchanged from the corresponding current quote. Changing quote inputs requires a new quote.

## Response `202`

Save the newly returned interviewId. Previous public results remain tied to the old attempt. Old invitation links cannot enter the replacement session.

- object
  - `data` InterviewAdmission, required
    - `interviewId` string, required: Logical interview attempt ID returned by invitation. A reinterview receives a new ID.
    - `reportId` string, required: Report ID returned by upload preparation, admission, discovery, or an event. It must belong to the API key's workspace.
    - `invitationToken` string, nullable, required: Bearer credential returned only when sendEmail is false and the invitation is current and pending; otherwise null.
    - `statusUrl` string, required: Relative API path to poll with the same workspace API key. Resolve against your application origin.
    - `emailDelivery` 'queued' | 'sent' | 'failed' | 'not_requested', required: Email processing state. sent means provider acceptance, not confirmed inbox delivery; not_requested means your system delivers the link.

## Other responses

- `400`: Invalid input or cursor
- `401`: Invalid, expired, or revoked API key
- `403`: Disabled organisation or missing scope
- `404`: The resource is absent, expired, deleted, or unavailable in this workspace. Verify the resource ID and key's workspace.
- `405`: Method not allowed; consult Allow for supported methods
- `409`: Check the old lifecycle before replacing it. Retry identical requests after timeouts; requote with a new key if configuration has changed. Do not use reinterview merely to resend an email.
- `422`: Input cannot be processed or workspace allowance/capacity is insufficient. Inspect error.reason before retrying.
- `429`: Request limit exceeded
- `500`: Unexpected failure
- `503`: Service unavailable

---

[API](https://skmtc.dev/probbai/apis/probb-ai-customer-api.md) · [All operations](https://skmtc.dev/probbai/apis/probb-ai-customer-api/llms.txt) · [OpenAPI document](https://skmtc.dev/probbai/apis/probb-ai-customer-api/revisions/33a3294530e4?raw)
