Ensure an interview session for an application round
Ensure an interview session for an application round
Required scopes: interview_sessions:write
Creates or reuses the interview session needed before scheduling readiness, link generation, interview start/complete, and scorecard flows. Requires a secret key with interview_sessions:write; publishable keys are denied. The server validates application org/mode, archive state, interview plan, and round membership, then returns a redacted is_... session envelope. Unavailable setup targets return the same safe not-found envelope and do not mutate. Integrations must use this public API setup path rather than directly inserting interview session rows.
Example (curl):
curl -X POST https://api.yardstick.team/v1/applications/app_def456/interview_sessions/actions/ensure \
-H 'Authorization: Bearer ys_sk_live_…' \
-H 'Content-Type: application/json' \
-H 'Idempotency-Key: 7c3a…' \
-d '{"interview_plan_id":"ipd_…","round_id":"round-technical"}'
Example (TypeScript):
await fetch(
"https://api.yardstick.team/v1/applications/app_def456/interview_sessions/actions/ensure",
{
method: "POST",
headers: {
Authorization: `Bearer ${process.env.YS_API_KEY}`,
"Content-Type": "application/json",
"Idempotency-Key": crypto.randomUUID(),
},
body: JSON.stringify({
interview_plan_id: "ipd_…",
round_id: "round-technical",
}),
},
).then((r) => r.json());
Request
- Base URL: https://api.yardstick.team
- URL: https://api.yardstick.team/v1/applications/{application_id}/interview_sessions/actions/ensure
- Auth: HTTP bearer
Path parameters
Headers
Supported for safe retry. Reuse the same key to receive the cached response without repeating the operation.
Optional caller-supplied request identifier. Values must match ^[A-Za-z0-9_-]{1,128}$; a valid value is echoed in the response X-Request-Id header, otherwise the API generates one.
Request body
Response
Interview session created or reused. The response is redacted and carries the is_... id for downstream scheduling and interview-evaluation calls.
Changes
No recorded changes to this operation across all 1 revision of this API.