---
title: "Get interview evidence"
method: GET
path: "/api/v1/interviews/{id}/result"
tags: ["Interviews"]
---

# Get interview evidence

`GET /api/v1/interviews/{id}/result`

## Request

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

Read the published evaluation for a specific interview attempt, including strengths, concerns, requirement coverage, and review limitations.

## Before you call

Use interviews:read and schemaVersion=1. Wait for evaluation=ready or interview.result_ready.

**Required scope:** `interviews:read`.

## What happens next

Save resultRevision. Skill scores are 0–10; readiness and requirement confidence/coverage are 0–100. Null means unmeasured. Raw transcripts and audio are not returned.

## Recovery

If result is null, inspect preparation and evaluation states. Do not replace a failed or pending evaluation with a zero score. A new interview has a new ID; retain prior attempt identity when storing results.

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

## Path parameters

- `id` string, required

## Query parameters

- `schemaVersion` '1'

## Response `200`

Save resultRevision. Skill scores are 0–10; readiness and requirement confidence/coverage are 0–100. Null means unmeasured. Raw transcripts and audio are not returned.

- object
  - `data` InterviewResult, required
    - `id` string, required: Resource identifier. External-reference IDs are supplied by your system; resource/event IDs are returned by ProBB AI.
    - `reportId` string, required: Report ID returned by upload preparation, admission, discovery, or an event. It must belong to the API key's workspace.
    - `interviewSystemVersion` string, required: Assigned interview version captured for this quote or attempt. Existing attempts retain their version.
    - `createdAt` string, date-time, required: UTC creation timestamp in ISO 8601 format.
    - `expiresAt` string, date-time, required: UTC expiration timestamp. For a batch this is the admission deadline, not a cancellation time for already accepted work.
    - `startedAt` string, date-time, nullable, required: UTC time the candidate started the interview; null before start.
    - `completedAt` string, date-time, nullable, required: UTC time the candidate completed the conversation; null before completion. Evaluation may still be pending.
    - `lifecycle` 'invited' | 'in_progress' | 'completed' | 'expired' | 'superseded', required: Candidate progress: invited, in_progress, completed, expired, or superseded. Independent of preparation and evaluation.
    - `preparation` 'queued' | 'processing' | 'ready' | 'failed', required: Interview question-preparation state. ready means the interview content is prepared; it does not mean evaluation is complete.
    - `evaluation` 'not_started' | 'processing' | 'ready' | 'failed', required: Evaluation progress, separate from candidate completion. Read the evaluation when ready.
    - `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.
    - `resultRevision` string, nullable, required: Identity of the result publication. Store it with resource and attempt IDs to detect a changed evaluation; null before publication.
    - `schemaVersion` 1, required: Public payload format version. Result requests currently support 1; this is independent of the assigned product version.
    - `result` object, nullable, required: Public evaluation. Null when unavailable, pending, or failed; inspect status rather than interpreting null as a zero score.
      - `decision` string, nullable, required: Advisory evaluation outcome, where available; requires human review and is not an automated hiring decision.
      - `limitations` string, required: Constraints on interpretation of the available interview evidence; display alongside the evaluation.
      - `coverage` object, required: How much relevant evidence was assessed. Requirement coverage uses 0–100; the overall coverage object contains a 0–10 score and transcript quality.
        - `score` number, nullable, required: Evidence score from 0 to 10, or null when unavailable. It is not a probability of hiring success.
        - `transcriptQuality` 'strong' | 'adequate' | 'thin' | 'insufficient', nullable, required: Quality of available interview evidence: strong, adequate, thin, or insufficient; null when unavailable.
      - `integrity` object, required: Evidence-quality and identity-review signals, not a determination of candidate dishonesty.
        - `status` 'clear' | 'review_recommended' | 'verification_limited', nullable, required: Current state of the surrounding resource or finding. Use the documented enum and the operation's workflow explanation.
        - `confidence` 'low' | 'medium' | 'high', nullable, required: Confidence in the finding. Requirement confidence uses 0–100; integrity confidence uses low, medium, or high. Null means unavailable.
      - `requirements` object[], required: Requirement-level findings, confidence, coverage, supporting evidence, and gaps.
        - `requirement` string, required: Role requirement being evaluated.
        - `status` string, nullable, required: Current state of the surrounding resource or finding. Use the documented enum and the operation's workflow explanation.
        - `score` number, nullable, required: Evidence score from 0 to 10, or null when unavailable. It is not a probability of hiring success.
        - `confidence` number, nullable, required: Confidence in the finding. Requirement confidence uses 0–100; integrity confidence uses low, medium, or high. Null means unavailable.
        - `coverage` number, nullable, required: How much relevant evidence was assessed. Requirement coverage uses 0–100; the overall coverage object contains a 0–10 score and transcript quality.
        - `evidence` string[], required: Selected supporting observations. The API excludes raw transcripts, recordings, and original documents.
        - `gaps` string[], required: Requirements or supporting evidence not established by the available material.
        - `finding` string, nullable, required: Human-readable finding for this requirement, or null if unavailable.
      - `recommendation` string, nullable, required: Suggested human follow-up or advisory outcome, as appropriate to the surrounding finding.
      - `summary` string, nullable, required: Concise explanation of the result or finding; null when unavailable.
      - `scores` object, required: Interview skill scores (0–10) and readiness (0–100); missing measurements are null.
        - `coreSkill` number, nullable, required: Core skill evidence score from 0 to 10; null when not measured.
        - `problemSolving` number, nullable, required: Problem-solving evidence score from 0 to 10; null when not measured.
        - `communication` number, nullable, required: Communication evidence score from 0 to 10; null when not measured.
        - `roleFit` number, nullable, required: Role-fit evidence score from 0 to 10; null when not measured.
        - `readiness` number, nullable, required: Advisory readiness score from 0 to 100; null when not measured.
      - `strengths` string[], required: Job-related strengths supported by the available interview evidence.
      - `concerns` string[], required: Job-related concerns that need human review; an empty list is not a guarantee of suitability.
      - `evidence` object[], required: Selected supporting observations. The API excludes raw transcripts, recordings, and original documents.
        - `dimension` string, required: Capability assessed by this evidence item.
        - `reasoning` string, nullable, required: Explanation supporting this evidence finding, or null if unavailable.
        - `supportingEvidence` string[], required: Selected observations supporting this dimension's reasoning.

## 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
- `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)
