Get Started with Live Events
Fire TV events are standalone events that either take place as you watch them (live events) or are rebroadcast later. Sports events and live concerts are good examples of possible live events.
For more on Linear TV, Video on Demand, and Live Events, see Important Definitions.
Prerequisites
- Access to the source code of your app for Fire TV.
- A Fire TV device that supports this integration. Check with your Amazon contact for a list of device types currently supported.
Integration Overview
Live events requires two integrations:
- Integrate with Vega EPG Provider in order to provide the customer’s event entitlements and metadata and to enable a browse experience for your content on Fire TV.
- If your app does not provide Linear TV you may exclude the
ingestChannelLineup
andingestProgramLineup
steps from yourEpgSyncTask
and ignore details specific to channels and programs.
- If your app does not provide Linear TV you may exclude the
- Leverage Content Launcher to launch live event playback.
- In step 3 of Content Launcher Integration Guide, The
MediaId
that you provide using Vega EPG Provider is passed as part of thecontentSearch
argument when calling thehandleLaunchContent()
API. See the sample code below.const contentLauncherHandler: IContentLauncherHandler = { async handleLaunchContent( contentSearch: IContentSearch, _autoPlay: boolean, _optionalFields: ILaunchContentOptionalFields, ): Promise<ILauncherResponse> { // Other content launcher logic const searchParameters = contentSearch.getParameterList(); if (searchParameters.length > 0) { for (let j = 0; j < searchParameters.length; j++) { const externalIdList = searchParameters[j].getExternalIdList(); for (let i = 0; i < externalIdList.length; i++) { const catalogName = externalIdList[i].getName(); const contentId = externalIdList[i].getValue(); // "catalogName" is the MediaId.catalogName you provide using Kepler EPG Provider. // "contentId" is the MediaId.contentId you provide using Kepler EPG Provider. // Start Live Event Playback } } } // Finalization logic }, };
- In step 3 of Content Launcher Integration Guide, The
Integration details
Content supported
Here is the video content we support:
- Scheduled Live and Future Events - Like a pay-per-view event, or the Olympic Games.
- Catch-up and Rebroadcasts (VOD) - Available to watch whenever you want.
- Highlights, Condensed Games, Interviews (Short form VOD) - Similar to #2, but a shorter venue, such as game highlights.
- Instantaneous Live Events - Live feeds, such as a Twitch feed.
Content support: Scheduled events
For events with a known schedule (e.g. sporting event), use the SCHEDULED_EVENT
type. Note the following:
- Fire TV will display events scheduled to air within 7 days and automatically remove them from the UI when their end time has passed. As a result, you can push events taking place well beyond these 7 days without worrying about the events being displayed too early or not being removed on time.
- Currently airing events will receive a LIVE badge on the tile to inform user of the airing status. The LIVE badge will be hidden when it's not airing.
- A red progress bar will appear at the bottom of the event tile to inform user of the event's progress.
Content support: Rebroadcasts
For rebroadcasts of live content (e.g. re-airings of a previous sporting event), use the REBROADCAST
type. If a customer exits and re-enters through the Fire TV UI, a best practice is to begin playback at the customer’s last watched point.
Content support: Clips
For short clips of content (e.g. sporting event highlights), use the CLIP
type.
Content Support: Instantaneous events
For instant events (e.g. live video blog), use the INSTANTANEOUS_EVENT
type. Instantaneous events will receive a LIVE badge on the tile to inform user of the airing status.
Event Entitlements and ordering
Live events can be provided using the LiveEventProvider
interface in the background during your EPG sync task or while your app is active. Only content that the customer is entitled to view should be provided and the last committed set of data will be referenced as the authority for all content displayed to customers. Changes to the live events provided will be reflected in the UI within 5 minutes.
The sort order of the events for your app are based on the SortRank
provided, with fallback to alphabetically by their title
. Place your most important content to the front, emphasizing currently airing programs at the front of the row for highest visibility.
Content insertion
- Insert a minimum of 5 tiles to completely fill the carousel. Fire TV will hide your row if there are less than 5 live events available. Consider adding rebroadcasts or short form clips to maintain the minimum at all times.
- Supply a displayable event title for the
LiveEvent.title
field. Fire TV displays up to 25 alphanumeric characters, but won't display the full live event title if the length exceeds this limit. This max limit is applicable for both half-width and full-width character sets. Examples:- The Walking Dead Universe (Max length-Pass).
- Ed's Purple Plane (Max length-pass).
- How Sally Fell off her Horse and Learned to Play Piano on a Saturday (Max length-fail, since it's over 25 characters long).
- エドのパープルプレイン (Max length-Pass).
- Provide all required metadata for live events. Refer to Metadata Attributes for details.
- Provide future-scheduled airing events ahead of time to minimize frequency of syncs. Fire TV will cap a maximum of 15 tiles per event row and will remove ended events from the carousel within 5 minutes after passing its end time. Your application only needs to remove expired live event content from the provided list in the next periodic sync.
Various attributes used for badging. Refer to the Attribute section of the Data Type Reference page.
Metadata attributes
The following table lists possible metadata and how it is used.
Metadata Field | Description | Required for Certification (Y/N) |
---|---|---|
LiveEvent.identifier |
Unique identifier of the live event. | Y |
LiveEvent.eventType |
The type of the live event, see Content Supported for details. | Y |
LiveEvent.playbackReference |
Contains metadata needed to start playback of the live event. | Y |
LiveEvent.startTime LiveEvent.endTime |
Time it airs (Example: 11:00 PM – 12:00 AM). Found directly under the events title. | Y *Only for Scheduled Events |
LiveEvent.title |
Title of event, displayed on content tile and mini-details. | Y |
LiveEvent.description |
Event description, displayed in mini-details. | Y |
LiveEvent.ratings |
List of ratings indicating the level of parental guidance recommended for the live event. Can be any rating system used in the country or region where the live event is broadcasted. | N |
LiveEvent.genres |
List of genres that apply to the live event. | N |
LiveEvent.logoUrl |
URL for Application logo. | N |
LiveEvent.posterArtUrl |
16:9 image used in both the content tile and background image. | Y |
LiveEvent.attributes |
Various Attributes used for badging. Refer to the Attribute section of the Data Type Reference page. | N |
LiveEvent.sortRank |
Sets the order of live events in the row with lower values being displayed first. | N |
Related topics
Last updated: Sep 30, 2025