---
title: "Get job by ID"
method: GET
path: "/v1/jobs/{jobId}"
tags: ["Api", "Jobs"]
---

# Get job by ID

`GET /v1/jobs/{jobId}`

## Request

- Base URL: `https://api.pyannote.ai`
- URL: `https://api.pyannote.ai/v1/jobs/{jobId}`
- Auth: HTTP bearer

## Path parameters

- `jobId` string, required

## Response `200`

- union
  - DiarizationJob
    - `jobId` string: Job ID to track the progress or get the results
    - `status` 'pending' | 'created' | 'succeeded' | 'canceled' | 'failed' | 'running': Status of the job
    - `createdAt` string, date-time: Date and time the job was created
    - `updatedAt` string, date-time: Date and time the job was last updated
    - `output` DiarizationJobOutput
      - `diarization` DiarizationSegment[], required: List of diarization segments
        - `speaker` string, required: Speaker label
        - `start` number, required: Start time of the segment in seconds
        - `end` number, required: End time of the segment in seconds
        - `confidence` object: Confidence scores that this speech turn matches each diarization speaker. Only available if `turnLevelConfidence` is set to true when job is created.
      - `confidence` Confidence
        - `score` number[], required: List of confidence scores for each sample. Values are between 0 and 100
        - `resolution` number, required: Resolution of the confidence scores. Value is number of seconds per sample
      - `exclusiveDiarization` DiarizationSegment[]: Exclusive diarization segments where only one speaker is active at a time. Only returned if `exclusive` is set to true when job is created.
        - `speaker` string, required: Speaker label
        - `start` number, required: Start time of the segment in seconds
        - `end` number, required: End time of the segment in seconds
        - `confidence` object: Confidence scores that this speech turn matches each diarization speaker. Only available if `turnLevelConfidence` is set to true when job is created.
      - `speechProbability` SpeechProbability
        - `score` number[], required: Frame-level probability that speech is present. Values are between 0 and 100
        - `resolution` number, required: Resolution of the speech probability scores. Value is number of seconds per sample
      - `crosstalkProbability` CrosstalkProbability
        - `score` number[], required: Frame-level probability that more than one person is speaking. Values are between 0 and 100
        - `resolution` number, required: Resolution of the cross-talk probability scores. Value is number of seconds per sample
      - `speakerProbability` SpeakerProbability
        - `score` object, required: Per-speaker, frame-level probability scores, keyed by speaker label. Values are between 0 and 100
        - `resolution` number, required: Resolution of the speaker probability scores. Value is number of seconds per sample
      - `wordLevelTranscription` TranscriptionSegment[]: Word-level transcription segments with text. Only returned if `transcription` is set to true when job is created.
        - `start` number, required: Start time of the segment in seconds
        - `end` number, required: End time of the segment in seconds
        - `text` string, required: The transcribed speech content for this segment
        - `speaker` string, required: Speaker label
      - `turnLevelTranscription` TranscriptionSegment[]: Turn-level (speaker turn) transcription segments with text. Only returned if `transcription` is set to true when job is created.
        - `start` number, required: Start time of the segment in seconds
        - `end` number, required: End time of the segment in seconds
        - `text` string, required: The transcribed speech content for this segment
        - `speaker` string, required: Speaker label
      - `error` string: Error message if any
      - `warning` string: Warning message if any
  - VoiceprintJob
    - `jobId` string: Job ID to track the progress or get the results
    - `status` 'pending' | 'created' | 'succeeded' | 'canceled' | 'failed' | 'running': Status of the job
    - `createdAt` string, date-time: Date and time the job was created
    - `updatedAt` string, date-time: Date and time the job was last updated
    - `output` VoiceprintJobResults
      - `voiceprint` string, required: Voiceprint of the audio. To be used for identification
      - `warning` string: Warning message if any
      - `error` string: Error message if any
  - IdentifyJob
    - `jobId` string: Job ID to track the progress or get the results
    - `status` 'pending' | 'created' | 'succeeded' | 'canceled' | 'failed' | 'running': Status of the job
    - `createdAt` string, date-time: Date and time the job was created
    - `updatedAt` string, date-time: Date and time the job was last updated
    - `output` IdentificationJobOutput
      - `diarization` DiarizationSegment[]: List of diarization segments
        - `speaker` string, required: Speaker label
        - `start` number, required: Start time of the segment in seconds
        - `end` number, required: End time of the segment in seconds
        - `confidence` object: Confidence scores that this speech turn matches each diarization speaker. Only available if `turnLevelConfidence` is set to true when job is created.
      - `confidence` Confidence
        - `score` number[], required: List of confidence scores for each sample. Values are between 0 and 100
        - `resolution` number, required: Resolution of the confidence scores. Value is number of seconds per sample
      - `exclusiveDiarization` DiarizationSegment[]: Exclusive diarization segments where only one speaker is active at a time. Only returned if `exclusive` is set to true when job is created.
        - `speaker` string, required: Speaker label
        - `start` number, required: Start time of the segment in seconds
        - `end` number, required: End time of the segment in seconds
        - `confidence` object: Confidence scores that this speech turn matches each diarization speaker. Only available if `turnLevelConfidence` is set to true when job is created.
      - `speechProbability` SpeechProbability
        - `score` number[], required: Frame-level probability that speech is present. Values are between 0 and 100
        - `resolution` number, required: Resolution of the speech probability scores. Value is number of seconds per sample
      - `crosstalkProbability` CrosstalkProbability
        - `score` number[], required: Frame-level probability that more than one person is speaking. Values are between 0 and 100
        - `resolution` number, required: Resolution of the cross-talk probability scores. Value is number of seconds per sample
      - `speakerProbability` SpeakerProbability
        - `score` object, required: Per-speaker, frame-level probability scores, keyed by speaker label. Values are between 0 and 100
        - `resolution` number, required: Resolution of the speaker probability scores. Value is number of seconds per sample
      - `error` string: Error message if any
      - `warning` string: Warning message if any
      - `identification` IdentificationSegment[]: List of identification segments
        - `speaker` string: Speaker label
        - `start` number: Start time of the segment in seconds
        - `end` number: End time of the segment in seconds
        - `confidence` object: Confidence scores that this speech turn matches each diarization speaker. Only available if `turnLevelConfidence` is set to true when job is created.
        - `diarizationSpeaker` string, required: Speaker label
        - `match` string, nullable, required: Label of the voiceprint that was identified following the matching settings
      - `voiceprints` IdentificationVoiceprint[]
        - `speaker` string, required: Diarization speaker
        - `match` string, required: Label of the voiceprint that was identified following the matching settings
        - `confidence` object, required: Confidence for each speaker label, as a dictionary of speaker label to confidence score

