---
title: "Get Voice File Job"
method: GET
path: "/v1/external/voice-file/jobs/{jobId}"
tags: ["Voice File"]
---

# Get Voice File Job

`GET /v1/external/voice-file/jobs/{jobId}`

Retrieve the current status and details of a Voice File Job.

- Poll this endpoint until status reaches `COMPLETED` or `FAILED`
- Once completed, use the transcript and translation endpoints to retrieve results

Documentation: [Polling strategy and status meanings](/voice-file/overview#polling-strategy-recommended)

## Path parameters

- `jobId` string, required

## Response `200`

Job details

- VoiceFileJob — Represents a voice file processing job. Voice File Jobs handle the complete pipeline of audio transcription and optional translation. **Processing Pipeline:** 1. Job created (`CREATED`) → Upload URI provided 2. File uploaded (`UPLOADED`) → Ready for processing 3. Processing started (`PROCESSING`) → STT and translation in progress 4. Processing complete (`COMPLETED`) → Results available **Processing Time Estimates:** | File Duration | Typical Time | |---------------|--------------| | < 5 minutes | 45-75 seconds | | 5-20 minutes | 1-3 minutes | | 20-60 minutes | 3-6 minutes | | 1-4 hours | 6-18 minutes |
  - `id` string, required — Unique job identifier (UUID format)
  - `status` 'CREATED' | 'UPLOADED' | 'PROCESSING' | 'COMPLETED' | 'FAILED', required — Current job processing status: - `CREATED`: Job created, waiting for file upload - `UPLOADED`: File uploaded, waiting for processing to start - `PROCESSING`: Transcription/translation in progress - `COMPLETED`: All processing finished, results available - `FAILED`: Processing failed (check errorMessage)
  - `fileUploadedAt` string, date-time, nullable — Timestamp when file upload was completed. Null if not yet uploaded.
  - `processStartedAt` string, date-time, nullable — Timestamp when processing started. Null if not yet started.
  - `processCompletedAt` string, date-time, nullable — Timestamp when processing completed. Null if still processing.
  - `errorMessage` string, nullable — Error message if job failed. Null for successful jobs.

## Other responses

- `401` — Unauthorized
- `404` — Job not found

---

[API](https://skmtc.net/tiro/apis/tiro-api.md) · [All operations](https://skmtc.net/tiro/apis/tiro-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/tiro/tiro-api/revisions/ae18d7961aa4/schema)
