> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://fastpix.com/docs/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://fastpix.com/docs/_mcp/server.

# Add an intro and outro to a video

FastPix delivers consistent branding and higher viewer engagement by prepending and appending intro and outro segments to any on-demand video using `introUrl` and `outroUrl` fields in the create request, which produces a single merged asset with its own `mediaId` and `playbackId`. Add these fields at upload time for new media, or reference an existing `mediaId` to attach segments to content already in your library.

\


## Prerequisites

* A FastPix account with an active workspace ([Activate your account](/getting-started/activate-your-account))
* Your **Access Token ID** and **Secret Key** from the FastPix dashboard
* Public URLs for the base video, intro, and outro files (MP4 or other supported source formats)
* Intro and outro files that match the base video frame rate, with a resolution greater than or equal to the base

\


## Key terms

* **`mediaId`**: the unique identifier FastPix assigns to every uploaded asset. FastPix generates a new `mediaId` each time you attach an intro or outro, even when the base video is existing media.
* **`playbackId`**: the access-controlled identifier used to build the HLS playback URL at `https://stream.fastpix.com/<playbackId>.m3u8`.
* **`accessPolicy`**: controls who can play the asset. Accepted values are `public` and `private`.
* **`introUrl`** / **`outroUrl`**: URLs of the segments FastPix prepends and appends to the base video during transcoding.

\


## Add intro and outro to new media

Use the [Create media from URL](/video-on-demand-api/upload-and-import-videos/create-media) or [Upload media from device](/video-on-demand-api/upload-and-import-videos/direct-upload-video-media) endpoint. Attach one or both segments on the same request that creates the asset.

\


### Prepare the media URLs

Gather the URLs for the following files:

* **Base video**: the main video content.
* **Intro video (optional)**: the segment that plays at the beginning.
* **Outro video (optional)**: the segment that plays at the end.

\


> **NOTE**
>
> Each source file must be encode-ready. Source quality determines the quality of every rendition FastPix generates.

\


### Limits and constraints

* The intro and outro resolutions must be greater than or equal to the base video resolution. FastPix does not support upscaling.
* The frame rate of the intro and outro must match the base video frame rate.

\


### Build the create-from-URL request

In the request body, set:

* `url` to the base video URL.
* `introUrl` to the intro video URL (optional).
* `outroUrl` to the outro video URL (optional).

\


> **Important**
>
> Replace each URL in the examples with the actual path to your media files.

#### Request body for create media from URL

**`Request`**

```json Request
{
  "inputs": [
    {
      "type": "video",
      "url": "https://static.fastpix.com/fp-sample-video.mp4",
      "introUrl": "https://static.fastpix.com/fp-sample-video.mp4",
      "outroUrl": "https://static.fastpix.com/fp-sample-video.mp4"
    }
  ],
  "accessPolicy": "public"
}
```

\


#### Request body for direct upload

```json
{
  "corsOrigin": "*",
  "pushMediaSettings": {
    "inputs": [
      {
        "type": "video",
        "introUrl": "https://static.fastpix.com/fp-sample-video.mp4",
        "outroUrl": "https://static.fastpix.com/fp-sample-video.mp4"
      }
    ],
    "accessPolicy": "public"
  }
}
```

\


## Add an intro and outro from the dashboard

To add an intro and outro from the dashboard, you need to:

1. [Add your media](#add-your-media).
2. [Configure intro and outro in media settings](#configure-intro-and-outro-in-media-settings).
3. [Review metadata and start the upload](#review-metadata-and-start-the-upload).

\


### Add your media

1. In the left navigation, go to **Products > Video > Media**.
2. Click **Add media** to add your video using one of the following methods:
   * **Upload from device**: Drag and drop your file into the upload area, or click **Browse** to open your device's file picker. Navigate to the video you want to upload, select it, and click **Open**.
   * **Upload using video URL**: Paste a public video URL into the **Upload using video URL** field and click **Submit URL**.

\


### Configure intro and outro in media settings

1. In the **Media Settings** panel, select **Custom settings**.
2. Add the `introUrl` and `outroUrl` fields in the JSON configuration.
3. Replace the `introUrl` and `outroUrl` values with the public URLs of your intro and outro videos.
4. Click **Continue**.

\


### Review metadata and start the upload

1. In the **Metadata** panel, review the preview of your video along with the auto-populated fields.
2. Optionally, edit the **Media title**, **Creator ID**, or **Third party ID**.
3. When ready, click **Start upload all media**.

\


## Add intro and outro to existing media

Call the [Create media from URL](/video-on-demand-api/upload-and-import-videos/create-media) endpoint and reference the existing `mediaId` in the `url` field.

\


> **NOTE**
>
> FastPix always creates a new asset when you attach an intro or outro to existing media. The original asset is unchanged.

\


### Build the request

* **Base video**: set `url` to `fp_mediaId://{Media_Id}` using the `mediaId` of the existing asset.
* **Intro video (optional)**: set `introUrl` to the intro URL.
* **Outro video (optional)**: set `outroUrl` to the outro URL.

\


Replace `introUrl` and `outroUrl` with the actual paths to your media files.

**`Request body`**

```json Request body
{
  "inputs": [
    {
      "type": "video",
      "url": "fp_mediaId://{Media_Id}",
      "introUrl": "https://static.fastpix.com/fp-sample-video.mp4",
      "outroUrl": "https://static.fastpix.com/fp-sample-video.mp4"
    }
  ],
  "accessPolicy": "public"
}
```

\


## Track status with webhook events

FastPix emits dedicated webhook events when each segment finishes transcoding:

* [`video.media.intro.ready`](/webhooks/transform-media-events#videomediaintroready): triggered when the intro has been added.
* [`video.media.outro.ready`](/webhooks/transform-media-events#videomediaoutroready): triggered when the outro has been added.

\


## Design effective intros and outros

* **Keep them short**: 5–10 seconds each is a common target for retention.
* **Match brand identity**: reuse the same colors, logos, and fonts across assets so viewers recognize the sequence.
* **End with a call-to-action**: the outro is the place to ask viewers to subscribe, follow, or open a linked resource.

\


#### Frequently asked questions

FastPix requires the frame rates to match. If they do not, the transcode fails or produces unstable output. Re-encode the intro or outro to match the base video frame rate before retrying.

Yes. Host the intro and outro on a stable URL and reference the same `introUrl` and `outroUrl` in every create-media request. This is the recommended pattern for branded intro outro reuse across a catalog.

No. FastPix creates a new `mediaId` and `playbackId` for the combined output. The original asset remains unchanged and accessible under its original `mediaId`.

FastPix encodes and attaches each segment independently, so each emits its own event. Wait for both events (when both segments are supplied) before treating the merged asset as complete.

Yes. Loop the Create media from URL endpoint over your source list and pass the same `introUrl` and `outroUrl` in every request. This is the programmatic equivalent of an intro outro maker for your catalog.

\


## What's next?

* [Upload videos from URL](/upload-videos/upload-videos-from-a-url)
* [Stitch multiple videos into one](/video-on-demand/merge-and-stitch-videos)
* [API Reference: Create media](/video-on-demand-api/upload-and-import-videos/create-media)
* [Webhook events for media](/webhooks/transform-media-events)