UNPKG

@firebolt-js/sdk

Version:
282 lines (216 loc) 5.12 kB
--- title: Entity --- # Entity --- ## Table of Contents - [Table of Contents](#table-of-contents) - [Types](#types) - [MovieEntity](#movieentity) - [Metadata](#metadata) - [MusicEntity](#musicentity) - [ChannelEntity](#channelentity) - [UntypedEntity](#untypedentity) - [PlaylistEntity](#playlistentity) - [TVEpisodeEntity](#tvepisodeentity) - [TVSeasonEntity](#tvseasonentity) - [TVSeriesEntity](#tvseriesentity) - [AdditionalEntity](#additionalentity) - [ProgramEntity](#programentity) - [Entity](#entity) - [EntityDetails](#entitydetails) - [PlayableEntity](#playableentity) ## Types ### MovieEntity A Firebolt compliant representation of a Movie entity. ```typescript type MovieEntity = { entityType: 'program' programType: 'movie' entityId: string assetId?: string appContentData?: string } ``` --- ### Metadata ```typescript type Metadata = { title?: string // Title of the entity. synopsis?: string // Short description of the entity. seasonNumber?: number // For TV seasons, the season number. For TV episodes, the season that the episode belongs to. seasonCount?: number // For TV series, seasons, and episodes, the total number of seasons. episodeNumber?: number // For TV episodes, the episode number. episodeCount?: number // For TV seasons and episodes, the total number of episodes in the current season. releaseDate?: string // The date that the program or entity was released or first aired. contentRatings?: ContentRating[] // A ContentRating represents an age or content based of an entity. Supported rating schemes and associated types are below. } ``` See also: [ContentRating](../Entertainment/schemas/#ContentRating) --- ### MusicEntity ```typescript type MusicEntity = { entityType: 'music' musicType: MusicType // In the case of a music `entityType`, specifies the type of music entity. entityId: string } ``` See also: [MusicType](../Entertainment/schemas/#MusicType) --- ### ChannelEntity ```typescript type ChannelEntity = { entityType: 'channel' channelType: 'streaming' | 'overTheAir' entityId: string // ID of the channel, in the target App's scope. appContentData?: string } ``` --- ### UntypedEntity ```typescript type UntypedEntity = { entityId: string assetId?: string appContentData?: string } ``` --- ### PlaylistEntity A Firebolt compliant representation of a Playlist entity. ```typescript type PlaylistEntity = { entityType: 'playlist' entityId: string assetId?: string appContentData?: string } ``` --- ### TVEpisodeEntity A Firebolt compliant representation of a TV Episode entity. ```typescript type TVEpisodeEntity = { entityType: 'program' programType: 'episode' entityId: string seriesId: string seasonId: string assetId?: string appContentData?: string } ``` --- ### TVSeasonEntity A Firebolt compliant representation of a TV Season entity. ```typescript type TVSeasonEntity = { entityType: 'program' programType: 'season' entityId: string seriesId: string assetId?: string appContentData?: string } ``` --- ### TVSeriesEntity A Firebolt compliant representation of a TV Series entity. ```typescript type TVSeriesEntity = { entityType: 'program' programType: 'series' entityId: string assetId?: string appContentData?: string } ``` --- ### AdditionalEntity A Firebolt compliant representation of the remaining program entity types. ```typescript type AdditionalEntity = { entityType: 'program' programType: | 'concert' | 'sportingEvent' | 'preview' | 'other' | 'advertisement' | 'musicVideo' | 'minisode' | 'extra' entityId: string assetId?: string appContentData?: string } ``` --- ### ProgramEntity ```typescript type ProgramEntity = | MovieEntity | TVEpisodeEntity | TVSeasonEntity | TVSeriesEntity | AdditionalEntity ``` See also: [MovieEntity](#movieentity) [TVEpisodeEntity](#tvepisodeentity) [TVSeasonEntity](#tvseasonentity) [TVSeriesEntity](#tvseriesentity) [AdditionalEntity](#additionalentity) --- ### Entity ```typescript type Entity = | ProgramEntity | MusicEntity | ChannelEntity | UntypedEntity | PlaylistEntity ``` See also: [ProgramEntity](#programentity) [MusicEntity](#musicentity) [ChannelEntity](#channelentity) [UntypedEntity](#untypedentity) [PlaylistEntity](#playlistentity) --- ### EntityDetails ```typescript type EntityDetails = { identifiers: | ProgramEntity | MusicEntity | ChannelEntity | UntypedEntity | PlaylistEntity info?: Metadata waysToWatch?: WayToWatch[] // A WayToWatch describes a way to watch a video program. It may describe a single } ``` See also: [Metadata](#metadata) [WayToWatch](../Entertainment/schemas/#WayToWatch) --- ### PlayableEntity ```typescript type PlayableEntity = | MovieEntity | TVEpisodeEntity | PlaylistEntity | MusicEntity | AdditionalEntity ``` See also: [MovieEntity](#movieentity) [TVEpisodeEntity](#tvepisodeentity) [PlaylistEntity](#playlistentity) [MusicEntity](#musicentity) [AdditionalEntity](#additionalentity) ---