At this time, Content Launcher and Account Login are available to select partners only.
Customers can search and play content on Fire TV using both remote and voice. Universal Search and Browse surfaces content across all apps, even those not installed. Users can browse results, open a detail page, see watch options, and start playback directly. Voice commands like “Alexa, play Seabound on Streamz” work without opening the app. See Fire TV VSK certification for supported utterances.
Fire OS applications enable this through catalog and launcher integrations. Video Skill Kit (VSK) adds voice-based search and play. Vega replaces both launcher and VSK with a single Content Launcher API.
This article explains how content search and play work on Fire OS and how Content Launcher replaces those integrations on Vega.
Catalog integration overview
Catalog ingestion is the process of submitting your app’s media metadata to Amazon. You submit an XML file (using Amazon’s Catalog Data Format schema) to an S3 bucket. Amazon ingests it into a centralized content database that powers search and playback across all Fire TV and Vega devices.
Two fields matter for playback: “ID” (unique content identifier) and “LaunchId” (identifier for a specific offer configuration like quality or language).
Partner
└── Works
├── Movie
│ ├── ID
│ ├── ExternalID
│ ├── Titles
│ │ └── Title
│ ├── Offers
│ │ ├── SubscriptionOffer
│ │ │ ├── Regions
│ │ │ └── LaunchDetails
│ │ │ └── LaunchId
│ │ └── FreeOffer
│ │ ├── Regions
│ │ └── LaunchDetails
│ │ └── LaunchId
The example below from a catalog shows a movie called Seabound. This movie is offered in both SD and UHD format. It is free to watch in SD format and a subscription is needed to watch in UHD format. Movie Seabound is represented by ID “1700000725”, and it has two offers with LaunchIds “tv.streamz/movie/467200001” and “tv.streamz/movie/467200002”.
<Movie>
<ID>1700000725</ID>
<Title locale="en-US">Seabound</Title>
<Offers>
<SubscriptionOffer>
<LaunchDetails>
<Quality>UHD</Quality>
<Subtitle>en-US</Subtitle>
<LaunchId>tv.streamz/movie/46720001</LaunchId>
</LaunchDetails>
</SubscriptionOffer>
<FreeOffer>
<Regions>
<Territories>US</Territories>
</Regions>
<LaunchDetails>
<Quality>SD</Quality>
<Subtitle>en-US</Subtitle>
<LaunchId>tv.streamz/movie/467200002</LaunchId>
</LaunchDetails>
</FreeOffer>
</Offers>
</Movie>
Fire OS devices
How Fire OS handles search and play through remote
Search results on Fire TV show content from apps that have implemented Universal Search and Browse. When a user selects a title, the content details page shows different watch options in the “Buy Box.” Refer to Getting Started with Universal Search and Browse on Fire TV for details on Buy Box behavior.
Catalog-integrated Fire OS apps must integrate with Amazon Fire TV’s launcher. The app reports login status at launch and on changes. Launcher uses this to determine which watch options to show in the Buy Box. When a user clicks play, the app receives a broadcast intent with the selected content’s ID or LaunchId. If the catalog includes LaunchId, launcher sends LaunchId; otherwise it sends ID.
In the example below, a user launches “Seabound” from the Fire TV home screen using remote. The diagram shows how the catalog entry maps to the broadcast intent the app receives. The app uses the LaunchId to fetch the URL and start playback.
Note: LaunchId is an optional element in catalog. When LaunchId is present, the application receives LaunchId. If LaunchId is not present, the application receives ID.
How Fire OS handles search and play through voice
When a Fire OS app has voice integration using VSK, users can search or play content with utterances like “Alexa, Play Seabound on Streamz.” Alexa leverages the ingested catalog to fetch content details. Refer to the Fire OS VSK integration overview for more details.
Fire OS apps have two options for voice integration: App-only and Cloudside. Both have the same capabilities, but App-only is simpler (no cloud component). Currently only App-only integration is offered to new Fire OS apps. Existing cloudside integrations continue to work.
Alexa converts utterances into directives — JSON payloads sent to the app via broadcast message. The directive contains one or more IDs from the ingested catalog that the app uses to identify and play content. The example below shows the mapping between a catalog entry and an Alexa directive for playing “Seabound” on Streamz.
Note: Even when LaunchId is present in catalog, the application receives only ID on voice requests. LaunchId is not used by Alexa.
Vega devices
How Vega handles voice and remote input
Vega provides a single, modality-agnostic Content Launcher API that handles content search and play from remote, touch, and voice. Unlike Fire OS (which requires separate launcher and VSK integrations), Vega apps implement one interface for all input methods.
Note: The same catalog published for Fire OS devices is used by Vega devices. No rework is needed on the catalog XML file you are already submitting.
Catalog-integrated applications must implement Content Launcher regardless of their VSK integration on Fire OS. Content Launcher replaces both Cloud-side and App-side integrations on Vega. Vega devices use the same catalog published for Fire OS without any changes.
Additionally, Content Launcher-integrated apps must implement the Account Login API to send login status to Fire TV. Login status is used by Fire TV to control playback behavior. It is sent at app launch, on status changes, and whenever Fire TV requests it.
To get started, install the Content Launcher package:
"@amazon-devices/kepler-media-content-launcher": "~2.0.13"
Follow the Account Login integration and Content Launcher integration guides for full implementation details.
Important: Content Launcher is not supported on the Vega Virtual Device (VVD). Testing requires a physical Fire TV Stick running Vega OS.
Related resources
- Universal Search and Browse on Fire OS
- Video Skill Kit (VSK) for Fire OS
- Content Launcher overview
- Content Launcher integration guide
- Content Launcher API reference
- Account Login integration guide
- Vega Video Sample App
Last updated: May 12, 2026


