---
title: "Show or hide a video's captions"
method: POST
path: "/v1/media/{id}/captions/visibility"
tags: ["media"]
---

# Show or hide a video's captions

`POST /v1/media/{id}/captions/visibility`

## Request

- Base URL: `https://api.brixsignage.com`
- URL: `https://api.brixsignage.com/v1/media/{id}/captions/visibility`
- Auth: HTTP bearer

Turn a video's caption track on or off for playback. Hiding the track keeps it in storage so it can be shown again later. If no caption track exists yet, the response indicates that one must be generated first.

## Path parameters

- `id` string, required

## Request body

- object
  - `show` boolean: True shows captions; anything else hides them.

## Response `200`

Success.

- object
  - `data` object, required
    - `state` 'hidden' | 'ready' | 'needs_audio', required: `needs_audio`: shown, but the video has no caption track yet.

## Other responses

- `400`: `wrong_kind`: not a video.
- `401`: Missing, expired or revoked bearer token.
- `403`: The token lacks the permission this operation needs (see `x-brix-permission`).
- `404`: No media with this id.
- `5XX`: Server error. The body carries a `requestId` to quote to support.

---

[API](https://skmtc.dev/brixsignage/apis/brix-api.md) · [All operations](https://skmtc.dev/brixsignage/apis/brix-api/llms.txt) · [OpenAPI document](https://skmtc.dev/brixsignage/apis/brix-api/revisions/02fd3665dc7d?raw)
