> ## Documentation Index
> Fetch the complete documentation index at: https://docs.vook.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Get the transcript text produced by a transcription job



## OpenAPI

````yaml /api-reference/openapi.json get /api/v1/transcription-jobs/{id}/transcript
openapi: 3.0.0
info:
  title: Vook API
  description: >-
    Public transcription API. Authenticate every request with your API key:
    `Authorization: Bearer vk_live_…`.


    ## Transcribe a file (3 calls)


    1. **`POST /api/v1/uploads/init`** → returns an `upload_url`, an
    `upload_token` and the token's `expires_at`.

    2. **`POST {upload_url}`**: POST the whole file to the `upload_url` returned
    by call 1 (**a different host from this API**) as `multipart/form-data` with
    a single `chunk` field, authenticated with `Authorization: Bearer
    {upload_token}`. The file is sent as a single chunk; no chunk index/count is
    needed. This step is on the ingress service and is not listed below.

    3. **`POST /api/v1/transcription-jobs`**: pass the `upload_token` +
    `file_name` + `language` + `diarize`. Returns a job `id`.


    Then **poll `GET /api/v1/transcription-jobs/{id}`** until `status` is
    `completed` (or `failed`). Read the `transcription_id` through **`GET
    /api/v1/transcriptions/{id}`** and its `/transcript` / `/export`
    sub-resources.
  version: v1
  contact: {}
servers:
  - url: https://www.api.vook.ai
    description: Production
security: []
tags: []
paths:
  /api/v1/transcription-jobs/{id}/transcript:
    get:
      tags:
        - Transcription jobs (API v1)
      summary: Get the transcript text produced by a transcription job
      operationId: ApiV1TranscriptionJobsController_getTranscript
      parameters:
        - name: id
          required: true
          in: path
          description: Transcription job ID
          schema:
            example: 123e4567-e89b-12d3-a456-426614174000
            type: string
      responses:
        '200':
          description: Transcript paragraphs + plain text
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiTranscriptDto'
        '409':
          description: >-
            The job has not completed yet (error code: job_not_completed), or it
            settled without producing a transcript (error code: job_failed)
      security:
        - bearer: []
components:
  schemas:
    ApiTranscriptDto:
      type: object
      properties:
        plain_text:
          type: string
          nullable: true
          description: >-
            Plain text version of the transcript. Null on a transcription with
            no detected speech.
          example: Hello world. This is a transcription.
        transcription:
          nullable: true
          description: >-
            Structured transcript paragraphs. Null on a transcription with no
            detected speech.
          type: array
          items:
            $ref: '#/components/schemas/ApiTranscriptParagraphDto'
        word_count:
          type: number
          nullable: true
          description: >-
            Total word count of the transcript. Null when not computed, always
            on a transcription with no detected speech.
          example: 1250
      required:
        - plain_text
        - word_count
    ApiTranscriptParagraphDto:
      type: object
      properties:
        speaker_key:
          type: string
          description: Speaker key, present when diarization was requested
          example: SPEAKER_00
        start_time_seconds:
          type: number
          description: Start time of the paragraph block in seconds
          example: 5
        children:
          description: Paragraph children (text segments)
          type: array
          items:
            $ref: '#/components/schemas/ApiTranscriptChildDto'
      required:
        - children
    ApiTranscriptChildDto:
      type: object
      properties:
        text:
          type: string
          description: Text content of the segment
          example: Hello world
        start_time_seconds:
          type: number
          description: Start time of this segment in seconds
          example: 1.2
        end_time_seconds:
          type: number
          description: End time of this segment in seconds
          example: 3.4
      required:
        - text
  securitySchemes:
    bearer:
      scheme: bearer
      bearerFormat: vk_live_…
      type: http
      description: Your Vook API key (mint one from the web app).

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.