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

# Get Recording Output

> Retrieve transcription, translation or dubbing outputs using a single query-driven endpoint.



## OpenAPI

````yaml /openapi/phrase-studio.json get /v1/recordings/{recordingId}
openapi: 3.0.3
info:
  title: Studio API
  description: >-
    API for creating projects and reading transcription, translation, and
    dubbing results.
  version: 1.0.0
servers:
  - url: https://api.studio.us.phrase.com
    description: Production US Environment
  - url: https://api.studio.eu.phrase.com
    description: Production EU Environment
security: []
tags:
  - name: Projects
    description: Manage transcription, translation, and dubbing projects
  - name: Recordings
    description: Access recording status and output data
  - name: Subtitle Profiles
    description: Manage subtitle formatting profiles
  - name: Pronunciations
    description: Manage custom pronunciation rules
  - name: Glossaries
    description: Manage translation glossaries
  - name: Insights
    description: Manage AI-powered insight prompts
  - name: Safe Communications
    description: Access safe communication evaluation templates
paths:
  /v1/recordings/{recordingId}:
    get:
      tags:
        - Recordings
      summary: Get Recording Output
      description: >-
        Retrieve transcription, translation or dubbing outputs using a single
        query-driven endpoint.
      operationId: getRecordingOutput
      parameters:
        - name: recordingId
          in: path
          required: true
          description: Recording ID
          schema:
            type: string
        - name: task
          in: query
          required: true
          description: Task to retrieve output for (case-insensitive).
          schema:
            type: string
            enum:
              - transcription
              - translation
              - dubbing
        - name: format
          in: query
          required: false
          description: >-
            Output format. Defaults to srt. For dubbing you may request mp3 to
            get downloadable audio URLs.
          schema:
            type: string
            enum:
              - srt
              - vtt
              - mp3
        - name: language
          in: query
          required: false
          description: Language code (when requesting a specific translation or dubbing).
          schema:
            type: string
      responses:
        '200':
          description: Recording output retrieved successfully
          content:
            application/json:
              schema:
                type: object
                additionalProperties:
                  type: string
                description: >-
                  Map of language code to content. For srt/vtt, the value is
                  subtitle content; for mp3, the value is a downloadable audio
                  URL.
              examples:
                transcriptionSrt:
                  summary: Original transcription as SRT (map)
                  value:
                    en: |-
                      1
                      00:00:01,000 --> 00:00:04,000
                      Hello...
                translationVttAll:
                  summary: All translations as VTTs (map)
                  value:
                    es: |-
                      WEBVTT

                      00:00:01.000 --> 00:00:04.000
                      Hola...
                    fr: |-
                      WEBVTT

                      00:00:01.000 --> 00:00:04.000
                      Bonjour...
                dubbingVttSingle:
                  summary: Spanish dubbing subtitles as VTT (single lang)
                  value:
                    es: |-
                      WEBVTT

                      00:00:01.000 --> 00:00:04.000
                      Hola...
                dubbingMp3All:
                  summary: All dubbings → audio URLs (map)
                  value:
                    es: https://example.com/es.mp3
                    fr: https://example.com/fr.mp3
                dubbingMp3Single:
                  summary: One dubbing (French) → audio URL (map)
                  value:
                    fr: https://example.com/fr.mp3
        '400':
          description: Bad Request (invalid ID or parameters)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid_params:
                  summary: Invalid parameters
                  value:
                    success: false
                    statusCode: 400
                    message: Bad Request
                    timestamp: '2025-01-01T00:00:00.000Z'
        '401':
          description: Unauthorized (invalid API key)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                invalid_api_key:
                  summary: Invalid API key
                  value:
                    success: false
                    statusCode: 401
                    message: Unauthorized
                    timestamp: '2025-01-01T00:00:00.000Z'
        '403':
          description: Forbidden (access denied)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                forbidden:
                  summary: Access denied
                  value:
                    success: false
                    statusCode: 403
                    message: Access denied
                    timestamp: '2025-01-01T00:00:00.000Z'
        '404':
          description: Recording not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                not_found:
                  summary: Recording not found
                  value:
                    success: false
                    statusCode: 404
                    message: Recording not found
                    timestamp: '2025-01-01T00:00:00.000Z'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              examples:
                server_error:
                  summary: Unexpected error
                  value:
                    success: false
                    statusCode: 500
                    message: Internal server error
                    timestamp: '2025-01-01T00:00:00.000Z'
      security:
        - apiKeyAuth: []
components:
  schemas:
    ErrorResponse:
      type: object
      properties:
        success:
          type: boolean
          example: false
        statusCode:
          type: integer
          example: 400
        message:
          type: string
          example: Bad Request
        timestamp:
          type: string
          format: date-time
          example: '2025-01-01T00:00:00.000Z'
      required:
        - success
        - statusCode
        - message
        - timestamp
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: X-API-Key

````