Docs
API reference

Create an interview batch

POST
/api/v1/interview-batches

Queue several interviews in one durable request and track outcomes by your own itemKey. Use this to process an application import without coordinating every admission yourself.

Before you call

Supply 1–20 items, at most 256 KiB JSON, unique itemKey values, and an Idempotency-Key. Only one batch of each kind can be active per workspace.

Required scope: interviews:write.

What happens next

A 202 returns batchId and statusUrl. Items can succeed or fail independently. Items finish when invitation admission succeeds or fails, not when candidates finish interviewing. Only sendEmail=true is supported in invitation batches.

Recovery

Keep successful resource IDs. Capacity-limited items can wait up to the admission deadline; inspect per-item errorCode. Retry failed items deliberately in a new batch; analysis/interview items need fresh quotes. Foreign or unknown resource IDs reject the envelope.

Follow the complete workflow · Errors and retries

Authorization

ApiKey
headerAuthorizationBearer <token>

Header Parameters

Idempotency-Key*string

Stable key for one logical write. Retry the identical body with the same key after a timeout; a changed body conflicts. 1–128 letters, digits, dots, underscores, colons, or hyphens.

Match^[A-Za-z0-9._:-]+$
Length1 <= length <= 128

Request Body

application/json
  1. body
items*array<>

Page or batch entries. An empty list is valid; use the cursor or individual item states to decide what happens next.

Items1 <= items <= 20

Response Body

A 202 returns batchId and statusUrl. Items can succeed or fail independently. Items finish when invitation admission succeeds or fails, not when candidates finish interviewing. Only sendEmail=true is supported in invitation batches.

application/json
  1. response
data*
# Set PROBB_URL and PROBB_API_KEY. Replace RESOURCE_ID if present.# Set REQUEST_KEY once for this logical write; reuse it with the same body on retries.curl --fail-with-body -X POST "$PROBB_URL/api/v1/interview-batches" \  -H "Authorization: Bearer $PROBB_API_KEY" \  -H "Idempotency-Key: $REQUEST_KEY" \  -H 'Content-Type: application/json' \  --data-binary '{  "items": [    {      "itemKey": "application-42",      "input": {        "reportId": "report_example",        "candidateEmail": "candidate@example.test",        "sendEmail": true,        "quoteFingerprint": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"      }    }  ]}'
{  "data": {    "batchId": "batch_interviews",    "statusUrl": "/api/v1/interview-batches/batch_interviews"  }}