---
title: "Find the reusable transcript of a library file"
method: GET
path: "/v1/transcriptions/by-file/{uuid}"
tags: ["Audio"]
---

# Find the reusable transcript of a library file

`GET /v1/transcriptions/by-file/{uuid}`

## Request

- Base URL: `https://contentmaschine.ai/api`
- URL: `https://contentmaschine.ai/api/v1/transcriptions/by-file/{uuid}`
- Auth: one of:
  - HTTP bearer
  - OAuth 2 (authorization code, authorization URL `https://contentmaschine.ai/api/oauth/authorize`, token URL `https://contentmaschine.ai/api/oauth/token`)

The newest finished transcript with timing made from this file (or one still running),
so a caller can show "no charge" before transcribing again. Needs `text:read`.
`transcription` is null when there is none.

## Path parameters

- `uuid` string, uuid, required

## Response `200`

The transcript reference, or null.

- object
  - `success` boolean
  - `data` object
    - `transcription` object, nullable
      - `uuid` string, uuid
      - `status` string: completed | processing | pending
      - `audio_duration_seconds` integer, nullable
      - `created_at` string, date-time, nullable
  - `timestamp` string, date-time

## Other responses

- `401`: Missing or invalid API key.
- `403`: The token does not hold text:read.
- `404`: Unknown file, or not yours.
- `default`: Any other error. Every failure this API emits uses the same envelope; branch on `error.type`, never on `error.message`, and quote `error.correlation_id` to support.

---

[API](https://skmtc.dev/contentmaschine/apis/contentmaschine-ai-api.md) · [All operations](https://skmtc.dev/contentmaschine/apis/contentmaschine-ai-api/llms.txt) · [OpenAPI document](https://skmtc.dev/contentmaschine/apis/contentmaschine-ai-api/revisions/28c74f46051c?raw)