## Other responses

- `400`: Invalid request
- `402`: Subscription is required
- `429`: Too many requests

## Changes

- **2026-11-03** `098a8442f5f6`: 6 info
  - added the optional property `oneOf[subschema #1: Diarization]/output/allOf[#/components/schemas/DiarizationJobOutput]/crosstalkProbability` to the response with the `200` status
  - added the optional property `oneOf[subschema #1: Diarization]/output/allOf[#/components/schemas/DiarizationJobOutput]/speakerProbability` to the response with the `200` status
  - added the optional property `oneOf[subschema #1: Diarization]/output/allOf[#/components/schemas/DiarizationJobOutput]/speechProbability` to the response with the `200` status
  - added the optional property `oneOf[subschema #3: Identification]/output/allOf[#/components/schemas/IdentificationJobOutput]/crosstalkProbability` to the response with the `200` status
  - …2 more

[Operation history](https://skmtc.dev/pyannote/apis/pyannoteai-api/changes/v1/jobs/:jobId/get.md)

---

[API](https://skmtc.dev/pyannote/apis/pyannoteai-api.md) - [All operations](https://skmtc.dev/pyannote/apis/pyannoteai-api/llms.txt) - [OpenAPI document](https://skmtc.dev/pyannote/apis/pyannoteai-api/revisions/098a8442f5f6?raw)
