---
title: "Generate shots"
method: POST
path: "/video/v1/assets/{ASSET_ID}/shots"
tags: ["Assets"]
---

# Generate shots

`POST /video/v1/assets/{ASSET_ID}/shots`

## Request

- Base URL: `https://api.mux.com`
- URL: `https://api.mux.com/video/v1/assets/{ASSET_ID}/shots`
- Auth: one of:
  - HTTP basic
  - HTTP bearer

Generate shot boundaries and shot preview images.

## Path parameters

- `ASSET_ID` string, required

## Request body

- GenerateAssetShotsRequest

## Response `201`

Created

- GenerateAssetShotsResponse
  - `data` AssetShots, required: The results of generating shots on the video
    - `status` 'pending' | 'completed' | 'errored' | 'skipped' | 'deleted', required: The status of the shot detection process
    - `created_at` string, int64, required: Time the shot detection process was created, defined as a Unix timestamp (seconds since epoch).
    - `shots_manifest_url` string: A URL to a JSON manifest describing the shot changes detected in the video along with shot preview images for each shot. This field is only present when `status` is `completed`.
    - `errors` object: An object describing any errors encountered during the shot detection process. This field is only present when `status` is `errored`.
      - `type` string: The type of error that occurred
      - `messages` string[]: A list of error messages describing the errors that occurred in more detail

## Changes

- **2026-10-02** `1b609c48eae7`: 1 info
  - added the required property `data/created_at` to the response with the `201` status
- **2026-08-12** `5b4b3133f27d`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/muxinc/apis/mux-api/changes/video/v1/assets/:ASSET_ID/shots/post.md)

---

[API](https://skmtc.dev/muxinc/apis/mux-api.md) - [All operations](https://skmtc.dev/muxinc/apis/mux-api/llms.txt) - [OpenAPI document](https://skmtc.dev/muxinc/apis/mux-api/revisions/75b4251a1d96?raw)
