Mux

Mux Captions and Transcripts API

APIs for retrieving captions and transcripts from videos hosted using Mux that have had captions generated automatically.

Operations 2

GET /{PLAYBACK_ID}/text/{TRACK_ID}.vtt Retrieve a WebVTT File for a Text Track #
GET /{PLAYBACK_ID}/text/{TRACK_ID}.txt Retrieve a Transcript #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/mux-com-captions-and-transcripts-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

mux-com-captions-and-transcripts-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Mux Captions and Transcripts API
  description: Mux is how developers build online video. This API encompasses both Mux Video and Mux Data functionality to help you build your video-related projects better and faster than ever before.
  version: v1
  contact:
    name: Mux DevEx
    url: https://docs.mux.com
    email: devex@mux.com
servers:
- url: https://api.mux.com
  description: Mux Production API
- url: https://image.mux.com
- url: https://stream.mux.com
- url: https://stats.mux.com
tags:
- name: Captions and Transcripts
  description: APIs for retrieving captions and transcripts from videos hosted using Mux that have had captions generated automatically.
  x-displayName: Captions and Transcripts
paths:
  /{PLAYBACK_ID}/text/{TRACK_ID}.vtt:
    get:
      summary: Retrieve a WebVTT File for a Text Track
      description: Fetch a standalone WebVTT version of a text track from an asset.
      operationId: get-vtt-text-track
      servers:
      - url: https://stream.mux.com
      tags:
      - Captions and Transcripts
      parameters:
      - $ref: '#/components/parameters/playback_id'
      - $ref: '#/components/parameters/track_id'
      - $ref: '#/components/parameters/token'
      responses:
        '200':
          description: WebVTT retrieved successfully.
          content:
            text/vtt:
              schema:
                type: string
        '400':
          description: Invalid request due to missing or incorrect parameters.
          content:
            application/json:
              schema:
                $ref: '#/paths/~1%7BPLAYBACK_ID%7D.m3u8/get/responses/400/content/application~1json/schema'
              example:
                code: 3
                message: Invalid parameter
        '404':
          description: The requested text track was not found.
          content:
            application/json:
              schema:
                $ref: '#/paths/~1%7BPLAYBACK_ID%7D.m3u8/get/responses/400/content/application~1json/schema'
              example:
                code: 5
                message: Not Found
  /{PLAYBACK_ID}/text/{TRACK_ID}.txt:
    get:
      summary: Retrieve a Transcript
      description: Fetch a [transcript of an asset](https://docs.mux.com/guides/add-autogenerated-captions-and-use-transcripts#retrieve-a-transcript). This is only possible for assets with a text track generated using the [VOD generated captions feature](https://docs.mux.com/guides/add-autogenerated-captions-and-use-transcripts).
      operationId: get-transcript
      servers:
      - url: https://stream.mux.com
      tags:
      - Captions and Transcripts
      parameters:
      - $ref: '#/components/parameters/playback_id'
      - $ref: '#/components/parameters/track_id'
      - $ref: '#/components/parameters/token'
      responses:
        '200':
          description: Transcript retrieved successfully.
          content:
            text/plain:
              schema:
                type: string
        '400':
          description: Invalid request due to missing or incorrect parameters.
          content:
            application/json:
              schema:
                $ref: '#/paths/~1%7BPLAYBACK_ID%7D.m3u8/get/responses/400/content/application~1json/schema'
              example:
                code: 3
                message: Invalid parameter
        '404':
          description: The requested text track was not found.
          content:
            application/json:
              schema:
                $ref: '#/paths/~1%7BPLAYBACK_ID%7D.m3u8/get/responses/400/content/application~1json/schema'
              example:
                code: 5
                message: Not Found
components:
  parameters:
    playback_id:
      name: PLAYBACK_ID
      in: path
      description: The asset or live stream's playback ID.
      required: true
      schema:
        type: string
    token:
      name: TOKEN
      in: query
      description: Signed token (JWT) for [secure video playback](https://docs.mux.com/guides/secure-video-playback).
      schema:
        type: string
    track_id:
      name: TRACK_ID
      in: path
      description: The ID of the track for an asset.
      required: true
      schema:
        type: string
  securitySchemes:
    accessToken:
      description: 'The Mux Video API uses an Access Token and Secret Key for authentication. If you haven''t already, [generate a new Access Token](https://dashboard.mux.com/settings/access-tokens) in the Access Token settings of your Mux account dashboard.


        Once you have an Access Token ID and Secret, you can then simply include those as the username (id) and password (secret) in the same way you use traditional basic auth.

        '
      scheme: basic
      type: http
    authorizationToken:
      description: 'OAuth authorization token, used as a Bearer Auth header

        '
      scheme: bearer
      type: http
x-tagGroups:
- name: Video
  tags:
  - Assets
  - Live Streams
  - Playback ID
  - URL Signing Keys
  - Direct Uploads
  - Delivery Usage
  - Playback Restrictions
  - DRM Configurations
  - Transcription Vocabularies
- name: Data
  tags:
  - Video Views
  - Errors
  - Filters
  - Exports
  - Metrics
  - Monitoring
  - Real-Time
  - Dimensions
  - Incidents
  - Annotations
  - View and Viewer Counts
- name: System
  tags:
  - Signing Keys
  - Utilities
- name: Robots
  tags:
  - Jobs
  - Ask Questions
  - Edit Captions
  - Find Key Moments
  - Generate Chapters
  - Moderate
  - Summarize
  - Translate Captions
- name: Playback
  tags:
  - Thumbnails
  - Animated Images
  - Storyboards
  - Streaming
  - Captions and Transcripts