UMC Catalog Data Interface Specification 3.6

Getting Started

Apple’s video content platform supports content programming using the Universal Media Catalog (UMC). A catalog is a collection of content. The data for a catalog’s content is delivered to Apple’s video content platform through the UMC Data Ingest Service. During registration with Apple, you will share your catalog identifier (catalog ID) with your Apple Technical Partner Representative.

To enable search and discovery of content through various Apple experiences such as Apple’s TV App and Universal Search, a video content provider may provide Apple data about its catalog’s contents.

This document describes and defines the requirements for interfacing catalog data with the UMC Data Ingest Service. Service providers must couple the catalog requirements with requirements in UMC Availability Data Interface Specification to provide a complete representation of the content and its availability.

Important Tasks

Here are the main tasks to prepare catalog data for ingestion:

  • Share your Team ID with your Apple Technical Partner Representative. If your Team ID is not known or not yet registered, contact your Apple Technical Partner Representative.

  • Share your catalog ID with your Apple Technical Partner Representative.

  • Implement the catalog feed with the data requirements described in this document.

  • Provide Apple with the HTTPS endpoint information for your content.

  • Publish the catalog data feed at the predefined frequency.

  • Ensure the content items referenced in the availability data feed are also present in the catalog data feed.

Content Types in the Catalog Feed

A catalog is delivered to Apple as a data feed consisting of a structured XML file published at a predefined endpoint with a specific frequency. A catalog data feed must comply with the schema and requirements defined in this guide.

A catalog data feed contains data about each of its content items, such as title and description. Each content item must be assigned a unique identifier, content ID, and content type. A content ID must be unique across all content types. The supported content types are:

  • Movie: A motion picture.

  • TV show: A TV show is episodic by nature and may consist of seasons.

  • TV season: A TV season is a collection of episodes and is part of an episodic TV show.

  • TV episode: A TV episode is part of a TV show and may be part of a TV season.

  • Sporting event: A game or a match between competitors, typically associated with a specific governing body such as a league.

  • Extra: Extra content can be standalone, but is typically related to another content item such as a movie, TV show, TV season, or a TV episode.

Feed Requirements

For each catalog feed:

  • The feed must be published at the predefined HTTPS endpoint as provided to Apple. This endpoint will be periodically accessed by UMC Data Ingest Service.

    Note: To ensure security, the endpoint must support the HTTPS protocol using a certificate issued by a well-known certificate authority. For further security, you may limit endpoint access by IP range, use HTTP authentication, or force client-based certificate authentication.

  • The feed must be published at the frequency established during catalog registration with Apple.

  • The feed must meet the data constraints defined in this document.

  • The feed must adhere to the schema (hierarchy and order) defined in this document.

Feed Data Constraints

The feed must contain data for only one catalog identified by its unique identifier, a catalog ID. A catalog can include one or more content items. All movie and TV content items should be provided in a single catalog feed, the order of items in the catalog feed is not important. Live Sports content items should be provided in a separate catalog feed. One catalog should be used for multiple territories or multiple brands. Exclude adult-only content from the feed.

The catalog feed endpoint returns the catalog feed data as a formatted XML document. The feed XML elements must appear in the order specified in XML Feed Elements.

Catalog Feed Structure

XML Feed Elements

The catalog feed is an XML document. The XML structure for a catalog feed must conform to the following schema in the order given.

The root element of the XML feed is <umcCatalog>. It contains three attributes and the following elements:

  • totalItemCount

  • link

  • lastBuildDate

  • title

  • description

  • defaultLocale

  • <item>

Element of <umcCatalog>

Description

Attribute

Example

Required

<umcCatalog> is the root element and has three attributes.

version (required)

Attribute version will indicate the feed specification version that this feed conforms to (value must be "3.6" for this specification).

teamld (required)

Your Team ID as registered with Apple.

catalogId (required)

Unique catalog identifier (as identified during Apple catalog registration).

Example: com.catalog.acme

<umcCatalog version="3.6" xmlns:umc="https: //www.tbd.com/ spec/umc- catalog/" teamId="VT6C486PN U" catalogId="com.catalog.acme">

totalItemCount

Required

The total number of <item> elements published in this feed across all pages.

208

link

Optional

Indicates next page URL for paginated response.

Feed assumed complete or “not paginated” when missing.

rel (required)

When included with attribute rel=“next”, the value "next" is used to indicate that this link is for the next page in a paginated feed.

href=”https://api.acme.net/catalog/endpoint?page=2"

lastBuildDate

Required

Feed build date.

YYYY-MM- DDThh:mm:ss.sTZD

ISO 8601 Format

Note: If +/- offset is not provided the time zone will be assumed to be GMT.

  • YYYY is four-digit year

  • MM is two-digit month

    (01=January, etc.)

  • DD is two-digit day of month (01 through 31)

  • hh is two digits of hour (00 through 23) (am/pm NOT allowed)

  • mm is two digits of minute (00 through 59)

  • ss is two digits of second (00 through 59)

  • s is one or more digits representing a decimal fraction of a second

  • TZD is time zone designator (Z or +hh:mm or -hh:mm)

2015-03-08T18:00:12-07:00

title

Optional

Human-readable feed title.

Catalog Feed

description

Optional

Human-readable feed title.

Catalog Feed Sample

defaultLocale

Required

The locale to be used by default when a locale is not explicitly provided for various localized attributes. The locale should be specified in BCP-47 Format.

en-US

<item>

Required (repeatable)

Contains one or more content items of different content types. Refer to Item Schema Definition.

<item contentType="movie"contentId="CP012391">

Sample Catalog Feed

<?xml version="1.0"encoding="UTF-8"?><umcCatalog version=“3.6" teamId=“VT6C486PNU” catalogId=“com.catalog.acme” xmlns:umc="https://www.tbd.com/spec/umc-catalog/"> <totalItemCount>308</totalItemCount> <link rel="next" href="https://api.acme.net/catalog/endpoint?page=2"/> <lastBuildDate>2015-05-01T18:00:12-07:00</lastBuildDate> <title>Catalog Feed</title> <description>Catalog Feed Sample</description> <defaultLocale>en-US</defaultLocale> <!— one or more <item> elements as described in section “Item Schema Definition.” —></umcCatalog>

Schema Definitions

Item Schema Definition

Elements of <item>

An <item> element contains metadata describing a single content item. This metadata consists of required and optional elements. An item is identified by its content ID and content type.

The <item> element must contain the data defined in the following table in the order given.

The <item> element consists of two attributes and the following elements:

  • pubDate

  • contentGroupId

  • title

  • description

  • genre

  • rating

  • advisory

  • credit

  • externalContentId

  • artwork

  • isOriginal

  • isAdultOnlyContent

  • originalSpokenLocale

  • productionCountry

  • countryOfOrigin

  • copyrightLine

  • additionalItemInfo

  • "Info” elements for data specific to each content type

Element of <item>

Description

Attribute

Example

Required (repeatable)

<item> has two attributes and contains one or more content items of different content types.

contentType

Indicates the type of this item. See Content Type for supported content type values.

movie

contentId (required)

Defines the unique ID you are providing for this item. This ID must be case-sensitive. 1 to 255 characters in length. Example: CP012391

Note: This must be unique across all content types; no two items should have the same contentId even if their contentType is different.

The contentId for a given content item must be consistent and cannot be changed.

CP012391

pubDate

Required

Last item data update date.

YYYY-MM- DDThh:mm:ss.sTZDISO 8601 Format

Note: If +/- offset is not provided the time zone will be assumed to be GMT.

  • YYYY is four-digit year

  • MM is two-digit month

    (01=January, etc.)

  • DD is two-digit day of month (01 through 31)

  • hh is two digits of hour (00 through 23) (am/pm not allowed)

  • mm is two digits of minute (00 through 59)

  • ss is two digits of second (00 through 59)

  • s is one or more digits representing a decimal fraction of a second

  • TZD is time zone designator (Z or +hh:mm or -hh:mm)

2019-03-08T18:00:12-07:00

contentGroupId

Optional

Identifier used to group duplicate content items. 1 to 255 characters in length.

CPG1504

title

Required (repeatable)

Item’s title.

1 to 255 characters in length.

locale (optional)

Attribute locale can be used to set the locale in BCP-47 Format. If no locale attribute is provided, the locale will be set to defaultLocale value. Multiple locales can be specified in multiple repeated elements.

type (optional)

Attribute type is used to indicate type of the title. See appendix Title Type for supported title types.

isPhonetic (optional)

Attribute isPhonetic with a value true or false can be supplied to designate titles with different pronunciations. If any meaningful separation units exist, they should be delimited using a space character.

Japanese phonetic title should be provided in full-width Hiragana or Katakana. Providing the phonetic title provides a better search experience for the user.

countriesRestrictedTo (optional)

Attribute countriesRestrictedTo can be used to limit the countries that the title may be used in. The value of this attribute must be a comma-separated string of the two-letter country codes as defined in the ISO 3166 International Standard. If this attribute is not specified, it will be assumed that the title can be used worldwide.

<title locale="en-US">Mountain High</title>

OR

<title locale="en-US", type="additional">
Rocky Mountain High
</title>

OR

<title locale="ja-JP", isPhonetic="true" >ロッキー マウンティ ン ハイ</title>

OR

<title locale="fr-FR" countriesRestrictedTo="FR,CA"> Haute Montagne </title>

OR

<title locale="ja-JP" type=“descriptive">
ロッキーマウンテンスペシャルシーズン
</title>

description

Optional (repeatable)

Item’s description.

0 to 4000 characters in length.


locale (optional)

Attribute locale can be used to set the locale in BCP-47 Format. If no locale attribute is provided, the locale will be set to defaultLocale value. Multiple locales can be specified in multiple repeated elements.

countriesRestrictedTo (optional)

Attribute countriesRestrictedTo can be used to limit the countries that the description may be used in. The value of this attribute must be a comma-separated string of the two-letter country codes as defined in the ISO 3166 International Standard. If this attribute is not specified, then it will be assumed that the title can be used worldwide.

<description locale="es-ES">
 No hay lugar más alto que la Montaña Alta.
 </description>

genre

Optional (repeatable)

The genre of this item. Multiple genres may be defined as an ordered collection of values. See Genre for supported genre values.

<genre>comedy</genre><genre>horror</genre>

rating

Optional(repeatable)

Required for certain geographic regions. Contact your Apple Technical Partner to get requirements for your region.

Sets the rating for this item.

See Content Rating Schema Definition for more details for this element.

advisory

Optional (repeatable)

Required for certain geographic regions. Contact your Apple Technical Partner to get requirements for your region.

Sets the advisories for this item.

systemCode (required)

Attribute systemCode specifies which advisory system the advisory is for.

See Content Advisories and Ratings for systemCode values and rating values. There can only be one rating per systemCode.

level (optional)

Attribute level specifies the severity or the degree of expression of the advisory.

See Content Advisories and Ratings for valid level values. There can only be one level for an advisory.

<advisory systemCode="us- tv">
L</advisory>

<advisory systemCode=“kr-movies" level=“high”>V</advisory>

credit

Optional (repeatable)

Specifies cast and crew credits. Credits should be provided in billing order.

For TV credits, show regular cast and crew will be provided at the show-item level, seasonal cast and crew will be provided at the season-item level, and episode-specific cast and crew will be provided at the episode-item level.

See Credit Schema Definition for more details for this element.

externalContentId

Optional (repeatable)

Specifies mapping to an equivalent content item in an external catalog.

1 to 255 characters in length.

catalogId (required)

Attribute catalogId will be used to identify the external catalog.

See External Catalog for "catalogId" values that can be used.

<externalContentId catalogId=
 "com.apple.trb.catalog"> EP00282838 </externalContentId>

artwork

Optional (repeatable)

Defines the imagery for this content.

url (required)

Attribute url specifies the URL to the artwork asset.

Note: If any previously delivered artwork is changed, a new URL must be provided for the new artwork so it can be ingested.

It is highly recommended to use default HTTP(S) ports for the artwork URLs.

type (required)

Attribute type identifies the type of the artwork from the UMC-defined types specified in Artwork Asset Type table.

locales (optional)

Attribute locales should be a comma-separated list of BCP-47 Format locales for this artwork. Missing locales will be presumed to be non-localized artwork applicable worldwide.

countriesRestrictedTo (optional)

Attribute countriesRestrictedTo can be used to limit the countries that the image may be used in. The value of this attribute must be a comma-separated string of the two-letter country codes as defined in the ISO 3166 International Standard. If this attribute is not specified, then it will be assumed that the title can be used worldwide.

<artwork url="https:// www.acme.com/coverartwork1930.jpg" type="cover_artwork_vertical" locales="en-US"/>

isOriginal

Optional

Specifies if this content is the partner’s original program. This should be set to true only for content items originally produced by or for the partner. When missing, this will be defaulted to false.

<isOriginal> true </isOriginal>

isAdultOnlyContent

* Required if adult-only content is allowed by contract.

Specifies if this contains content that is generally thought to be inappropriate for viewing by children and/or suitable for after-hours viewing. When missing, this will be defaulted to false.

Note: Explicit/Adult-Only content items must be excluded from the feed unless explicitly permitted in your business agreements with Apple.

<isAdultOnlyContent> true </isAdultOnlyContent>

originalSpokenLocale

Optional (repeatable)

* Required for certain geographic regions. Contact your Apple Technical Partner to get requirements for your region.

Specifies the original spoken language(s) for this content item. Multiple values should be provided in order of precedence with the primary spoken language being first.

The value should be specified as a string representing a locale in BCP-47 Format.

<originalSpokenLocale>fr-CA <originalSpokenLocale>

productionCountry

Optional (repeatable)

* Required for certain geographic regions. Contact your Apple Technical Partner to get requirements for your region.

The country that is the primary source of funds for the content’s production. This should be the country that provided most of the funds (for example, from national lotteries and other subsidies). Multiple values should be provided in order of precedence with the primary country being first.

The value of this element must be the 2-letter country code for the country of production as defined in the ISO 3166 International Standard.

Note: This is not the same as the countryOfOrigin, which is the country where the content originates from in accordance with applicable law.

<productionCountry>US</productionCountry>

countryOfOrigin

Optional (repeatable)

* Required for certain geographic regions. Contact your Apple Technical Partner to get requirements for your region.

The country where the content originates from, for example, the country where the the content was primarily produced, where the main authors and workers reside, where the main producer is established etc. Such determination must be made in accordance with applicable law. Multiple values should be provided in order of precedence with the primary country being first.

The value of this element must be the 2-letter country code for the country of production as defined in the ISO 3166 International Standard.

Note: This may differ from the productionCountry, which is the country that provided most of the funds for production.

<countryOfOrigin>CA </countryOfOrigin>

copyrightLine

Optional (repeatable)

Statement that indicates the exclusive legal right for this content. 


0 to 4000 characters in length.

Note: The appropriate copyright symbol (©) will be automatically added and should not be included in the attribute value.

locale (optional)

Attribute locale can be used to set the locale in BCP-47 Format. If no locale attribute is provided, the locale will be set to defaultLocale value. Multiple locales can be specified in multiple repeated elements.

countriesRestrictedTo (optional)

Attribute countriesRestrictedTo can be used to limit the countries that the copyright line may be used in. The value of this attribute must be a comma-separated string of the 2-letter country codes as defined in the ISO 3166 International Standard. If this attribute is not specified, then it will be assumed that the title can be used worldwide.

<copyrightLine locale="en" countriesRestrictedTo ="JP">
2021 Rising Sun Studios, Inc. All Rights Reserved.
</copyrightLine>

additionalItemInfo

Optional (repeatable)

Used to provide string data for this content. 0 to 4000 characters in length.


type (required)

Attribute type identifies the type of additional item information from the UMC-defined types specified in the appendix Additional Item Information Type table.

locale (optional)

Attribute locale in BCP-47 Format. If no locale attribute is provided, the locale will be set to defaultLocale value. Multiple locales can be specified in multiple repeated elements.

countriesRestrictedTo (optional)

Attribute countriesRestrictedTo can be used to limit the countries that the copyright line may be used in. The value of this attribute must be a comma-separated string of the 2-letter country codes as defined in the ISO 3166 International Standard. If this attribute is not specified, it will be assumed that the value can be used worldwide.

<additionalItemInfo type=“rating_classification_number”> A1B2C3D4 </additionalItemInfo>

primaryLocale

Optional

Used to indicate the primary language for this content. The value should be specified as a string representing a locale in BCP-47 Format.

<primaryLocale>en</primaryLocale>

“Info” element depending on content type

Required

Used to define an “Info” element that contains data specific to its content type, such as <movieInfo> for content type “movie”.

For the list of possible data per content type, see the sections describing the info schema definitions:

<movieInfo><type> feature </type> <duration> 5460 </duration>...</movieInfo>

Credit Schema Definition

Credit is used to specify the details of the cast and crew for a catalog item.

Parent: <item> (required)

Describes the cast and crew.

Element of <credit>

Sub-Element

Description

Attribute

Example

Specifies cast and crew details.

role (required)

Attribute role will be used to define the credited role, see Credited Role for values. It is highly recommended to include at least one director and/or major actor.

order (optional)

Attribute order will be used to sequence the credits for this item. If order is not provided, credits will be sequenced based on order of appearance in the feed. Typically credits are provided in billing order.

<credit role="actor" order=“1”> <name> Ted Green </name> <character> <characterName>Batman </characterName></character> </credit>

name

Required (repeatable)

Specifies the official name of the credited entity.

1 to 255 characters in length.

locale (optional)

Attribute locale can be used to specify the locale for the name. The locale must be in BCP-47 Format. If no locale attribute is provided, the locale is assumed to be the defaultLocale as specified in the feed header. Multiple locales can be specified in multiple repeated elements.

isPhonetic (optional)

The isPhonetic attribute with a value true or false can be supplied to designate credits with different pronunciations for credited names.

<credit role="actor"> <name locale="en-US"> Bill Jones </name> <name locale="ja-JP" isPhonetic="true"> ベン アフレック </name>

creditedPersonInfo

Optional

Specifies additional information for the credited entity.

<creditedPersonInfo >
 <dateOfBirth>
 1973-10-26
 </dateOfBirth>
 <externalId catalogId=
 “com.apple.trb.cata log">
 174981
 </externalId>
 <externalId catalogId=
 “com.apple.fbk.cata log">
 Seth- MacFarlane-14105972 607
 </externalId>
 <externalId catalogId=
 "com.apple.twi.cata log">
 @SethMacFarlane
 </externalId>
 <externalId catalogId=
 "com.apple.igr.cata log">
 macfarlaneseth
 </externalId>
 </ creditedPersonInfo>

dateOfBirth

Optional

Specifies date of birth for credited entity.

The value is the date of birth in YYYY-MM-DD format.

<dateOfBirth> 1942-09-24 </dateOfBirth>

externalId

Optional (repeatable)

Specifies mapping to an equivalent entity in an external catalog.

1 to 255 characters in length.

catalogId (required)

Attribute catalogId will be used to identify the external catalog.

See External Catalog for catalogId values that can be used.

<externalId catalogId=
 "com.apple.trb.cata log">
 174981
 </externalId>

character

Optional (repeatable)

Specifies the name of the character of credited entity.

1 to 255 characters in length.

imageUrl (optional)

Specifies the cast in character image URL for credited entity.


Note: If any previously delivered artwork is changed, a new URL must be provided for the new artwork so it can be ingested.

<character imageUrl=“>https:// www.acme.com/ castInCharacter1234 .jpg”>
 <characterName>
 Batman
 </ characterName>
 </character>

characterName

Required (repeatable)

Specifies the official name of the credited entity.

1 to 255 characters in length.

locale (optional)

Attribute locale can be used to specify the locale for the character name. The locale must be in BCP-47 Format. If no locale attribute is provided, the locale is assumed to be the defaultLocale as specified in the feed header. Multiple locales can be specified in multiple repeated elements.

isPhonetic (optional)

The isPhonetic attribute with a value true or false can be supplied to designate credits with different pronunciations for credited names.

<character imageUrl=“https://www.acme.com/castInCharacter1234.jpg”>
 <characterName>
 Batman
 </characterName>
 <characterName 
 locale=“jp-JP”
 isPhonetic=“true”>
 バットマン
 </characterName>
</character>

Content Rating Schema Definition

Content rating is used to specify the rating for a catalog item in a given content rating system.

Parent: <item> (required)

Describes the content rating.

Element of <rating>

Sub-Element

Description

Attribute

Example

Specifies the rating for an item.

system code (required)

Attribute systemCode specifies which system the rating is for.

value (required)

Attribute value specifies the rating code.

See Content Advisories and Ratings for supported systemCode values and rating value. There can only be one rating value per systemCode.

<rating systemCode=“mpaa" value=“R” />

reason

Optional (repeatable)

Specifies the rating reason as supplied by the ratings board for the corresponding rating system.

1 to 4000 characters in length.

locale (optional)

Attribute locale can be used to specify the locale for the rating reason. The locale must be in BCP-47 Format. If no locale attribute is provided, the locale is assumed to be the defaultLocale as specified in the feed header. Multiple locales can be specified in multiple repeated elements.

<rating systemCode=“mpaa" value=“PG-13”>
 <reason locale=“en”>
 for sequences of violence and action.
 </reason>
 <reason locale=“fr”>
 pour les séquences de violence et d’action.
 </reason>
</rating>

Movie Content Type

Movie Info Schema Definition

A movie is a film or a motion picture. A content item is specified as a movie by setting the <contentType> to value “movie".

In addition to the attributes mentioned in Item Schema Definition, the movie content item must include data about movies in its <movieInfo> element.

The <movieInfo> element must contain the data defined in the following table in the order given.

Element of <movieInfo>

Description

Attribute

Example

type

Required

See Movie Type.

  • feature

  • short

duration

Optional

The duration of this content in seconds; numeric integer, valid values range from 1 to 86400.

9000

studio

Optional (repeatable)

A list of studio elements each providing the name of a studio that produced this content. 1 to 255 characters in length.

Platonic Studios

originalReleaseDate

Required (repeatable)

Describes the date of an original release in a country or worldwide. This is typically the theatrical release of the movie.

The value is the date of release in YYYY-MM-DD format.

country (optional)

Attribute country indicates the country of release (two letter ISO 3166-2). If not specified, indicates a worldwide release.

type (optional) Attribute type indicates the type of release date. See Release Date Type for supported values. If not specified, the value theatrical is assumed.

Important: If the exact release date is unknown, a year in YYYY-01-01 format should be specified.

2019-03-08

OR

2021-01-01 to indicate a release year “2021”

version

Optional

See Movie Version. If not supplied, the version will be set to standard.

  • standard

  • unrated

Sample Movie Item

<item contentType=“movie” contentId=“CP012391”> <pubDate>2015-05-01T18:00:12-07:00</pubDate> <title locale="en-US">Mountain High</title> <title locale="es-ES">Montaña Alto</title> <title locale="fr-FR" countriesRestrictedTo="FR,CA">Haute Montagne</title> <title type="additional" locale="en-US">The Big Mountain</title> <title locale="ja-JP" isPhonetic="true" >ロッキー マウンティン ハイ</title> <description locale="en-US">There's no higher place than Mountain High.</description> <description locale="es-ES">No hay lugar más alto que la Montaña Alta.</description> <description locale="fr-FR" countriesRestrictedTo="FR,CA">Il n'y a pas lieu plus 
 élevé que la haute montagne.</description> <genre>drama</genre> <genre>travel</genre> <rating systemCode="mpaa" value="R" /> <credit role="actor" order="1"> <name>Ted Green</name> <character imageUrl="https://www.acme.com/castInCharacter1234.jpg"> <characterName> Batman</characterName> </character> </credit> <credit role="actor" order="2"> <name locale="en-US">Jeff Brown</name> <name locale="en-CA">Jeff Brown</name> <name locale="jp-JP" isPhonetic="true">ベンアフレック</name> <character> <characterName locale="en-US"> Robin</characterName> <characterName locale="en-CA"> Robin</characterName> <characterName locale="jp-JP" isPhonetic="true">バットマン</characterName> </character> </credit> <credit role="producer"> <name>Bob Smith</name> <creditedPersonInfo> <dateOfBirth>1972-10-24</dateOfBirth> <externalId catalogId="com.apple.trb.catalog">123456</externalId> <externalId catalogId="com.apple.fbk.catalog">Bob-Smith-14105972607</externalId> </creditedPersonInfo> </credit> <credit role="music"> <name>Red Blaney</name> </credit> <externalContentId catalogId="com.apple.trb.catalog">MV100282838</externalContentId> <artwork url="https://www.acme.com/imageassets/11/12/movieposter1112.jpg" type="cover_artwork_vertical" locales="en-US" /> <artwork url="https://www.acme.com/imageassets/11/12/movieposter1113.jpg" type="cover_artwork_vertical" locales="fr-FR" countriesRestrictedTo="FR,CA"/> <artwork url="https://www.acme.com/imageassets/11/12/moviebanner1114.jpg" type=“cover_artwork_horizontal" locales=“en-US”/> <artwork url="https://www.acme.com/imageassets/11/12/keyframe1112S1.jpg" type="tile_artwork" locales="en-US" /><movieInfo> <type>feature</type> <duration>5460</duration> <studio>Platonic Studios</studio> <studio>Hypothetical America</studio> <originalReleaseDate country="US">2019-03-08</originalReleaseDate> <originalReleaseDate country="CA">2019-03-08</originalReleaseDate> <originalReleaseDate country="ES">2019-03-08</originalReleaseDate> <originalReleaseDate country="US" type="digital">2014-12-25</originalReleaseDate> <version>standard</version> </movieInfo></item>

Episodic TV Content Type

TV Show Content Type

A TV show is a content item consisting of seasons and/or episodes. This content item is specified as a TV show by setting the <contentType> to value "tv_show".

A TV show must be one of the following types:

  • series: This is the most common show type with episodes grouped into multiple seasons and ordered by episode numbers. This is typically for shows meant to be viewed in a sequence of episodes across multiple seasons and not at random.

  • miniseries: This show type contains a limited number of episodes ordered by episode number and not grouped into seasons. This is typically for shows with few episodes meant to be viewed in a sequence.

  • seasonless: This show type contains episodes that do not need to be ordered by episode number and are not grouped into seasons. This is typically for shows not meant to be viewed in a sequence, such as nightly news and daily sport recaps.

TV Show Info Schema Definition

In addition to the attributes mentioned above, the TV show content item can include data about a TV show in its <tvShowInfo> element.

The <tvShowInfo> element must contain the data defined in the following table in the order given.

Element of <tvShowInfo>

Description

Attribute

Example

type

Required

See TV Show Type.

  • series

  • miniseries

  • seasonless

originalPremiereDate

Required*

* Required if no localPremiereDate is provided.

Date when the show’s premiere was originally aired globally (or in country of origin). This should be in YYYY-MM-DD format.

Important: If the exact originalPremiereDate is unknown, an exact year in YYYY-01-01 format should be specified.

2019-01-13

localPremiereDate

Required* (repeatable)

* Required if originalPremiereDate is not provided.

Date when the show’s premiere was aired in the countries specified. This should be in YYYY-MM-DD format.

countries (required)

Attribute countries must be used to specify the countries that the premiere date applies to. Value should be the two-letter country codes as defined in the ISO 3166 International Standard. Multiple countries can be grouped together in a comma-separated value string.

Important: If the exact localPremiereDate is unknown, an exact year in YYYY-01-01 format should be specified.

<localPremiereDate countries="DE, FR, ES">2019-12-25 </localPremiereDate>

originalFinaleDate

Optional

Date when the show’s finale was originally aired globally (or in country of origin). This should be in YYYY- MM-DD format.

Original finale date must not be earlier than the specified original premiere date.

2019-12-25

localFinaleDate

Optional (repeatable)

The date that this show’s finale was aired in the countries specified. This should be in YYYY-MM-DD format.

The local finale date must not be earlier than the specified local premiere date for the respective country.

countries (required)

Attribute countries must be used to specify the countries that the finale date applies to. The value of this attribute must be a comma-separated string of the two-letter country codes as defined in the ISO 3166 International Standard. Multiple countries can be grouped together in a comma-separated value string.

<localFinaleDate countries="DE, FR, ES">2012-12-25</localFinaleDate>

network

Optional (repeatable)

Contains a name corresponding to the show airing network.

1 to 255 characters in length.

  • BCD

  • XYZ

Sample TV Show Item

<item contentType=“tv_show” contentId=“SHOW4025”> <pubDate>2015-05-01T18:00:12-07:00</pubDate> <title locale="en-US">The Show of Shows</title> <title locale="es-ES">La demostración de las demostraciones</title> <title locale="fr-FR" countriesRestrictedTo="FR,CA">Le Show of Shows</title> <title locale="en-US" type="additional">Show of Shows</title> <description locale="en-US">A sample show.</description> <description locale="es-ES">Un espectáculo muestra.</description> <description locale="fr-FR" countriesRestrictedTo="FR,CA">Un spectacle del'échantillon.</description> <genre>drama</genre> <genre>action</genre> <rating systemCode="us-tv" value="TV-Y7"/> <advisory systemCode="us-tv">L</advisory> <advisory systemCode="us-tv">S</advisory> <advisory systemCode="us-tv">V</advisory> <credit role="director"> <name>Ted Green</name> </credit> <credit role="producer"> <name>Margaret Gray</name> </credit> <credit role="actor"> <name>Jason J Yellow</name> </credit> <artwork url="https://www.acme.com/imageassets/40/25/tvsquareposter4025.jpg" type="cover_artwork_square" locales="en-US" /> <artwork url="https://www.acme.com/imageassets/40/25/tvsquareposter4026.jpg"type="cover_artwork_square" locales="fr-FR" countriesRestrictedTo="FR,CA" /> <artwork url="https://www.acme.com/imageassets/40/25/tvshow16x9banner4026.jpg" type=“cover_artwork_horizontal" locales=“en-US”/> <artwork url=“https://www.acme.com/imageassets/40/25/tvshow16x9preview_frame4026.jpg” type=“tile_artwork” locales=“en-US”/> <artwork url=“https://www.acme.com/imageassets/40/25/tvshow_centered_bground4026.jpg” type=“centered_background” locales=“en-US”/> <artwork url=“https://www.acme.com/imageassets/40/25/tvshow_content_branding_single_color4026jpg” type=“content_logo_monochromatic" locales=“en-US”/> <artwork url=“https://www.acme.com/imageassets/40/25/tvshow_content_branding_full_color4026jpg” type=“content_logo_polychromatic" locales=“en-US”/> <artwork url="https://www.acme.com/imageassets/40/25/tvcoververtical4025.jpg" type="cover_artwork_vertical" locales="en-US"/> <isOriginal>true</isOriginal> <tvShowInfo> <type>series</type> <originalPremiereDate>2012-04-29</originalPremiereDate> <localPremiereDate countries="DE,FR,ES">2012-12-25</localPremiereDate> <originalFinaleDate>2015-09-10</originalFinaleDate> <localFinaleDate countries="DE,FR,ES">2016-05-31</localFinaleDate> <network>ABC</network> </tvShowInfo></item>

TV Season Content Type

A TV season is part of an episodic TV show of type “series” and is typically used to define a collection of episodes in the TV show. This content item is specified as a TV season by setting the <contentType> to value "tv_season".

Note: Content items of type “tv_season” must be provided only for TV shows of type “series” and must not be provided for TV shows of type “miniseries” and “seasonless”.

TV Season Info Schema Definition

In addition to the attributes mentioned in the section Item Schema Definition, the TV season content item can include data about TV seasons in its <tvSeasonInfo> element.

The <tvSeasonInfo> element must contain the data defined in the following table in the order given.

Element of <tvSeasonInfo>

Description

Attribute

Example

showContentId

Required

The provider-unique ID for the season’s TV show as defined by the TV show’s contentId.

SHOW4025

seasonNumber

Required

The sequential season number for this season, specified as a non-negative integer value.

3

originalPremiereDate

Optional

Date when the season’s premiere was originally aired globally (or in country of origin). This should be in YYYY-MM-DD format.

Important: If the exact originalPremiereDate is unknown, an exact year in YYYY-01-01 format should be specified.

2019-03-13

localPremiereDate

Optional (repeatable)

Date when the season's premiere was aired in the countries specified. This should be in YYYY-MM-DD format.

countries (required)

Attribute countries must be used to specify the countries for which premiere date applies to. The value of this attribute must be a comma-separated string of the two-letter country codes as defined in the ISO 3166 International Standard. Multiple countries can be grouped together in a comma-separated value string.

Important: If the exact localPremiereDate is unknown, an exact year in YYYY-01-01 format should be specified.

<localPremiereDate countries="DE, FR, ES"> 2012-12-25 </localPremiereDate>

originalFinaleDate

Optional

Date when the season’s finale was originally aired globally (or in country of origin). This should be in YYYY-MM-DD format.

Original finale date must not be earlier than the specified original premiere date.

2018-12-25

localFinaleDate

Optional (repeatable)

The date that this season's finale was aired in the countries specified. This should be in YYYY-MM-DD format.

The local finale date must not be earlier than the specified local premiere date for the respective country.

countries (required)

Attribute countries must be used to specify the countries for which premiere date applies to. The value of this attribute must be a comma-separated string of the two-letter country codes as defined in the ISO 3166 International Standard. Multiple countries can be grouped together in a comma-separated value string.

<localFinaleDate countries="DE, FR, ES"> 2012-12-25 </localFinaleDate>

Sample TV Season Item

<item contentType=“tv_season” contentId=“SEASON8820”> <pubDate>2015-05-01T18:00:12-07:00</pubDate> <title locale="en-US">The Season of Seasons</title> <title locale="es-ES">La temporada de las Estaciones</title> <title locale="fr-FR" countriesRestrictedTo="FR,CA">La saison</title> <title locale="ja-JP" type="descriptive">季節の特別な季節</title> <description locale="en-US">A sample season.</description> <description locale="es-ES">Una temporada muestra.</description> <description locale="fr-FR" countriesRestrictedTo="FR,CA">Une saison de l'échantillon.</description> <genre>drama</genre> <rating systemCode="us-tv" value="TV-Y7"/> <advisory systemCode="us-tv">L</advisory> <advisory systemCode="us-tv">V</advisory> <credit role="producer"> <name>Benedict Bennet</name> </credit> <artwork url="https://www.acme.com/imageassets/88/20/coverartwork8820.jpg" type="cover_artwork_square" locales="en-US" /> <artwork url="https://www.acme.com/imageassets/88/20/coverartwork8821.jpg" type="cover_artwork_square" locales="fr-FR" countriesRestrictedTo="FR,CA"/> <artwork url="https://www.acme.com/imageassets/88/20/horizontalartwork8821.jpg" type="cover_artwork_horizontal" locales="en-US"/> <artwork url="https://www.acme.com/imageassets/88/20/coverartworkvertical8820.jpg" type="cover_artwork_vertical" locales="en-US"/> <tvSeasonInfo> <showContentId>SHOW4025</showContentId> <seasonNumber>1</seasonNumber> <originalPremiereDate>2012-04-29</originalPremiereDate> <localPremiereDate countries="DE,ES,FR">2012-12-25</localPremiereDate> <originalFinaleDate>2015-09-10</originalFinaleDate> <localFinaleDate countries="DE,FR,ES">2016-05-31</localFinaleDate> </tvSeasonInfo></item>

TV Episode Content Type

All episodes must belong to a TV show. This content item is specified by setting the <contentType> to value "tv_episode".

Note on Episode and Seasons:

  • All episodes that belong to a show of type series must also belong to a season.

  • All episodes that belong to a show of type miniseries or a show of type seasonless must not belong to a season.

Note on Episode Numbers:

  • All episodes must be numbered for shows of types series and miniseries. This is optional for shows of type seasonless.

TV Episode Info Schema Definition

In addition to the attributes mentioned above, the TV episode content item can include data about a single TV episode in its <tvEpisodeInfo> element.

The <tvEpisodeInfo> element must contain the data defined in the following table in the order given.

Element of <tvEpisodeInfo>

Description

Attribute

Example

type

Required

Type of TV episode. See TV Episode Type.

Note: Currently, the only supported episode type is standard.

standard

duration

Optional

The duration of this content in seconds; numeric integer, valid values range from 1 to 86400.

9000

originalAirDate

Required*

* Required if localAirDate is not provided.

The date that this episode originally aired in its country of origin. If this episode never aired on TV, this should be the date this episode was first available in its country of origin. This should be in YYYY-MM-DD format.

2019-03-13

localAirDate

Required* (repeatable)

* Required if originalAirDate is not provided.

The date that this episode aired in the countries specified. This is the first time this episode aired on any partner in the countries specified. If this episode never aired on TV, this should be the date this episode was first available in the countries specified. This should be in YYYY- MM-DD format.

countries (required)

Attribute countries must be used to specify the countries for which premiere date applies to. The value of this attribute must be a comma-separated string of the two-letter country codes as defined in the ISO 3166 International Standard. Multiple countries can be grouped together in a comma-separated value string.

<localAirDate countries="DE, FR, ES"> 2012-12-25 </localAirDate> <localAirDate countries="IT, GB">
2014-01-31
</localAirDate>

showContentId

Required

The provider-unique ID for the episode’s TV show as defined by the show contentId.

SHOW4025

seasonContentId

Required* for a standard episode in a show of type series.

* Not applicable for an episode in a show of type miniseries and type seasonless.

The provider-unique ID for the episode’s TV season as defined by the season contentId.

SEASON8820

seasonNumber

Required* for a standard episode in a show of type series.

* Not applicable for an episode in a show of type miniseries and type seasonless.

The sequential season number for this episode, specified as a non-negative integer value.

3

episodeNumber

Required* for a standard episode in a series and miniseries.

*Optional for a standard episode in a seasonless TV show.

The sequential episode number of this episode within this season; Specified as a non-negative integer or decimal value. For decimal episode numbers, only values up to one decimal place are supported.

Note: Decimal episode numbers need to be exclusively featured. Contact your Apple Technical Partner before providing decimal episode numbers.

<episodeNumber>7</episodeNumber>

<episodeNumber>1.5</episodeNumber>

<episodeNumber>0</episodeNumber>

productionNumber

Optional

A string identifying the production number of this episode.

1 to 255 characters in length.

01F01

Sample TV Episode Item for TV Show of Type “series”

<item contentType=“tv_episode” contentId=“EPISODE5228582”> <pubDate>2015-05-01T18:00:12-07:00</pubDate> <title locale="en-US">The Episode of Episodes</title> <title locale="es-ES">El episodio de Episodios</title> <title locale="fr-FR" countriesRestrictedTo="FR,CA">L' épisode des épisodes</title> <title locale="en-US" type="additional">Pilot, Season 1 Episode 1</title> <description locale="en-US">A sample episode.</description> <description locale="es-ES">Un episodio muestra.</description> <description locale="fr-FR" countriesRestrictedTo="FR,CA">Un épisode de l'échantillon.</description> <rating systemCode="us-tv" value="TV-Y7" /> <credit role="guest"> <name>Ted Green<name> <character> <characterName>Batman</characterName> </character> </credit> <credit role="guest"> <name locale="en-US">Jeff Brown</name> <name locale="en-CA">Jeff Brown</name> <character> <characterName locale="en-US" >Robin</characterName> <characterName locale="en-CA" >Robin</characterName> </character> </credit> <externalContentId catalogId="com.apple.trb.catalog">EP00282838</externalContentId> <artwork url="https://www.acme.com/imageassets/52/28/keyframe5228.jpg" type="tile_artwork" locales="en-US" /> <artwork url="https://www.acme.com/imageassets/52/28/keyframe5229.jpg" type="tile_artwork" locales="fr-FR" countriesRestrictedTo="FR,CA" /> <tvEpisodeInfo> <type>standard</type> <duration>5460</duration> <originalAirDate>2012-04-29</originalAirDate> <localAirDate countries="DE,FR,ES">2012-12-25</localAirDate> <showContentId>SHOW4025</showContentId> <seasonContentId>SEASON8820</seasonContentId> <seasonNumber>1</seasonNumber> <episodeNumber>1</episodeNumber> <productionNumber>01F01</productionNumber> </tvEpisodeInfo></item>

Sample TV Episode Item for TV Show of Type “miniseries”

<item contentType=“tv_episode” contentId=“EPISODE5228582”> <pubDate>2015-05-01T18:00:12-07:00</pubDate> <title locale="en-US">The Episode of Episodes</title> <description locale="en-US">A sample episode belonging to a miniseries.</description> <credit role="guest"> <name>Ted Green<name> <character> <characterName>Batman</characterName> </character> </credit> <credit role="guest"> <name locale="en-US">Jeff Brown</name> <name locale="en-CA">Jeff Brown</name> <character> <characterName locale="en-US" >Robin</characterName> <characterName locale="en-CA" >Robin</characterName> </character> </credit> <artwork url="https://www.acme.com/imageassets/52/28/keyframe5228.jpg" type="tile_artwork" locales="en-US" /> <artwork url="https://www.acme.com/imageassets/52/28/keyframe5229.jpg" type="tile_artwork" locales="fr-FR" countriesRestrictedTo="FR,CA" /> <tvEpisodeInfo> <type>standard</type> <duration>5460</duration> <originalAirDate>2012-04-29</originalAirDate> <showContentId>SHOW4025</showContentId> <episodeNumber>1</episodeNumber> </tvEpisodeInfo></item>

Sample TV Episode Item for TV Show of Type “seasonless”

<item contentType=“tv_episode” contentId=“EPISODE5228582”> <pubDate>2015-05-01T18:00:12-07:00</pubDate> <title locale="en-US">The Episode of Episodes</title> <description locale="en-US">A sample episode belonging to a seasonless show.</description> <credit role="guest"> <name>Ted Green</name> <character> <characterName>Batman</characterName> </character> </credit> <credit role="guest"> <name locale="en-US">Jeff Brown</name> <name locale="en-CA">Jeff Brown</name> <character> <characterName locale="en-US" >Robin</characterName> <characterName locale="en-CA" >Robin</characterName> </character> </credit> <artwork url="https://www.acme.com/imageassets/52/28/keyframe5228.jpg" type="tile_artwork" locales="en-US" /> <artwork url="https://www.acme.com/imageassets/52/28/keyframe5229.jpg" type="tile_artwork" locales="fr-FR" countriesRestrictedTo="FR,CA" /> <tvEpisodeInfo> <type>standard</type> <duration>5460</duration> <originalAirDate>2012-04-29</originalAirDate> <showContentId>SHOW4025</showContentId> </tvEpisodeInfo></item>

Sporting Event Content Type

Sporting Event Info Schema Definition

Identify your content as a sporting event, typically defined as a match between competitors that is associated with a governing body or league, by setting the <contentType> value to "sporting_event".

Sporting Event Info Schema Definition

In addition to the attributes mentioned in Item Schema Definition, the sporting event content item can include data about events in its <sportingEventInfo> element.

The <sportingEventInfo> element must contain the data defined in the following table in the order given.

Element of <sportingEventInfo>

Sub-Element

Description

Attribute

Example

startDate

Required

The scheduled starting date and time of the ISO 3166 International Standard: YYYY-MM-DDThh:mm:ss.sTZD

  • YYYY is four-digit year

  • MM is two-digit month (01=January, etc.)

  • DD is two-digit day of month (01 through 31)

  • hh is two digits of hour (00 through 23) (am/pm NOT allowed)

  • mm is two digits of minute (00 through 59)

  • ss is two digits of second (00 through 59)

  • s is one or more digits representing a decimal fraction of a second

  • TZD is time zone designator (Z or +hh:mm or -hh:mm)

2016-06-04T16: 00:00-07:00

sportName

Required

The abbreviation of the sport or sub-sport (if any) for this sporting event. For values supported, see Catalog Feed Specification Addendum for Sport Names and League Abbreviations.

<sportName> soccer </sportName>

<league>

Required

Describes the official governing body (such as league or federation) associated with the sporting event.

leagueId (optional)

Attribute leagueId must be a unique ID for the league.

1 to 255 characters in length.

league leagueId="8"><abbreviation> nba </ abbreviation> <name> National Basketball Association </name> </league>

abbreviation

Required

The abbreviation for this league or tournament. For values supported, see Catalog Feed Specification Addendum for Sport Names and League Abbreviations.

mlb

name

Optional

The full name of the league. For values supported, see Catalog Feed Specification Addendum for Sport Names and League Abbreviations.

Major League Baseball

<sportSeason>

Optional

Describes the details of the part of the year in which the sporting event occurs.

<sportSeason>
 <year>2016</ year> <name> 2016-2017 NBA Season </name>
 <name locale="fr- FR"> 2016-2017 NBA saison </name> <type> regular </type> </sportSeason>

year

Required

This should be the calendar year for the sport season. If the sport season spans consecutive years (2015-2016 for example), this should be the first year, ”2015” in this case.

2015

name

Optional (repeatable)

The full name of the sport season.

1 to 255 characters in length.

locale (optional)

Attribute locale can be used to set the locale in BCP-47 Format. If no locale attribute is provided, the locale will be set to defaultLocale value. Multiple locales can be specified in multiple repeated elements.

2016-2017 La Liga Season

type

Optional

This is the type qualifier for the sport season (such as regular or pre-season); see Sport Season Type for supported values.

  • pre

  • regular

  • post

<venue>

Required*

* Required if <competitor> is not provided.

The place where the event occurs.

City and state names should be spelled out fully, not abbreviated.

venueId (optional)

Attribute venueId should be a unique ID for the event venue. Note that this should be unique across all venues.

1 to 255 characters in length.

<venue venueId="126"> <name locale=“en- US”> Santiago Bernabéu Stadium </name> <name locale=“es- ES”> Estadio Santiago Bernabéu </name> <city locale=“en- US”> Madrid </city> <country> ES </country> </venue>

name

Required (repeatable)

The full name of the event venue.

1 to 255 characters in length.

locale (optional)

Attribute locale can be used to set the locale in BCP-47 Format. If no locale attribute is provided, the locale will be set to defaultLocale value. Multiple locales can be specified in multiple repeated elements.

Britannia Stadium

city

Required (repeatable)

The city where the venue is located.

1 to 255 characters in length.

locale (optional)

Attribute locale can be used to set the locale in BCP-47 Format. If no locale attribute is provided, the locale will be set to defaultLocale value. Multiple locales can be specified in multiple repeated elements.

Stoke-on-Trent

state

Optional (repeatable)

The state or region where the venue is located.


1 to 255 characters in length.

locale (optional)

Attribute locale can be used to set the locale in BCP-47 Format. If no locale attribute is provided, the locale will be set to defaultLocale value. Multiple locales can be specified in multiple repeated elements.

Staffordshire

country

Required

The country where the venue is located. The value of this element must be the two-letter country code for the country as defined in the ISO 3166 International Standard.

  • UK

  • US

  • CA

  • AU

competitor

Required* (repeatable)

* Required if <venue> is not provided.

A team or person who takes part in the sporting event.

Note: At least two competitors required.

competitorId (optional)

Attribute venueId should be a unique ID for the event venue. Note that this should be unique across all venues.

1 to 255 characters in length.

<competitor competitorId=" 24"> <name locale="en- US"> Warriors </name> <name locale="en-US" type="addition al"> Golden State Warriors </name> <location> Oakland </location> <abbreviation>
 GSW </ abbreviation> <isHome> true </ isHome> </competitor>

name

Required (repeatable)

The name (team name, nickname, or person name) of the competitor with the location excluded.

1 to 255 characters in length.

locale (optional)

Attribute locale can be used to set the locale in BCP-47 Format. If no locale attribute is provided, the locale will be set to defaultLocale value. Multiple locales can be specified in multiple repeated elements.

type (optional)

Attribute type with a value of "additional" can be supplied to designate secondary names.

Rockies

homeLocation

Optional

The home place or the name of college or university for the competitor.

  • Colorado

  • Duke

abbreviation

Optional

The common/unique abbreviation for the team.

LAL

isHome

Optional

Boolean true/false indicating if the venue is the home location for this competitor (team). For individual sports (such as tennis doubles) this is used to group players on one side versus another.

true

isPerson

Optional

Boolean true/false indicating if this competitor is a person or a team.

false

<eventRound>

Optional

Provides additional data for post-season playoff/ tournament games.

<eventRound> <name> Western Conference Finals </name> <gamesInRound> 7 </ gamesInRound> <gameNumber>
 3 </ gameNumber> </eventRound>

name

Required (repeatable)

The full name of the event round.

1 to 255 characters in length.

locale (optional)

Attribute locale can be used to set the locale in BCP-47 Format. If no locale attribute is provided, the locale will be set to defaultLocale value. Multiple locales can be specified in multiple repeated elements.

Eastern Conference Final

gamesInRound

Optional

The total number of games in the series or round.

7

gameNumber

Optional

The number of this event in the series or round.

3

<eventStatus>

Optional

The current status of this event; see Sport Event Status for supported values.

canceled

<tournament>

Optional

Additional data for an event that is part of a tournament.

tournamentId (optional)

Attribute tournamentId should be a unique ID for the tournament. Note that this should be unique across all tournaments.

1 to 255 characters in length.

<tournament tournamentId=" t123"> <name> NCAA Men's Division I Basketball Tournament </name> <name locale="es- ES"> Torneo de baloncesto masculino de la NCAA División I </name> </tournament

name

Required (repeatable)

The full name of the tournament.

1 to 255 characters in length.

locale (optional)

Attribute locale can be used to set the locale in BCP-47 Format. If no locale attribute is provided, the locale will be set to defaultLocale value. Multiple locales can be specified in multiple repeated elements.

U.S. Open

isTBD

Optional

Boolean true/false value. A value of true should be used to indicate that, although this event is scheduled or expected to happen, some data such as the competitor details or the venue details remain to be decided.

true

callSign

Optional (repeatable)

A string sequence of letters identifying the television station, channel, or network this event is televised on.

  • CBSS

  • ESPN

  • FS2

duration

Optional

The duration of this content in seconds; Numeric integer, valid values range 1 to 86400.

1800

editType

Optional

The type of edit for the sporting event; see Sport Event Edit Type for supported values.

condensed

Sports Names and League Abbreviations

To find the supported value of a sport or league name or sport, download the CSV file.

Sample Sporting Event Item

<item contentType=“sporting_event” contentId=“e4378”><pubDate>2015-05-01T18:00:12-07:00</pubDate> <title locale="en-US">Basketball Lakers Vs. Warriors</title> <description locale="en-US">A sample sporting event.</description> <description locale="es-ES">Una muestra de evento deportivo.</description> <description locale="fr-FR" countriesRestrictedTo="FR,CA">Un exemple d’événement sportif.</description> <externalContentId catalogId="com.apple.trb.catalog">SP10028</externalContentId> <sportingEventInfo> <startDate>2017-02-07T07:00:00+06:00</startDate> <sportName>basketball</sportName> <league leagueId="8"> <abbreviation>nba</abbreviation> <name>National Basketball Association</name> </league> <sportSeason> <year>2016</year> <name>NBA 2016-2017 season</name> <name locale="fr-FR">NBA 2016-2017 saison</name> <type>post</type> </sportSeason> <venue venueId="126"> <name>Staples Center</name> <city locale="en-US">Los Angeles</city> <state>California</state> <country>US</country> </venue> <competitor competitorId="24"> <name locale="en-US">Lakers</name> <name locale="en-US" type="additional">LA Lakers</name> <homeLocation>Los Angeles</homeLocation> <abbreviation>LAL</abbreviation> <isHome>true</isHome> <isPerson>false</isPerson> </competitor> <competitor competitorId="37"> <name locale="en-US">Warriors</name> <name locale="en-US" type="additional">Golden State Warriors</name> <homeLocation>Oakland</homeLocation> <abbreviation>GSW</abbreviation> <isHome>false</isHome> <isPerson>false</isPerson> </competitor> <eventRound> <name locale="en-US">Western Conference Finals</name> <gamesInRound>7</gamesInRound> <gameNumber>3</gameNumber> </eventRound> <tournament tournamentId="t123"> <name locale=“en-US">NBA Championship</name> </tournament> <isTBD>false</isTBD> <callSign>ESPN</callSign> <callSign>ESPND</callSign> </sportingEventInfo></item>

Extra Content Type

Extra Content Type

A content item of type ‘extra’ represents extra or bonus content that is typically related to another content item such as a movie, TV show, TV season, or a TV episode. A content item is specified as an extra by setting the <contentType> to value "extra".

Extra Info Schema Definition

In addition to the attributes mentioned in the section Item Schema Definition, the content item of type extra must include data about extras in its <extraInfo> element.

The <extraInfo> element must contain the data defined in the following table in the order given.

Element of <extraInfo>

Description

Attribute

Example

type

Required

See the appendix Extra Type section

Note: This content type of Extras needs to be enabled by Apple. Contact your Apple Technical Partner before providing this content type.

  • bonus

duration

Optional

The duration of this content in seconds; Numeric integer, valid values range 1 to 86400.

1800

localAirDate

Optional (repeatable)

The date that this extra content aired in the countries specified. This is the first time this extra content aired on any partner in the countries specified. If this extra content never aired on TV, this should be the date this extra content was first available in the countries specified. This should be in YYYY-MM-DD format.

countries (required)

Attribute countries must be used to specify the countries that the air date applies to. The value of this attribute must be a comma-separated string of the 2-letter country codes as defined in the ISO 3166 International Standard. Multiple countries can be grouped together in a comma-separated value string.

<localAirDate countries="DE, FR, ES">2019-12-25 </localAirDate><localAirDate countries="IT, GB">2014-01-31</localAirDate>

studio

Optional (repeatable)

A list of studio elements each providing the name of a studio that produced this content.

1 to 255 characters in length.

Platonic Studios

network

Optional (repeatable)

Contains a name corresponding to the network airing this content.

1 to 255 characters in length.

  • BCD

  • XYZ

relatedItem

Optional (repeatable)

Specifies a related content item in the same catalog.

See Related Item Schema Definition for more details for this element.

Related Item Schema Definition

Related item schema is used to specify the details of a related content item in the same catalog.

Element of <relatedItem>

Description

Attribute

Example

Specifies the details of a related content item in the same catalog.

relatedContentType (required)

Indicates the type of the related item. See appendix Content Type for supported related content type values.

relatedContentId (required)

Defines the unique ID for the related content item in the same catalog.


1 to 255 characters in length.

<relatedItem relatedContentType="show" relatedContentId="SHOW4025"> <orderNumber>2</orderNumber> <relatedItem>

orderNumber

Optional (repeatable)

The sequential number of this related item within all other related content items. Specified as a non-negative integer value.

country (optional)

Attribute country must be used to specify the countries that the order number applies to. The value of this attribute must be a comma-separated string of the 2-letter country codes as defined in the ISO 3166 International Standard. Multiple countries can be grouped together in a comma-separated value string.

<orderNumber>1</orderNumber> <orderNumber country="US">2</orderNumber

Sample Extra Item

<item contentType="extra" contentId="B012345"> <pubDate>2015-05-01T18:00:12-07:00</pubDate> <title locale="en-US">The Extra of Extras</title> <title locale="es-ES">El Extra de Extras</title> <title locale="fr-FR" countriesRestrictedTo="FR,CA">L'extra de figurants</title> <title type="additional" locale="en-US">The Extra</title> <title locale="ja-JP" isPhonetic="false" >追加のエクストラ</title> <description locale="en-US">This is the one and only extra.</description> <description locale="es-ES">Este es el único extra.</description> <description locale="fr-FR">C'est le seul et unique extra.</description> <genre>action</genre> <rating systemCode="us-tv" value="TV-Y7" /> <advisory systemCode="us-tv">L</advisory> <advisory systemCode="us-tv">S</advisory> <advisory systemCode="us-tv">V</advisory> <credit role="actor" order="1"> <name>Ted Green</name> </credit> <credit role="actor" order="2"> <name>Jeff Brown</name> </credit> <credit role="producer"> <name>Bob Smith</name> </credit> <credit role="music"> <name>Red Blaney</name> </credit> <artwork url="https://www.acme.com/imageassets/B012345/keyframe1.jpg" type="tile_artwork" locales="en-US" /> <artwork url="https://www.acme.com/imageassets/B012345/keyframe2.jpg" type="tile_artwork" locales="fr-FR" countriesRestrictedTo="FR,CA" /> <extraInfo> <type>bonus</type> <duration>1800</duration> <localAirDate countries="US,FR,CA">2019-02-25</localAirDate> <network>ABC</network> <relatedItem relatedContentType="tv_show" relatedContentId="SHOW4025"> <orderNumber>1</orderNumber> <orderNumber country="DE">2</orderNumber> </relatedItem> </extraInfo></item>

Catalog Data Tables

Content Type

Value

Description

movie

Used for film or a motion picture.

tv_show

Used for a TV show intended for viewing on television. This covers a series that includes multiple seasons/episodes or a recurring, non-episodic TV show such as nightly news.

tv_season

Used for a TV season that is part of an episodic TV show. This is typically used to define a collection of episodes in an episodic TV show.

tv_episode

Used for a TV episode that is part of an episodic TV season and/or an episodic TV show.

sporting_event

Used for games (or matches) associated with a specific governing body typically a league.

extra

Used for bonus, preview or promotional content that can be standalone, but is typically related to another content item such as a movie, TV show, TV season, or a TV episode.

Movie Version

Value

Description

standard

The standard (original/theatrical) version of the movie

unrated

An unrated version of the movie

rated

A rated version of the movie

uncut

An uncut version of the movie

directors_cut

A director’s cut of the movie

extended

An extended version of the movie

remastered

A remastered version of the movie

special_edition

A special edition of the movie

alternate_ending

An alternate ending version of the movie

alternate_cut

An alternate cut version of the movie

edited_for_tv

An Edited for TV version of the movie

Movie Type

Value

Description

feature

A typical feature-length movie

tv_movie

A made-for-TV movie

short

A short-format movie

TV Show Type

Value

Description

series

This is the most common show type with episodes grouped into multiple seasons and ordered by episode numbers. This is typically for shows meant to be viewed in a sequence of episodes across multiple seasons and not at random.

miniseries

This show type contains a limited number of episodes ordered by episode number and not grouped into seasons. This is typically for shows with few episodes meant to be viewed in a sequence.

seasonless

This show type contains episodes that do not need to be ordered by episode number and are not grouped into seasons. This is typically for shows not meant to be viewed in a sequence, such as nightly news and daily sport recaps.

TV Episode Type

Value

Description

standard

One full episode

Extra Type

Value

Description

bonus

Bonus Content

sizzle

A sizzle contains montage, clip-based, or segment footage (or a combination thereof) that clearly and efficiently outlines the concept of a content.

preview

A preview contains montage, clip-based, or segment footage (or a combination thereof) that is an official advertisement for related content. It is made up of footage from the related content.

promotional

A promotional extra contains montage, clip-based, or segment footage (or a combination thereof) that is intended to promote the related content. It is made up of footage that is independent from the related content and may also include footage from the related content.

Note: This content needs to be exclusively featured. Contact your Apple Technical Partner before providing content of this type.

featured_promo

A bespoke video intended to promote the related content or a bespoke video that can be used as stand-alone content.

Note: This content needs to be exclusively featured. Contact your Apple Technical Partner before providing content of this type.

press_conference

A video in which notable individuals or organizations officially distribute information or answer questions from journalists.

interview

A video of a structured conversation where one participant asks questions, and the other provides answers. It is typically a face-to-face conversation between the interviewer and the interviewee.

notable_moment

A video of important and deserving occurrences from the related content. This is typically an outstanding part of an event like a sporting event.

key_play

A video containing the most important and exciting parts of a an event like a sporting event.

Title Type

Value

Description

additional

Type used to designate secondary titles.

descriptive

Type used to designate distinct descriptive, market-facing titles.

Note: Titles of this type are not supported for all content types. Contact your Apple Technical Partner for more details.

original

Type used to indicate the title of the content in the country and language where it was first released or produced.

Credited Role

Value

Description

actor

Actor

director

Director

writer

Writer

producer

Producer

creator

Creator

voice

Voice

narrator

Narrator

guest_star

Guest Star

guest

Guest

host

Host

anchor

Anchor

music

Music

executive_producer

Executive Producer

executive_in_charge

Executive in Charge (EIC)

head_writer

Head Writer

editor

Editor

performer

Performer

self

Self

advisor

Advisor

cast

Cast

songwriter

Songwriter

other

Other

Artwork Asset Type

Value

Description

cover_artwork_square

Square Cover Artwork*

Applies to TV Show, TV Season

cover_artwork_vertical

Poster Cover Artwork*

Applies to Movie, TV Show, TV Season

cover_artwork_horizontal

Banner Cover Artwork*

Applies to Movie, TV Show, TV Season

tile_artwork

Preview Frame/Keyframe*

Applies to Movie, TV Show, TV Episode, Sporting Event, Extra

centered_background

Centered Background artwork*

Applies to Movie, TV Show, TV Season

centered_background_small

Small Centered Background Artwork*

Applies to Movie, TV Show, TV Season

content_logo_monochromatic

Content Branding Logo Artwork in white*

Applies to Movie, TV Show, TV Season

content_logo_polychromatic

Content Branding Logo Artwork in branded content title colors*

Applies to Movie, TV Show, TV Season

* Refer to UMC Standards and Style Guide for Universal Search and the Art Specifications documentation for exact formats and dimensions per content type.

Genre

Value

Description

action

Action

adventure

Adventure

animation

Animation

anime

Anime

biography

Biography

bollywood

Bollywood

classics

Classics

comedy

Comedy

crime

Crime

documentary

Documentary

drama

Drama

educational

Educational

fantasy

Fantasy

game_show

Game Show

history

History

holiday

Holiday

horror

Horror

independent

Independent

interview

Interview

kids_and_family

Kids & Family

lgbtq

LGBTQ

music

Music

musical

Musical

mystery

Mystery

news

News

novelas

Novelas

reality

Reality

romance

Romance

sci_fi

Sci-Fi

short_films

Short Films

special_interest

Special Interest

sports

Sports

talk_show

Talk Show

teens

Teens

thriller

Thriller

travel

Travel

variety

Variety

war

War

western

Western

External Catalog

Value

Description

com.apple.trb.catalog

Tribune Media Services (TMS) catalog

com.apple.its.catalog

Apple TV app Transactional catalog

com.apple.fbk.catalog

Facebook catalog

com.apple.twi.catalog

Twitter catalog

com.apple.igr.catalog

Instagram catalog

com.apple.wik.catalog

Wikipedia catalog

com.apple.isn.catalog

International Standard Audiovisual Number (ISAN) catalog

com.apple.eir.catalog

Entertainment Identifier Registry (EIDR) catalog

com.apple.imdb.catalog

IMDB catalog

Sport Season Type

Value

Description

regular

Indicates that the associated event is a regular season event.

pre

Indicates that the associated event is a preseason event.

post

Indicates that the associated event is a postseason or a playoff event. This is typically used with playoff games and conference tournaments.

special

Indicates that the associated event is a special event such as an all-star game.

Sport Event Status

Value

Description

canceled

Indicates that the associated event has been canceled.

not-necessary

Indicates that the associated event is no longer necessary.

delayed

Indicates that the associated event has been delayed.

Sport Event Edit Type

Value

Description

full

Indicates that the sporting event is the complete event.

condensed

Indicates that the sporting event is a shortened coverage of the event.

Additional Item Information Type

Value

Description

rating_classification_number

Used to specify the rating classification number supplied by the ratings and/or advisory board.

Note: Only one rating classification number per content item is supported. Locale and/or country should not be provided for this type.

Release Date Type

Value

Description

theatrical

Indicates the date content is made available for public viewing in theaters.

digital

Indicates the date content is made available for public viewing in streaming services.

physical

Indicates the date content is made available for public viewing on physical media such as DVD, Blu-Ray, etc.

festival

Indicates the date content is made available for public viewing in a film or TV festival.

Content Advisories and Ratings

Content Advisories Addendum

The UMC Content Advisories Addendum provides the advisories for use with UMC content submitted. Advisory code descriptions explain why content is regionally rated.

Export and download the .csv here.

Content Ratings Addendum

The UMC Content Ratings Addendum provides the ratings for use with UMC content you submit. It is divided into two sections: ratings organized by rating organizations and ratings organized by country.

Export and download the .csv here.

Catalog Specification Revision History

Date

Version

Notes

1-16-25

3.6.9

  • Updated applicable catalog item types for artwork type cover_artwork_vertical to include TV shows and seasons.

3-18-24

3.6.7

  • Added a new field to allow specifying the primary locale for a catalog item.

11-29-23

3.6.6

  • Added the option to provide IMDB identifiers as external IDs.

8-15-23

3.6.5

  • Added new title type (‘original’).

  • Added a new type of Extra to support press conferences, interviews, notable moments and key plays.

  • Added a new field to support duration for sporting events.

  • Added a new field to support different edit types for sporting events - full and condensed.

2-27-23

3.6.5

  • Added a new type of Extra to support featured promotional content.

  • Added a new role (‘songwriter’) to the credits schema.

11-10-21

3.6.4

  • Added verbiage to indicate that genres are ordered.

  • Added verbiage to indicate that new artwork URLs need not be provided if artwork URLs support specific HTTP headers - ‘ETag’ and/or ‘Last-Modified’.

05-19-21

3.6.3

  • Added support to provide severity level for content advisories.

  • Updated samples to remove locales for “tile_artwork”.

11-18-20

3.6.2

  • Added support to provide expected last episode number for seasons.

  • Added support to provide rating classification number.

  • Added a new genre “interview” to the genre dictionary.

06-10-20

3.6.1

  • Added support for extra content of type "Preview" and "Promotional"

  • Added support for providing different order per country for related items in content of type "Extra".

  • Added support to provide multiple production countries for all content types and not just limited to movies and shows.

  • Added support to provide multiple countries of origin for all content types.

  • Added support for decimal episode numbers.

  • Added support to provide multiple copyright lines for all content types.

  • Added EIDR as another external catalog identifier.

  • Updated verbiage for original spoken locales to reflect that this should be an ordered collection.

  • Update verbiage for content ratings and advisories to indicate that they are required for certain geographic regions.

  • Added a new title type that can be used to represent descriptive, marketing titles for catalog items.

  • Added a new genre "variety" to the genre dictionary.

01-07-20

3.6.0

  • Content ratings data field changed to allow for content rating reasons.

  • New attribute added to indicate type of release dates.

  • Added new roles for credits - Guest, Performer, Self, Advisor, Cast.

  • Added ISAN as another external catalog identifier.

03-05-19

3.5.5

  • New field “originalSpokenLocale” added to the catalog item.

  • New content type "Extra" added.

  • Artwork type dictionary extended to include additional image type - “centered_background_small”.

  • Verbiage to provide more guidance for cast in character images added.

  • Verbiage for artwork type requirements based on content type updated.

  • Genre “LGBT” was updated to be “LGBTQ”.

10-03-18

3.5.0

  • Changed verbiage for introduction to spec and to Team ID requirements.

  • Artwork type dictionary extended to include additional image types - “cover_artwork_horizontal”, “centered_background”, “content_logo_monochromatic” and “content_logo_polychromatic”.

  • Genres’ dictionary extended to include more values such as “travel”, “novelas”, etc.

  • Credited roles’ dictionary extended to include more values such as “writer”, “executive producer”, etc.

  • Credit’s schema changed to include additional details such as date of birth, external IDs, character images.

  • Added event status “delayed” for sporting events.

  • Removed special events as they are not currently supported.

11-10-17

3.0.7

  • Unsupported feature description added to special events.

10-12-17

3.0.6

  • Reformatted

  • Changed verbiage of league abbreviation to include tournaments.

  • Changed requirements for sporting events to require at least one of venue and competitors.

  • Changed requirements for competitors to require a minimum of two competitors and the ‘isPerson’ element is now optional for competitors.

  • Changed artwork requirements for sporting events and special events.

06-20-17

3.0.5

  • Added a repeatable field ‘callSign’ to sporting events.

  • Changed verbiage for ‘originalReleaseDate’.

  • Changed verbiage for ‘sportName’ to account for the sub-sport (if any).

06-12-17

3.0.4

  • Added additional content types: sporting events and special events.

  • Added different types of TV shows: series, miniseries, and seasonless.

UMC Availability Data Interface Specifications 3.6

Getting Started

Apple’s video content platform supports content programming using the Universal Media Catalog (UMC). The availability data for content is delivered to Apple’s video content platform through the UMC Data Ingest Service.

As a video service provider, you can implement the UMC Availability Data Interface to enable discovery and consumption of your content through various Apple experiences such the Apple TV app, Universal Search, and Apple Subscription Video. This allows Apple to know when, how, and where your content can be played.

This document describes and defines the requirements for specifying availability for content in the UMC Catalog through the UMC Data Ingest Service. For more information on the UMC Catalog, see UMC Catalog Data Interface Specification.

Important Tasks

The main tasks to prepare availability data for ingestion are:

  • Ensure your Team ID is registered with Apple. For Apple Subscription Video services, the Team ID will be identical to the provider short name. If the Team ID is not known or not yet registered, contact your Apple Technical Partner Representative.

  • Ensure your service ID is registered with Apple. If your service ID is not known or not yet registered, contact your Apple Technical Partner Representative.

  • Ensure the content items referenced in the availability data are provided through the UMC Catalog Data Interface Specification feed.

  • Implement the availability feed with the data requirements described in this document.

  • Provide Apple with the HTTPS endpoint information for your availability data feed.

Note: This document provides the ability to describe and define content availability using various offers and restrictions. Not all features are currently supported. Refer to Unsupported Features for more details.

Overview of Availability Data

Availability of your service and its content is described using offers, locators, playable properties, and restrictions.

Availability data are described using:

  • Offers: Describe when and how content is available.

  • Restrictions: Define any limitations for a given offer.

  • Locators: Specify where content can be opened or played.

  • Playable properties: Specify the accessibility and quality settings for content.

Service availability data will be delivered using a structured XML feed published at the predefined endpoint and complying with the schema and requirements defined below.

Feed Requirements

  • The feed must be published at the predefined HTTPS endpoint as provided to Apple. This endpoint will be periodically accessed by UMC Data Ingest Service.

    Note: To ensure security, the endpoint must support the HTTPS protocol using a certificate issued by a well-known certificate authority. For further security, you may limit endpoint access by IP range, use HTTP authentication, or force client-based certificate authentication.

  • The feed must meet the data constraints defined in this document.

  • The feed must adhere to the schema (hierarchy and order) defined in this document.

  • The feed must always reflect the current availability data for content offered as part of this service.

Feed Data Constraints

The feed must contain content items for all available content in the service. A content item, identified by a content ID and a catalog ID, must be unique and appear only once in the feed. All availability data for a given content item must be consolidated and provided under a single element. This data will replace any previously provided availability data for this content item in this service.

Feed data constraints differ depending on whether it is a VOD or linear service.

For VOD services, every published update must include the following items:

  • All items currently available in this service.

  • All items that will become available within 48 hours following the feed’s publish time.

    Note: For Apple Subscription Video service, feed must include all items that will become available within seven days following the feed’s publish time.

  • All items that expired 48 hours before the feed’s publish time.

For linear services, every published update must include availability data for the following items:

  • All items scheduled for the next 14 days following the feed’s publish time.

  • All items scheduled 24 hours prior to the feed’s publish time.

Note: Expiration of an availability window for an offer requires special care. It must be communicated in the XML feed by explicitly publishing the expiration in the feed at least 48 hours before the scheduled expiration. Removal of an availability item from the availability feed does not guarantee that the item’s offer will be expired.

Types of Services

VOD

A service of type VOD is used to provide availability for content in which the offer windows are not necessarily programmed in a back-to-back schedule. A VOD service typically allows users to select and watch video content on demand, rather than having to watch at a specific broadcast time.

A VOD service can further be classified as an Apple Subscription Video service, where the video content is delivered to Apple using the Subscription Video Assets Specification.

Types of content supported: TV shows, movies, and event-based sporting events

Linear

A service of type linear is used to provide availability for content in which the offer windows are typically programmed back-to-back on a continuous schedule. Play (tune-in) locators are typically provided on the service level and shared by all content items and offers under the service.

Each availability service must be pre-registered with Apple, providing the service identifier (service ID) and your team identifier (Team ID). Each content item in a service is identified by its content identifier (content ID) and catalog identifier (catalog ID).

Types of content supported: Live sporting events on a 24/7 linear channel

VOD Service XML Feed Elements

The XML feed for a VOD service must conform to the following schema in the order given.

The root element of the XML feed is <umcAvailability>. It contains one attribute, version, and the following elements:

  • lastBuildDate

  • link

  • <service>

Element of <umcAvailability>

Sub-Element

Description

Attribute

Required

<umcAvailability> is the root element and has one attribute, version.

version (required)

Indicate the feed specification version that this feed conforms to (value should be “3.6” for this specification)

lastBuildDate

Required

Feed build date.
 YYYY-MM-DDThh:mm:ss.sTZD

ISO 8601 Format

link

Optional

Indicates next page URL for paginated response.

Feed assumed complete or “not paginated” when missing.

rel (required)

When included with attribute rel=“next”, the value "next" is used to indicate that this link is for the next page in a paginated feed.

<service>

Required

Describes a single service’s availability.

teamId (required)

Your Team ID as registered with Apple.

serviceId (required)

Unique service identifier (as identified during Apple service registration).

serviceType

Required

Type of service. Set to “vod”.

isAppleSubscription (optional)

Set this attribute to “true” if this is an Apple Subscription Video service, where the video content is delivered to Apple using the “Subscription Video Assets Specification.”

default=false.

totalItemCount

Required

The total number of <item> elements published in this feed across all pages.

<serviceOffers

Optional

Describes this service’s offers.

Refer to Service Offers Schema Definition.

Note: If no service offers are provided, content items availability will be based solely on the item offers.

<item>

Optional (repeatable)

Describes a single content item's availability.

Refer to VOD Service Item Schema Definition.

Linear Service XML Feed Elements

Elements of the Linear Service XML Feed

The XML feed for a linear service must conform to the following schema in the order given.

The root element of the XML feed is <umcAvailability>. It contains one attribute, version, and the following elements:

  • lastBuildDate

  • link

  • <service>

Element of <umcAvailability>

Sub-Element

Description

Attribute

Required

<umcAvailability> is the root element and has one attribute, version.

version (required)

Indicate the feed specification version that this feed conforms to (value should be “3.5” for this specification)

lastBuildDate

Required

Feed build date.
 YYYY-MM-DDThh:mm:ss.sTZD

ISO 8601 Format

link

Optional

Indicates next page URL for paginated response.

Feed assumed complete or “not paginated” when missing.

rel (required)

When included with attribute rel=“next”, the value "next" is used to indicate that this link is for the next page in a paginated feed.

<service>

Required

Describes a single service’s availability.

teamId (required)

Your Team ID as registered with Apple.

serviceId (required)

Unique service identifier (as identified during Apple service registration).

serviceType

Required

Type of service. Set to “linear”.

totalItemCount

Required

The total number of <item> elements published in this feed across all pages.

<locators>

Optional

Describes this service’s locators.

Refer to Locators Schema Definition.

<playableProperties>

Optional

Describes this service’s playable properties.

Refer to Playable Properties Schema Definition.

<serviceOffers>

Optional

Describes this service’s offers.

Refer to Service Offers Schema Definition.

Note: If no service offers are provided, the service along with items in the service will not be available for search.

<item>

Optional (repeatable)

Describes this service’s playable properties.

Refer to Linear Service Item Schema Definition.

Schema Definitions

Linear Service Item Schema Definition

Parent: <service> (required)

Describes a single item’s availability in a linear service.

Element of <umcAvailability>

Sub-Element

Description

Attribute

<item>

Optional (repeatable)

Describes a single content item's availability.

content type (required)

Indicates the type of this item. See Content Type for supported content type values.

contentId (required)

Identifies the content for this item from the content catalog.

catalogId (required) Indicates the catalog source for this item contentId. The catalogId provided must match the catalogId as provided in the catalog data feed or an external Apple-registered catalog identifier (see External Catalogs for supported catalogs).

pubDate

Required

Last modified date for this item data.
 YYYY-MM-DDThh:mm:ss.sTZD

ISO 8601 Format

<locators>

Optional

Describes this item’s locators.

Refer to Locators Schema Definition.

* Not applicable for Apple Subscription Video service items (isAppleSubscription=“true ”).

<playableProperties>

Optional

Describes this item’s playable properties.

Refer to Playable Properties Schema Definition.

* Not applicable for content of type tv_show and tv_season.

<linearOffers>

Optional

Describes this item’s offers.

Refer to Linear Offers Schema Definition.

* Not applicable for content of type tv_show and tv_season.

Note: If no offers are provided, the item will not be available for search under this service.

Linear Offers Schema Definition

Linear offers are used to describe the offering time window and restrictions for content offered in a linear service. For more information on restrictions, see Restrictions Schema Definition.

Parent: <linearOffers> (optional)

Describes one or more offers for items under linear service.

Element of <linearOffers>

Sub-Element

Description

<linearOffer>

Required

(repeatable)

Describes a single offer.

windowStart

Required

Availability start date.
 YYYY-MM-DDThh:mm:ss.sTZD

ISO 8601 Format

windowEnd

Required

Availability end date.
 YYYY-MM-DDThh:mm:ss.sTZD

ISO 8601 Format

Note: When the windowEnd date is unknown, the default value of “2255-01-01T00:00:00Z” should be used.

isLive

Optional

Indicates if this offer is for the live coverage of an event where the content is available to watch at the time of occurrence, not from a recording. For example: live coverage of sporting events, live news, or live coverage of award shows.

default=false.

<restrictions>

Optional

Defines this offer’s restrictions.

Refer to Restrictions Schema Definition.

Locators Schema Definition

Locators are used to open or play content on a client’s device (platform).

Note: Typically, you would set service-level locators for a linear service, whereas for a VOD service, you would set locators for each content item.

Parent: <locators> (optional)

Describes one or more locators.

Element of <locators>

Description

Attribute

<locator>

* Required

(repeatable)

Describes a single locator.

platform (required)

Indicates the locator target platform. See appendix Locator Platform Type section for supported types.

action (required)

Indicates the locator action where:

  • “open” directs the user to a landing page for this item.

  • “play” directs the user to an immediate video play of this item.

See appendix Locator Action Type for more information.

Note: For TV shows and TV seasons, if your application does not record the user’s play history and cannot detect the next unwatched TV episode, the “play” locator action should be omitted.

Note: Locators of type “play” are usually not necessary for items under linear service (serviceType=“linear”) where the service play locators will be used to play content.

url (required)

Specifies the direct URL for the platform and action described by this locator.

Playable Properties Schema Definition

Playable properties specify the accessibility and quality settings for content.

Note: Playable properties are not applicable to TV shows or TV seasons.

Parent: <playableProperties> (optional)

Describes the playable asset properties.

Element of <playableProperties>

Sub-Element

Description

Attribute

<audioLocale>

Required

(repeated)

A locale for an audio track.

Note: One and only one locale should be indicated as primary to indicate the primary audio track for this content.

value (required)

The locale value for audio track, in BCP-47 format.

isPrimary (optional)

Indicates that this locale is the primary audio track.

default=false.

audioFormat

Optional

(repeated)

Audio format available for audio tracks in this locale. If you are providing audio formats, it is strongly recommended to provide primary locale. See Audio Format Type in the appendix.

<timedTextLocaleCollection>

Optional

A list of timed text locales available for specified types.

timedTextLocale

Required

(repeated)

A locale available for specified types. See Timed Text Locale Schema Definition for more details.

value (required)

The locale value in BCP-47 format.

timedTextLocaleTypesToIgnore

Optional

(repeated)

Indicates the types of timed text locale to ignore. See Timed Text Locale Types for supported type values.

<audioDescriptionLocale>

Optional

A locale for Audio Description (also known as DVS) data.

Note: Specifying a primary audio description locale is optional. If primary locale is indicated then only one locale should be marked as the primary audio description for this content.

value (required)

The locale value for Audio Description, in BCP-47 format.

isPrimary (optional)

Indicates that this locale is the primary audio track.

default=false.

audioFormat

Optional

(repeated)

Audio format available for audio descriptions in this locale. See Audio Format Type in the appendix.

<videoQuality>

Optional

The quality of the video. See Video Quality Type in the appendix.

<videoColorRange>

Optional

The color range (HDR) of the video.

See Video Color Range Type in the appendix.

<visualDepth>

Optionalrepeated

The visual depth of the video.

See Visual Depth in the appendix.

Restrictions Schema Definition

Restrictions can be placed on an offer to allow or deny access to content or a service based on a client’s device, geographical location, subscription tier, or billing address.

Note: Offer restrictions must not include any mixed relationship (deny and allow) for the same restriction type.

Parent: <restrictions> (optional)

Describes one or more offer restrictions.

Element of <restrictions>

Description

Attribute

<restriction>

Optional

(repeatable)

Defines an offer restrictions.

Multiple restrictions may be provided as repeatable elements.

Note: Offer restrictions must not include mixed relationship (deny and allow) for the same restriction type.

relationship (required)

Indicates the restriction relationship. Possible values are “allow” and “deny”.

type (required)

Indicates the type of the restriction. Possible values are device, tier, device_location, billing_identifier, and content_download.

See appendix Restriction Type for more information.

Service Offers Schema Definition

Service offers are used to describe the type of offering (for example, free or subscription) along with the offering time window and restrictions for a linear service. For more information on restrictions, see Restrictions Schema Definition.

Parent: <serviceOffers> (optional)

Describes one or more service offers.

Element of <serviceOffers>

Sub-Element

Description

<serviceOffer>

Required

(repeatable)

Describes a single service offer.

offeringType

Required

The type of offering for this offer.

See appendix section Offering Type.

windowStart

Required

Availability start date.
 YYYY-MM-DDThh:mm:ss.sTZD

ISO 8601 Format

windowEnd

Required

Availability end date.
 YYYY-MM-DDThh:mm:ss.sTZD

ISO 8601 Format

Note: When the windowEnd date is unknown, the default value of “2255-01-01T00:00:00Z” should be used.

<restrictions>

Optional

Defines this offer’s restrictions.

Refer to Restrictions Schema Definition.

Timed Text Locale Schema Definition

Timed text locales are used to specify the locales available for different types such as subtitles, closed captioning, etc.

Element of <timedTextLocale>

Description

Attribute

<type>

Required

(repeated)

Indicates the type of this timed text locale. See Timed Text Locale Types for supported type values.

VOD Offers Schema Definition

VOD offers are used to describe the type of offering (for example, free or subscription) along with the offering time window and restrictions for content offered in a VOD service. For more information on restrictions, see Restrictions Schema Definition.

Note: VOD offers are only applicable to TV episodes and movies. For TV shows, VOD offers are applicable with the offeringType coming_soon.

Parent: <offers> (optional)

Describes one or more offers.

Element of <offers>

Sub-Element

Description

Attribute

<offer>

Required

(repeatable)

Describes a single offer.

offeringType

Required

The type of offering for this offer.

See appendix section Offering Type.

windowStart

Required

Availability start date.
 YYYY-MM-DDThh:mm:ss.sTZD

ISO 8601 Format

windowEnd

Required

Availability end date.
 YYYY-MM-DDThh:mm:ss.sTZD

ISO 8601 Format

Note: When the windowEnd date is unknown, the default value of “2255-01-01T00:00:00Z” should be used.

isLive

Optional

Indicates if this offer is for the live coverage of an event where the content is available to watch at the time of occurrence, not from a recording. For example: live coverage of sporting events, live news, or live coverage of award shows.

default=false.

isBroadcast

Optional

Indicates if this offer is available as broadcast, where the window is open only while the content is streamed. Typically a single video stream is available at the same time to all viewers. For example: all live (isLive=true) or event-based offers under VOD services.

default=false.

Note: Not applicable for linear services where isBroadcast=true is assumed.

announceDate

Optional

Date when the content can be announced to be coming soon. YYYY-MM-DDThh:mm:ss.sTZD

ISO 8601 Format

Note: Announce date needs to be exclusively featured. Contact your Apple Technical Partner before providing announce date.

<restrictions>

Optional

Defines this offer’s restrictions.

Refer to Restrictions Schema Definition.

VOD Service Item Schema Definition

Parent: <service> (required)

Describes a single item’s availability in a VOD service.

Element of <service>

Sub-Element

Description

Attribute

<item>

Optional (repeatable)

Describes a single content item's availability.

contentType (required)

Indicates the type of this item. See appendix Content Type for supported content type values.

contentId (required)

Identifies the content for this item from the content catalog. This ID must be case sensitive.

catalogId (required)

Indicates the catalog source for this item contentId. The catalogId provided must match the catalogId as provided in the catalog data feed or an external Apple-registered catalog identifier (see appendix External Catalogfor supported catalogs).

variantId (optional)
 *Required for Apple Subscription Video services (isAppleSubscription=“true”). This ID must be case sensitive.

Indicates the version of the video content that this item should be associated with. For example, the variant ID may be different for the same video content with different playable properties. When the variantId is unknown, the value of “1” should be used.

Note: Multiple variants of a content item (identified by the contentId and catalogId) must not be made available at the same time.

pubDate

Required

Last modified date for this item data.
 YYYY-MM-DDThh:mm:ss.sTZD

ISO 8601 Format

<locators>

Optional

Describes this item’s locators.


Refer to Locators Schema Definition.

* Not Applicable for Apple Subscription Video service items (isAppleSubscription=“true ”).

<playableProperties>

Optional

Describes this item’s playable properties. Refer to Playable Properties Schema Definition.

* Not Applicable for content of type tv_show and tv_season.

<offers>

Optional

Describes this item’s offers.
 Refer to VOD Offers Schema Definition.

For content of type tv_show and tv_season, only offers with offering type coming_soon are permitted.

Note: If no offers are provided, the item will not be available for search under this service.

Note: Only applicable for Apple Subscription Video services (isAppleSubscription=“true”). Contact your Apple Technical Partner Representative for more information.

Sample XML Availability Feeds

Apple Subscription Video Service Availability Sample Feed

<?xml version="1.0" encoding=“UTF-8"?> <umcAvailability version="3.5" xmlns:umc="http://www.tbd.com/spec/umc-avail/"> <lastBuildDate>2018-08-07T10:00:14+01:00</lastBuildDate> <link rel="next" href="https://api.acme.net/availability/endpoint?page=2"/> <service teamId="VT6C486PNU" serviceId="com.acme.service.asv1" > <serviceType isAppleSubscription="true">vod</serviceType> <totalItemCount>2</totalItemCount> <!-- movie availability with one offer --> <item contentType="movie" contentId="MOV10093961" catalogId="com.catalog.acme" variantId="1"> <pubDate>2018-08-07T09:53:33+01:00</pubDate> <playableProperties> <audioLocale value="en-US" isPrimary="true"> <audioFormat>DD5.1</audioFormat> <audioFormat>DD7.1</audioFormat> <audioFormat>AAC</audioFormat> </audioLocale> <audioLocale value="fr-FR" /> <timedTextLocale value="en-US"> <type>closed_captioning</type> <type>subtitles</type> <type>sdh</type> </timedTextLocale> <timedTextLocale value="fr-CA"> <type>closed_captioning</type> <type>burned_in_subtitles</type> </timedTextLocale> <timedTextLocale value="fr-FR"> <type>closed_captioning</type> </timedTextLocale> <audioDescriptionLocale value="en-US"> <audioFormat>ATMOS</audioFormat> </audioDescriptionLocale> <videoQuality>hd</videoQuality> </playableProperties> <offers> <!-- subscription offer with tier and content_download restrictions --> <offer> <offeringType>subscription</offeringType> <windowStart>2018-09-01T02:00:00+01:00</windowStart> <windowEnd>2019-09-30T02:00:00+01:00</windowEnd> <restrictions> <restriction type="content_download" relationship="deny" /> </restrictions> </offer> </offers> </item> <!-- tv episode availability with multiple offers --> <item contentType="tv_episode" contentId="EPI10054611" catalogId="com.catalog.acme" variantId="VAR_11"> <pubDate>2018-08-07T09:51:33+01:00</pubDate> <playableProperties> <audioLocale value="en-US" isPrimary="true"> <audioFormat>DD5.1</audioFormat> <audioFormat>DD7.1</audioFormat> <audioFormat>AAC</audioFormat> </audioLocale> <audioLocale value="fr-FR" /> <timedTextLocale value="en-US"> <type>closed_captioning</type> <type>subtitles</type> <type>sdh</type> </timedTextLocale> <timedTextLocale value="fr-CA"> <type>closed_captioning</type> <type>burned_in_subtitles</type> </timedTextLocale> <timedTextLocale value="fr-FR"> <type>closed_captioning</type> </timedTextLocale> <audioDescriptionLocale value="en-US"> <audioFormat>ATMOS</audioFormat> </audioDescriptionLocale> <videoQuality>uhd</videoQuality> </playableProperties> <offers> <!-- subscription offer --> <offer> <offeringType>subscription</offeringType> <windowStart>2018-06-30T10:00:00+01:00</windowStart> <windowEnd>2019-10-13T10:00:00+01:00</windowEnd> </offer> <!-- free offer --> <offer> <offeringType>free</offeringType> <windowStart>2018-09-15T10:00:00+01:00</windowStart> <windowEnd>2018-09-30T10:00:00+01:00</windowEnd> </offer> </offers> </item> </service></umcAvailability>

Linear Service Availability Sample Feed

<?xml version="1.0" encoding="UTF-8"?><umcAvailability version="3.5" xmlns:umc="http://www.tbd.com/spec/umc-avail/"> <lastBuildDate>2016-06-30T10:00:14+01:00</lastBuildDate> <link rel="next" href="https://api.acme.net/availability/endpoint?page=2"/> <service teamId="VT6C486PNU" serviceId="com.acme.service.linear" > <serviceType>linear</serviceType> <totalItemCount>3</totalItemCount> <!-- locators for playing the linear service stream and opening the channel page --> <locators> <locator platform="web" action="open" url="http://www.acme.com/open/channel11"/> <locator platform="web" action="play" url="http://www.acme.com/play/channel11"/> <locator platform="atv" action="open" url="myATVApp://media/open/channel11"/> <locator platform="atv" action="play" url="myATVApp://media/play/channel11"/> <locator platform="ios" action="open" url="myApp://media/open/channel11"/> <locator platform="ios" action="play" url="myApp://media/play/channel11"/> </locators> <!-- service stream playable properties --> <playableProperties> <audioLocale value="en-US" isPrimary="true"> <audioFormat>DD5.1</audioFormat> <audioFormat>AAC</audioFormat> </audioLocale> <audioLocale value="fr-FR" /> <timedTextLocale value="en-US"> <type>closed_captioning</type> </timedTextLocale> <audioDescriptionLocale value="en-US"> <audioFormat>ATMOS</audioFormat> </audioDescriptionLocale> <videoQuality>hd</videoQuality> <videoColorRange>hdr</videoColorRange> </playableProperties> <!-- service offers restricted to a specific DMA and a specific subscription tier --> <serviceOffers> <serviceOffer> <offeringType>subscription</offeringType> <windowStart>2016-08-30T10:00:00+01:00</windowStart> <windowEnd>2017-12-15T10:00:00+01:00</windowEnd> <restrictions> <restriction type="device_location" relationship="allow">gra.apple.nielsendma. 807</restriction> <restriction type="tier" relationship="allow">sports-package-12</restriction> </restrictions> </serviceOffer> </serviceOffers> <!-- sporting event availability with a single offer --> <item contentType="sporting_event" contentId="SPO10084728" catalogId="com.catalog.acme"> <pubDate>2016-06-30T09:12:22+01:00</pubDate> <linearOffers> <linearOffer> <windowStart>2016-09-22T18:00:00-08:00</windowStart> <windowEnd>2016-09-22T19:30:00-08:00</windowEnd> </linearOffer> </linearOffers> </item> <!-- live sporting event with geo restrictions --> <item contentType="sporting_event" contentId="SPO1092345" catalogId="com.catalog.acme"> <pubDate>2016-06-29T11:40:03+01:00</pubDate> <locators> <locator platform="web" action="open" url="http://www.acme.com/open/SPO1092345"/> <locator platform="atv" action="open" url="myATVApp://media/open/SPO1092345"/> <locator platform="ios" action="open" url="myApp://media/open/SPO1092345"/> </locators> <linearOffers> <!-- subscription offer with geo restrictions --> <linearOffer> <windowStart>2016-09-22T19:30:00-08:00</windowStart> <windowEnd>2017-09-22T22:00:00-08:00</windowEnd> <isLive>true</isLive> <restrictions> <restriction type="device_location" relationship="deny">gra.apple.uszip.94087</restriction> </restrictions> </linearOffer> </linearOffers> </item> <!-- sporting event availability with multiple offers and playable properties --> <item contentType="sporting_event" contentId="SPO10054611" catalogId="com.catalog.acme"> <pubDate>2016-06-29T10:13:10+01:00</pubDate> <locators> <locator platform="web" action="open" url="http://www.acme.com/open/10054611"/> <locator platform="atv" action="open" url="myATVApp://media/open/10054611"/> <locator platform="ios" action="open" url="myApp://media/open/10054611"/> </locators> <playableProperties> <audioLocale value="fr-FR" /> <timedTextLocale value="fr-CA"> <type>closed_captioning</type> <type>subtitles</type> </timedTextLocale> <timedTextLocale value="fr-FR"> <type>closed_captioning</type> <type>subtitles</type> </timedTextLocale> </playableProperties> <linearOffers> <!-- offer with no restrictions --> <linearOffer> <windowStart>2016-09-22T22:00:00-08:00/windowStart> <windowEnd>2016-09-22T22:30:00-08:00</windowEnd> </linearOffer> <!-- offer with device restrictions --> <linearOffer> <windowStart>2016-09-23T14:30:00-08:00</windowStart> <windowEnd>2016-09-23T15:00:00-08:00</windowEnd> <restrictions> <restriction type="device" relationship="allow">iphone</restriction> <restriction type="device" relationship="allow">atv</restriction> </restrictions> </linearOffer> </linearOffers> </item> </service></umcAvailability>

VOD Service Availability Sample Feed

<?xml version="1.0" encoding="UTF-8"?><umcAvailability version="3.5" xmlns:umc="http://www.tbd.com/spec/umc-avail/"> <lastBuildDate>2016-06-30T10:00:14+01:00</lastBuildDate> <link rel="next" href="https://api.acme.net/availability/endpoint?page=2"/> <service teamId="VT6C486PNU" serviceId="com.acme.service.nonlinear" > <serviceType>vod</serviceType> <totalItemCount>6</totalItemCount> <!-- movie availability with a single offer --> <item contentType="movie" contentId="MOV10084728" catalogId="com.catalog.acme"> <pubDate>2016-06-30T09:12:22+01:00</pubDate> <locators> <locator platform="web" action="open" url="http://www.acme.com/open/10084728"/> <locator platform="web" action="play" url="http://www.acme.com/play/10084728"/> <locator platform="atv" action="open" url="myATVApp://media/open/10084728"/> <locator platform="atv" action="play" url="myATVApp://media/play/10084728"/> <locator platform="ios" action="open" url="myApp://media/open/10084728"/> <locator platform="ios" action="play" url="myApp://media/play/10084728"/> </locators> <playableProperties> <audioLocale value="en-US" isPrimary="true"> <audioFormat>DD5.1</audioFormat> <audioFormat>AAC</audioFormat> </audioLocale> <audioLocale value="fr-FR" /> <timedTextLocale value="fr-CA"> <type>closed_captioning</type> <type>subtitles</type> <type>sdh</type> <type>burned_in_subtitles</type> </timedTextLocale> <timedTextLocale value="fr-FR"> <type>closed_captioning</type> <type>subtitles</type> <type>sdh</type> <type>burned_in_subtitles</type> </timedTextLocale> <audioDescriptionLocale value="fr-CA" isPrimary="false"> <audioFormat>DD5.1</audioFormat> </audioDescriptionLocale> <audioDescriptionLocale value="fr-FR" /> <videoQuality>hd</videoQuality> <videoColorRange>hdr</videoColorRange> <visualDepth>mono</visualDepth> <visualDepth>stereo</visualDepth> </playableProperties> <!-- subscription offer with no restrictions --> <offers> <offer> <offeringType>subscription</offeringType> <windowStart>2016-08-30T10:00:00+01:00</windowStart> <windowEnd>2017-12-15T10:00:00+01:00</windowEnd> </offer> </offers> </item> <!-- movie availability with multiple offers --> <item contentType="movie" contentId="MOV10093961" catalogId="com.catalog.acme"> <pubDate>2016-06-30T09:53:33+01:00</pubDate> <locators> <locator platform="web" action="open" url="http://www.acme.com/open/10093961"/> <locator platform="web" action="play" url="http://www.acme.com/play/10093961"/> <locator platform="atv" action="open" url="myATVApp://media/open/10093961"/> <locator platform="atv" action="play" url="myATVApp://media/play/10093961"/> <locator platform="ios" action="open" url="myApp://media/open/10093961"/> <locator platform="ios" action="play" url="myApp://media/play/10093961"/> </locators> <playableProperties> <audioLocale value="en-US" isPrimary="true"> <audioFormat>DD5.1</audioFormat> <audioFormat>DD7.1</audioFormat> <audioFormat>AAC</audioFormat> </audioLocale> <timedTextLocale value="en-US"> <type>closed_captioning</type> </timedTextLocale> <videoQuality>sd</videoQuality> </playableProperties> <offers> <!-- subscription offer with unknown window end --> <offer> <offeringType>subscription</offeringType> <windowStart>2016-06-30T10:00:00+01:00</windowStart> <windowEnd>2255-01-01T00:00:00+01:00</windowEnd> </offer> <!-- subscription offer with device and tier restrictions --> <offer> <offeringType>subscription</offeringType> <windowStart>2016-09-22T10:00:00+01:00</windowStart> <windowEnd>2017-06-10T10:00:00+01:00</windowEnd> <restrictions> <restriction type="device" relationship="deny">ipad</restriction> <restriction type="tier" relationship="allow">gold_112</restriction> <restriction type="tier" relationship="allow">platinum_221</restriction> </restrictions> </offer> </offers> </item> <!-- tv episode availability with multiple offers --> <item contentType="tv_episode" contentId="EPI10054611" catalogId="com.catalog.acme"> <pubDate>2016-06-29T10:13:10+01:00</pubDate> <locators> <locator platform="web" action="open" url="http://www.acme.com/open/10054611"/> <locator platform="web" action="play" url="http://www.acme.com/play/10054611"/> <locator platform="atv" action="open" url="myATVApp://media/open/10054611"/> <locator platform="atv" action="play" url="myATVApp://media/play/10054611"/> <locator platform="ios" action="open" url="myApp://media/open/10054611"/> <locator platform="ios" action="play" url="myApp://media/play/10054611"/> </locators> <playableProperties> <audioLocale value="en-US" isPrimary="true"> <audioFormat>DD5.1</audioFormat> <audioFormat>DD7.1</audioFormat> <audioFormat>AAC</audioFormat> </audioLocale> <timedTextLocale value="en-US"> <type>closed_captioning</type> </timedTextLocale> <videoQuality>uhd</videoQuality> </playableProperties> <offers> <!— free with account offer --> <offer> <offeringType>account</offeringType> <windowStart>2016-06-30T10:00:00+01:00</windowStart> <windowEnd>2017-10-13T10:00:00+01:00</windowEnd> </offer> <!-- free offer with device restrictions --> <offer> <offeringType>free</offeringType> <windowStart>2016-07-15T10:00:00+01:00</windowStart> <windowEnd>2016-07-30T10:00:00+01:00</windowEnd> <restrictions> <restriction type="device" relationship="allow">iphone</restriction> <restriction type="device" relationship="allow">atv</restriction> </restrictions> </offer> </offers> </item> <!-- tv season availability--> <item contentType="tv_season" contentId="SEA10051442" catalogId="com.catalog.acme"> <pubDate>2016-06-29T11:42:10+01:00</pubDate> <locators> <locator platform="web" action="open" url="http://www.acme.com/open/10051442"/> <locator platform="web" action="play" url="http://www.acme.com/play/10051442"/> <locator platform="atv" action="open" url="myATVApp://media/open/10051442"/> <locator platform="atv" action="play" url="myATVApp://media/play/10051442"/> <locator platform="ios" action="open" url="myApp://media/open/10051442"/> <locator platform="ios" action="play" url="myApp://media/play/10051442"/> </locators> <offers> <!-- coming soon offer for the season --> <offer> <offeringType>coming_soon</offeringType> <windowStart>2016-05-30T10:00:00+01:00</windowStart> <windowEnd>2016-06-30T10:00:00+01:00</windowEnd> </offer> </offer> </offers> </item> <!-- tv show availability --> <item contentType="tv_show" contentId="SHO10087" catalogId="com.catalog.acme"> <pubDate>2016-06-29T11:41:04+01:00</pubDate> <locators> <locator platform="web" action="open" url="http://www.acme.com/open/10087702"/> <locator platform="web" action="play" url="http://www.acme.com/play/10087702"/> <locator platform="atv" action="open" url="myATVApp://media/open/10087702"/> <locator platform="atv" action="play" url="myATVApp://media/play/10087702"/> <locator platform="ios" action="open" url="myApp://media/open/10087702"/> <locator platform="ios" action="play" url="myApp://media/play/10087702"/> </locators> <offers> <!-- coming soon offer for the show --> <offer> <offeringType>coming_soon</offeringType> <windowStart>2016-05-30T10:00:00+01:00</windowStart <windowEnd>2016-06-30T10:00:00+01:00</windowEnd> </offer> </offer> </offers> </item> <!-- live sporting event (on a VOD service) with geo restrictions --> <item contentType="sporting_event" contentId="SPO1092345" catalogId="com.catalog.acme"> <pubDate>2016-06-29T11:40:03+01:00</pubDate> <locators> <locator platform="web" action="open" url="http://www.acme.com/open/SPO1092345"/> <locator platform="web" action="play" url="http://www.acme.com/play/SPO1092345"/> <locator platform="atv" action="open" url="myATVApp://media/open/SPO1092345"/> <locator platform="atv" action="play" url="myATVApp://media/play/SPO1092345"/> <locator platform="ios" action="open" url="myApp://media/open/SPO1092345"/> <locator platform="ios" action="play" url="myApp://media/play/SPO1092345"/> </locators> <offers> <!-- live broadcast offer of type subscription with geo restrictions --> <offer> <offeringType>subscription</offeringType> <windowStart>2016-09-22T19:30:00-08:00</windowStart> <windowEnd>2017-09-22T22:00:00-08:00</windowEnd> <isLive>true</isLive> <isBroadcast>true</isBroadcast> <restrictions> <restriction type="device_location"relationship="allow">gra.apple.nielsendma.807</restriction> </restrictions> </offer> </offers> </item> </service></umcAvailability>

Availability Data Tables

Content Type

Value

Description

movie

Used for film or a motion picture.

tv_show

Used for TV show intended for viewing on television. This covers a series that includes multiple seasons/episodes or a recurring, non-episodic TV show.

tv_season

Used for a TV season that is part of an episodic TV show. This is typically used to define a collection of episodes in an episodic TV show.

tv_episode

Used for a TV episode that is part of an episodic TV season and/or an episodic TV show.

sporting_event

Used for games (or matches) associated with a specific governing body, typically a league.

extra

Used for extra or bonus content that can be standalone, but is typically related to another content item such as a movie, TV show, TV season, or a TV episode.

External Catalogs

Value

Description

com.apple.trb.catalog

Tribune Media Services (TMS) catalog

com.apple.its.catalog

Apple TV app Transactional catalog

Locator Platform Type

Value

Description

atv

Apple TV application

ios

iOS application

web

Web browser

vision_os

Vision OS

Locator Action Type

Value

Description

open

Directs the user to a landing page for this item

play

Directs the user to an immediate video play of this item

Timed Text Locale Types

Value

Description

closed_captioning

Text version of the dialogue or narrative of the media content that can be turned on or off. This text is in the language of the medium rather than a translation to another language.

subtitles

Text translation of the dialogue or narrative of the media content that can be turned on or off. This text assumes that the viewers can hear the audio.

burned_in_subtitles

Text translation of the dialogue or narrative of the media content that is part of the media content and cannot be turned off.

sdh

SDH (“Subtitle for the Deaf and Hard-of-hearing”) is text that is displayed for viewers who may not be able to hear the audio. SDH text contains information about background sounds and speaker changes, along with a translation of the dialogue or narrative.

Visual Depth

Value

Description

mono

Monoscopic video content

stereo

Stereoscopic video content

Video Quality Type

Value

Description

sd

Standard Definition

hd

High Definition

uhd

Ultra High Definition

Video Color Range Type

Value

Description

sdr

Standard Dynamic Range (no HDR)

hdr

High Dynamic Range (HDR)

dv_hdr

Dolby Vision HDR

Audio Format Type

Value

Description

DD5.1

Dolby Digital 5.1

*Not Applicable for Apple Subscription Video service items (isAppleSubscription="true")

DD7.1

Dolby Digital 7.1

DD5.1+

Dolby Digital Plus 5.1

DD7.1+

Dolby Digital Plus 7.1

*Not Applicable for Apple Subscription Video service items (isAppleSubscription="true")

ATMOS

Dolby Atmos

AAC

AAC

Offering Type

Value

Description

free

Item is offered for free

account

Item is offered for free for users with a valid account

subscription

Item is offered as part of subscription

coming_soon

Item is going to be offered in the future and can be discoverable earlier in the related offer’s time window*.

* Applicable for VOD offers only.

Restriction Type

Value

Description

device

Required if restriction "type"="device"

Used to express offer restrictions based on client device type. For supported device type restriction values see Device Type.

Not Applicable for Apple Subscription Video service items (isAppleSubscription="true")

tier

Required if restriction ="type")="tier")

Used to determine offer entitlement based on subscription tiers. Values for tier are defined by you, the video service provider. These values should correspond to the list of subscription tiers passed by the partner app to the Core Spotlight API on the client device.

Note: List of restricted tiers must be contained in size to not exceed more than 256 tiers. Each tier value must be alphanumeric only and must not exceed 255 characters in length.

Not Applicable for Apple Subscription Video service items (isAppleSubscription="true")

device_location

Required if restriction "type"="device_location"

Used to express offer content play restrictions based on client device location. For supported device_location values see Device Location Geo Restriction Areas (GRAs) in the appendix.

Note: List of restricted GRAs must be contained in size to not exceed more than 256 GRAs. This restriction type is currently only applicable for items of content type sporting_event.

billing_identifier

Required if restriction "type"="billing_identifier"

Used to determine offer entitlement based on billing address. Values for billing_identifier are defined by you, the video service provider. These values should correspond to the list of billing identifiers passed by the partner app to the Core Spotlight API on the client device.

Note: Applicable only for broadcast offers (offers in linear services or offers in VOD services where isBroadcast=true).

Note: List of restricted billing identifiers must be contained in size to not exceed more than 256 identifiers.

content_download

Required if restriction "type"="content_download"

Used to express if content is available for download. If no restriction is specified then by default content will be considered as available for download.

Note: Applicable only for Apple Video Subscription service offers.

Device Type

Value

Description

atv

Apple TV

iphone

iPhone (including iPod touch)

ipad

iPad

mac

Mac

Device Location Geo Restriction Areas (GRAs)

Value

Description

gra.apple.country.<country_code>

Country geo-restricted area.

For example “gra.apple.country.US”

<country_code> to be expressed as two-letter country code as defined in the ISO 3166 International Standard.

gra.apple.nielsendma.<dma_code>

Nielsen DMA geo-restricted area.

For example “gra.apple.nielsendma.807”

<dma_code> to be expressed as Nielsen DMA code. See list of Nielsen DMAs and codes.

gra.apple.uszip.<zip_code>

U.S. zip code geo-restricted area.

For example “gra.apple.uszip.95014”

<zip_code> to be expressed as five-digit U.S. zip code.

gra.apple.austate.<state_code>

Australian state geo-restricted area.

For example: gra.apple.austate.AU-QLD

<state_code> to be expressed as ISO 3166-2:AU code. See list of state codes.

gra.apple.brstate.<state_code>

Brazilian state geo-restricted area.

For example: “gra.apple.brstate.BR-RJ”

<state_code> to be expressed as ISO 3166-2:BR code. See list of state codes.

gra.apple.cafsa.<fsa_code>

Canadian FSA (Forward Sortation Area) geo-restricted area.

For example: “gra.apple.cafsa.H4T”

<fsa_code> to be expressed as a 3 letter FSA code.

See list of FSA codes.

Unsupported Features

Although this document provides the ability to describe and define content availability using various offers and restrictions, the following features are not currently supported in the Universal Search and Apple TV app products:

  • VOD service availability for content typed as sporting events in the related UMC Catalog Data Interface Specification.

  • Linear service availability for all other content other than sporting events.

  • Relationship type “deny” tier restrictions on offers will not be supported.

Availability Specification Revision History

Date

Version

Notes

4-18-24

3.6.0

  • Playable properties schema updated. This is not a backward compatible change.

  • Primary locale made required for audio locales.

  • Added the ability to explicitly specify timed text locale types (e.g. subtitles) to be ignored.

  • Added new playable properties to support 3D.

  • Added a new locator type to support specifying locators for VisionOS.

4-18-24

3.5.8

  • Verbiage for dictionary for audio formats updated for DD5.1 and DD7.1+

  • Verbiage for device location restrictions updated to indicate that this is supported for Apple Subscription Video services.

10-22-21

3.5.7

  • Verbiage for tier restrictions updated to include more details on permitted values.

10-20-20

3.5.6

  • Added ability to provide announce date.

  • Verbiage for providing only one variant ID in a feed for a given content ID, catalog ID combination.

03-15-19

3.5.5

  • New offering type “coming_soon” added.

  • Added support for new content type “extra”.

  • Verbiage for restriction types updated to better explain default behavior and supported features.

10-22-18

3.5.1

  • Updated restrictions size limit definition, Nielsen DMA list link and device location verbiage

09-12-18

3.5.0

  • Updated playable properties and locators’ requirements for supporting Apple Subscription Video service

  • Added variant ID to item attributes for supporting Apple Subscription Video service.

  • Added “content_download” restriction type.

  • Canada FSA GRAs added

03-06-18

3.0.4

  • Non-linear service offers support added

  • Australia and Brazil state GRAs added

  • Dolby Atmos playable property added

11-10-17

3.0.3

  • billing_identifier restriction added

  • Unsupported features description added

10-04-17

3.0.2

  • Reformatted

  • Changed descriptions for isLive and isBroadcast

06-15-17

3.0.1

  • 3.0 schema implemented

  • Linear service support

  • Offer isBroadcast and isLive elements added

  • device_location restrictions added

  • videoColorRange playable property added

09-16-16

2.0

  • 2.0 schema implemented

  • Channel element removed

  • Account offering type added

  • Offer element added

  • Offer restrictions support added for device and tier

  • playableAsset element removed

  • Non-playable item requirement updated

  • locatorType separated into “platform” and “action”

UMC Partner Manifest Data Interface Specification

About UMC Partner Manifest Data Interface

Apple’s video content platform supports programming of content provider settings using the Universal Media Catalog (UMC). A partner manifest is a collection of configurations for catalogs and availability services for a content provider. The partner manifest data is delivered to Apple’s video content platform through the UMC Data Ingest Service.

As a video service provider, you can implement the UMC Partner Manifest Data Interface to configure catalogs and availability services in the UMC platform. Services are grouped within your brands, which are associated with your iOS or tvOS app. For more about brands refer to the Apple TV App and Universal Search Getting Started document or contact your Apple Technical Partner Representative.

The version 1.2 of Partner Manifest supports the addition, deletion and update of catalogs and services details.

To prepare partner manifest data for ingestion:

  1. Register your brand ID with Apple.

  2. Define service ids and catalog ids registered in UMC catalog and availability feeds.

  3. Implement the partner manifest feed with the data requirements described in this document.

  4. Provide Apple with the HTTPS endpoint information for your content.

Partner manifest is delivered to Apple as a data feed consisting of a structured XML file published at a pre-defined endpoint. A partner manifest data feed must comply with the defined schema and requirements.

Note: The UMC Catalog and Availability Data Interface Specifications have been moved to a new guide. See the UMC Catalog and Availability Data Interface Specifications to find feed requirements, a sample catalog feed, XML feed elements, schema definitions, and more resources that will help you interface catalog data with the UMC Data Ingest Service.

Partner Manifest Data Feed

Partner data are described using:

  • Services — Defines the services.

  • Catalogs — Defines catalogs.

Feed Requirements

  • The feed must be published at the pre-defined HTTPS endpoint as provided to Apple. This endpoint will be periodically accessed by UMC Data Ingest Service.

    Note: To ensure security, the endpoint must support the HTTPS protocol using a certificate issued by a well known certificate authority. For further security, you may limit endpoint access by IP range, use HTTP authentication, or force client-based certificate authentication.

  • The feed must meet the data constraints defined in this document.

  • The feed must adhere to the schema (hierarchy and order) defined in this document.

Feed Data Constraints

The feed must contain data for only one content provider (partner).

Services identified by service ID and catalogs identified by catalog ID must be unique and appear only once in the feed.

Partner Manifest Feed Structure

The partner manifest feed is an XML document. The XML structure for a partner manifest feed must conform to the following schema in the order given.

Elements of the XML Feed

The root element of the XML feed is <umcPartnerManifest>. It contains the following elements and attributes:

  • version

  • <lastBuildDate>

  • <service>

  • <catalog>

Element of <umcPartnerManifest>

Description

Attribute

<umcPartnerManifest> is the root element and has one attribute.

version

Attribute version will indicate the feed specification version that this feed conforms to (value must be “1.2” for this specification).

lastBuildDate

Required

Feed build date.

YYYY-MM-DDThh:mm:ss.sTZD

ISO 8601 Format

service

Optional (repeatable)

Describes a single service configuration.

Refer to Service Schema Definition.

catalog

Optional (repeatable)

Describes a single catalog configuration.

Refer to Catalog Schema Definition.

Service Schema Definition

This section describes the XML schema for linear and VOD services. The XML elements must appear in the feed in the sequence shown in the definition.

Elements of <service>

Describes a single service item. <service> consists of the following attributes and elements:

  • serviceId

  • brandId

  • <serviceType>

  • <country>

  • <name>

  • <alias>

  • <feedInfo>

  • <locators>

  • <playableProperties>

  • <offers>

  • <streamUrl>

Element of <service>

Description

Attribute

Required (repeatable)

Describes single service configuration.

serviceId (required)

Unique service identifier. For updating an existing service, use identifier as registered with Apple.

brandId (required)

Unique brand identifier as registered with Apple.

serviceType

Required

The type of the service.

See Service Type.

Note: the element is ignored for update operation, i.e. service type cannot be changed for an existing service.

country

Required

Country for which this service is defined.

The value of this element must be the 2-letter country code for the country of production as defined in the ISO 3166 International Standard.

Note: the element is ignored for update operation, i.e. country cannot be changed for an existing service.

name

Required (repeatable)

Locale-specific service name.

Defines name of the service to be used for a specific locale.

locale

Locale in BCP-47 Format for which the name is set.

alias

Optional (repeatable)

Locale-specific additional service name.

Defines an additional name for the service to be used for a specific locale.

Note: This is only applicable for live, linear services (serviceType=“linear”).

locale

Locale in BCP-47 Format for which the name is set.

feedInfo

Optional

Defines service feed info.

Refer to Feed Info Schema Definition.

locators

Optional

Describes this service’s locators.

Refer to Locators Schema Definition.

playableProperties

Optional

Describes this service’s playable properties

Refer to Playable Properties Schema Definition.

offers

Optional

Describes this service’s offers. Refer to Offers Schema Definition.

Note: If no service offers are provided, the service along with items in the service will not be available for search.

streamUrl

Optional

Defines the URL to broadcast the live video stream for this service.

Note: This is only applicable for live, linear services (serviceType=“linear”).

Locators Schema Definition

Locators are used to open or play content on a client’s device (platform).

Note: Typically, you would set service level locators for a linear service, whereas for a VOD service you would set locators for each content item.

Parent: <locators> (optional)

Describes one or more locators.

Element of <locators>

Description

Attribute

locator

Required (repeatable)

Describes a single locator.

platform(required)

Indicates the locator target platform. See appendix Locator Platform Type section for supported types.

action(required)

Indicates the locator action where:

  • “open” directs the user to a landing page for this item.

  • “play” directs the user to an immediate video play of this item.

    See appendix Locator Action Type.

Note: For TV shows and TV seasons, if your application does not record the user’s play history and cannot detect the next unwatched TV episode, the “play” locator action should be omitted.

Note: Locators of type “play” are usually not necessary for items under linear service (serviceType=“linear”) where the service play locators will be used to play content.

url (required)

Specifies the direct URL for the platform and action described by this locator.

Playable Properties Schema Definition

Playable properties specify the accessibility and quality settings for content.

Note: Playable properties are not applicable to TV shows or TV seasons.

Parent: <playableProperties> (optional)

Describes the playable asset properties.

Element of <playableProperties>

Description

Attribute

<closedCaptioning>

Optional

A list of locales for which closed captioning is available, in BCP-47 format.

<subtitles>

Optional

A list of locales for which subtitles are available, in BCP-47 format.

<subtitlesforDeaf>

Optional

A list of locales for which SDH (“Subtitles for the Deaf and Hard-of- hearing”) subtitles are available, in BCP-47 format.

<audioDescriptions>

Optional

A list of locales for which Audio Description (also known as DVS) data is available, in BCP-47 format.

<additionalAudioLang>

Optional

A list of locales for which alternate audio tracks are available, in BCP-47 format.

<audioFormats>

Optional

A list of audio formats available for this content.

See Audio Format Type in the appendix.

<primaryLocale>

Optional

The locale of the primary audio track, in BCP-47 format.

Note: If no primary locale is provided, then the playable’s primary locale is defaulted to the primary locale of the availability service.

<videoQuality>

Optional

The quality of the video.

See Video Quality Type in the appendix.

<videoColorRange>

Optional

The color range (HDR) of the video.

See Video Color Range Type in the appendix.

Offers Schema Definition

Service offers are used to describe the type of offering (for example, free or subscription) along with the offering time window and restrictions for a linear service. For more information on restrictions, see Restrictions Schema Definition.

Parent: <offers> (optional)

Describes one or more service offers.

Element of <offers>

Sub-element

Description

<offer>

Required (repeatable)

Describes a single service offer.

offeringType

Required

The type of offering for this offer.

See appendix section Offering Type.

windowStart

Required

Availability start date (schedule start for linear item).YYYY-MM-DDThh:mm:ss.sTZD

ISO 8601 Format

windowEnd

Required

Availability start date (schedule start for linear item).YYYY-MM-DDThh:mm:ss.sTZD

ISO 8601 Format

Note: When the windowEnd date is unknown, the default value of “2255-01-01T00:00:00Z” should be used.

<restrictions>

Optional

Defines this offer’s restrictions.

Refer to Restrictions Schema Definition.

Restrictions Schema Definition

Restrictions can be placed on an offer to allow or deny access to content or a service based on a client’s device, geographical location, subscription tier, or billing address.

Note: Offer restrictions must not include any mixed relationship (deny and allow) for the same restriction type.

Parent: <restrictions> (optional)

Describes one or more offer restrictions.

Element of <restrictions>

Description

Attribute

<restriction>

Optional (repeatable)

Defines an offer’s restrictions.

Multiple restrictions may be provided as repeatable elements.

Note: Offer restrictions must not include mixed relationship (deny and allow) for the same restriction type.

relationship (required)

Indicates the restriction relationship. possible values are allow and deny.

type(required)

Indicates the type of the restriction. Possible values are device, tier, device_location, billing_identifier and content_download.

See appendix Restriction Type for more information.

Catalog Schema Definition

This section describes the XML schema for catalogs. The XML elements must appear in the feed in the sequence shown in the definition.

Elements of <catalog>

The <catalog> element consists of the following attributes and elements:

  • catalogId

  • <name>

  • <feedInfo>

Elements of <catalog>

Description

Attribute

Optional (repeatable)

<catalog> has one attribute

catalogId (required)

Unique catalog identifier as registered with Apple.

name

Required

Human readable catalog title

feedInfo

Optional

Defines catalog feed info.

Refer to Feed Info Schema Definition

Feed Info Schema Definition

Feed info is used to setup feed configuration for catalogs and services.

Parent: <feedInfo> (optional)

Describes single feed configuration.

Element of <feedInfo>

Description

Attribute

specVersion

Required

Indicates the feed specification version that this feed conforms to.

url

Required

URL of feed endpoint used by UMC Data Ingest Service to retrieve feed data for a given catalog or service.

Sample XML Feeds

Add/update services and catalogs

<?xml version="1.0"encoding="UTF-8"?> <umcPartnerManifest version="1.2" xmlns:umc="http://www.tbd.com/spec/tvs-partner-manifest/"> <lastBuildDate>2018-04-23T18:00:12-07:00</lastBuildDate> <!-- Add/Update VOD service sample --> <service serviceId="com.acme.service.vod" brandId="com.acme.brand"> <serviceType>vod</serviceType> <country>US</country> <name locale="en">JVOD en</name> <name locale="fr-CA">JVOD fr CA</name> <name locale="ru">JVOD ru</name> <feedInfo> <specVersion>3.0</specVersion> <url>https://s3.amazonaws.com/acme/availability</url> </feedInfo> </service> <!-- Add/Update Linear service sample --> <service serviceId="com.acme.service.linear" brandId="com.acme.brand"> <serviceType>linear</serviceType> <country>US</country> <name locale="en">LIN en</name> <name locale="fr-CA">LIN fr CA</name> <name locale="ru">LIN ru</name> <alias locale="en">LIN alias en</alias> <alias locale="fr-CA">LIN alias fr CA</alias> <alias locale="ru">LIN alias ru</alias> <feedInfo> <specVersion>3.0</specVersion> <url>https://s3.amazonaws.com/acme/availability</url> </feedInfo> <!— locators for playing the linear service stream and opening the channel page —> <locators> <locator platform="web" action="open" url="http://www.acme.com/open/channel11"/> <locator platform="web" action="play" url="http://www.acme.com/play/channel11"/> <locator platform="atv" action="open" url="myATVApp://media/open/channel11"/> <locator platform="atv" action="play" url="myATVApp://media/play/channel11"/> <locator platform="ios" action="open" url="myApp://media/open/channel11"/> <locator platform="ios" action="play" url="myApp://media/play/channel11"/> </locators> <!— service stream playable properties —> <playableProperties> <closedCaptioning>en-US</closedCaptioning> <audioFormats>DD5.1,AAC</audioFormats> <primaryLocale>en-US</primaryLocale> <videoQuality>hd</videoQuality> <videoColorRange>hdr</videoColorRange> </playableProperties> <offers> <offer> <offeringType>free</offeringType> <windowStart>2016-08-30T10:00:00+01:00</windowStart> <windowEnd>2017-12-15T10:00:00+01:00</windowEnd> </offer> <!— service offer restricted to a specific DMA and a specific subscription tier —> <offer> <offeringType>subscription</offeringType> <windowStart>2016-08-30T10:00:00+01:00</windowStart> <windowEnd>2017-12-15T10:00:00+01:00</windowEnd> <restrictions> <restriction type="device_location" relationship="allow">gra.apple.nielsendma.807</restriction> <restriction type="tier" relationship="allow">sports-package-12</restriction> </restrictions> </offer> </offers> <streamUrl>http://www.acme.com/stream/channel11</streamUrl> </service> <!-- Add/Update catalog --> <catalog catalogId="com.catalog.acme"> <name>ACME</name> <feedInfo> <specVersion>3.0</specVersion> <url>https://s3.amazonaws.com/acme/catalog</url> </feedInfo> </catalog> </umcPartnerManifest>

Delete services and catalogs

Partner manifest feed represents state of content provider in a fixed moment of time, i.e. all services and catalogs that provider has must be listed in a feed. Feed should include all services and catalogs even if only one of them is changed.

To remove catalog or service from UMC it should be excluded from the partner manifest feed.

Example: Remove catalog2 from the feed

Original feed:

<?xml version="1.0"encoding="UTF-8"?> <umcPartnerManifest version="1.2" xmlns:umc="http://www.tbd.com/spec/tvs-partner-manifest/"> <lastBuildDate>2018-04-23T18:00:12-07:00</lastBuildDate> <service serviceId="com.acme.service.vod" brandId="com.acme.brand"> <serviceType>vod</serviceType> <country>US</country> <feedInfo> <specVersion>3.5</specVersion> <url>https://s3.amazonaws.com/acme/availability</url> </feedInfo> </service> <catalog catalogId="catalog1"> <name>Catalog 1</name> <feedInfo> <specVersion>3.6</specVersion> <url>https://s3.amazonaws.com/acme/catalog1</url> </feedInfo> </catalog> <— Catalog to be removed —> <catalog catalogId="catalog2"> <name>Catalog 2</name> <feedInfo> <specVersion>3.6</specVersion> <url>https://s3.amazonaws.com/acme/catalog2</url> </feedInfo> </catalog> </umcPartnerManifest>

Feed that removes catalog2 from original feed:

<?xml version="1.0"encoding="UTF-8"?> <umcPartnerManifest version="1.2" xmlns:umc="http://www.tbd.com/spec/tvs-partner-manifest/"> <lastBuildDate>2018-04-24T18:00:12-07:00</lastBuildDate> <service serviceId="com.acme.service.vod" brandId="com.acme.brand"> <serviceType>vod</serviceType> <country>US</country> <feedInfo> <specVersion>3.5</specVersion> <url>https://s3.amazonaws.com/acme/availability</url> </feedInfo> </service> <catalog catalogId="catalog1"> <name>Catalog 1</name> <feedInfo> <specVersion>3.6</specVersion> <url>https://s3.amazonaws.com/acme/catalog1</url> </feedInfo> </catalog> </umcPartnerManifest>

Data Tables

Service Type

Value

Description

vod

Video on demand service. A VOD service typically allows users to select and watch video content on demand, rather than having to watch at a specific broadcast time.

linear

Linear service. Service in which the offer windows are typically programmed back-to-back on a continuous schedule.

Locator Platform Type

Value

Description

atv

Apple TV application

ios

iOS application

web

Web browser

Locator Action Type

Value

Description

open

Directs the user to a landing page for this item.

play

Directs the user to an immediate video play of this item.

Video Quality Type

Value

Description

sd

Standard Definition

hd

High Definition

uhd

Ultra High Definition

Video Color Range Type

Value

Description

sdr

Standard Dynamic Range (no HDR)

hdr

High Dynamic Range (HDR)

dv_hdr

Dolby Vision HDR

Audio Format Type

Value

Description

DD5.1

Dolby Digital 5.1

DD7.1

Dolby Digital 7.1

DD5.1+

Dolby Digital Plus 5.1

DD7.1+

Dolby Digital Plus 7.1

ATMOS

Dolby Atmos

AAC

AAC

Offering Type

Value

Description

free

Item is offered for free.

account

Item is offered for free for users with a valid account.

subscription

Item is offered as part of subscription.

coming_soon

Item is going to be offered in the future and can be discoverable earlier in the related offer’s time window*.

* Applicable for Apple Subscription Video (isAppleSubscription="true") VOD offers only.

Restriction Type

Value

Description

device

Required if restriction “type”=“device”.

Used to express offer restrictions based on client device type. For supported device type restriction values see Device Type in the appendix.

Not Applicable for Apple Subscription Video service items (isAppleSubscription=“true”).

tier

Required if restriction “type”=“tier”.

Used to determine offer entitlement based on subscription tiers. Values for tier are defined by you, the video service provider. These values should correspond to the list of subscription tiers passed by the partner app to the CoreSpotlight API on the client device.

Note: List of restricted tiers must be contained in size to not exceed more than 256 tiers.

Not Applicable for Apple Subscription Video service items (isAppleSubscription=“true”).

device_location

Required if restriction “type”=“device_location”.

Used to express offer content play restrictions based on client device location. For supported device_location values see Device Location Geo Restriction Areas (GRAs) in the appendix.

Note: List of restricted GRAs must be contained in size to not exceed more than 256 GRAs.

Not Applicable for Apple Subscription Video service items (isAppleSubscription=“true”).

billing_identifier

Required if restriction “type”=“billing_identifier”.

Used to determine offer entitlement based on billing address. Values for billing_identifier are defined by you, the video service provider. These values should correspond to the list of billing identifiers passed by the partner app to the CoreSpotlight API on the client device.

Note: List of restricted billing identifiers must be contained in size to not exceed more than 256 identifiers.

Applicable only for broadcast offers (offers in linear services or offers in VOD services where isBroadcast=true).

content_download

Required if restriction “type”=“content_download”.

Used to express if content is available for download. If no restriction is specified then by default content will be considered as available for download.

Applicable only for Apple Video Subscription service offers (isAppleSubscription=“true”).

Device Type

Value

Description

atv

Apple TV

iphone

iPhone (including iPod touch)

ipad

iPad

mac

Mac

Device Location Geo Restriction Areas (GRAs)

Value

Description

gra.apple.country.<country_code>

Country geo-restricted area.

For example “gra.apple.country.US”

<country_code> to be expressed as 2-letter country code as defined in the ISO 3166 International Standard.

gra.apple.nielsendma.<dma_code>

Nielsen DMA geo-restricted area.

For example “gra.apple.nielsendma.807”.

<dma_code> to be expressed as Nielsen DMA code. See list of Nielsen DMAs and codes.

gra.apple.uszip.<zip_code>

U.S. ZIP code geo-restricted area.

For example “gra.apple.uszip.95014” .

<zip_code> to be expressed as 5 digit U.S. ZIP code.

gra.apple.austate.<state_code>

Australian state geo-restricted area.

For example: gra.apple.austate.AU-QLD.

<state_code> to be expressed as ISO 3166-2:AU code. See list of state codes.

gra.apple.brstate.<state_code>

Brazilian state geo-restricted area.

For example: “gra.apple.brstate.BR-RJ”.

<state_code> to be expressed as ISO 3166-2:BR code. See list of state codes.

gra.apple.cafsa.<fsa_code>

Canadian FSA (Forward Sortation Area) geo-restricted area.

For example: “gra.apple.cafsa.H4T”.

<fsa_code> to be expressed as a 3 letter FSA code. See list of FSA codes.

Partner Requirements Addendum

UMC Catalog Data Requirements

Apple’s video content platform has additional data requirements for partners participating in Apple TV Channels or the Apple Video Partner Program. Use the details defined within this document to determine which data points are required.

The table below defines the Catalog Data requirements for TV show, episode, season, and movie content.

  • A red status indicator () means that this data is Not Applicable.

  • A yellow status indicator () means that this data is Optional.

  • A green status indicator () means that this data is Required.

tv_show

tv_season

tv_episode

movie

description

genre

rating

advisory

credit

creditedPersonInfo

dateOfBirth

externalId

character

characterName

externalContentId

isOriginal

if true

if true

isAdultOnlyContent

if true

if true

duration

studio

version

productionCountry

originalReleaseDate

originalFinaleDate

localFinaleDate

network

originalPremiereDate or localPremiereDate

productionNumber

seasonNumber

originalAirDate or localAirDate

episodeNumber

UMC Catalog Artwork Requirements

The table below defines the Artwork Data requirements for partners participating in Apple TV Channels or the Apple Video Partner Program.

Note: Images for optional artwork types listed below are important to the overall experience and are required for content to be featured. Demonstrating the ability to deliver these images via your catalog feed with correct artwork type declarations is also required.

  • A red status indicator () means that this data is Not Applicable.

  • A yellow status indicator () means that this data is Optional.

  • A green status indicator () means that this data is Required.

Artwork Spec Name

Artwork Asset Type

tv_show

tv_season

tv_episode

movie

extra

16:9 Cover Art

cover_artwork_horizontal

2:3 Poster Cover Art

cover_artwork_vertical

Tile/Keyframe Artwork

tile_artwork

Backdrop Wide

centered_background

Backdrop Tall

centered_background_small

Full Color Content Logo

content_logo_polychromatic

Single Color Content Logo

content_logo_monochromatic

Square Cover Art*

cover_artwork_square

* Square Cover Art does not apply to Channels content.

Additional Video Partner Requirements

See the below sections for various required fields and asset details.

Minimum Storefront Requirements

To improve the quality of the content offered on the Apple TV app, certain territories (listed in the table below) must meet a set of minimum requirements.

To meet the minimum requirements, subscription video deliveries must have at least one of the following assets tagged (using the <locale> tag) with the language specified in the table below for both the full asset and preview:

  • Original audio or alternate audio

  • Full subtitles (.itt)

  • Burned-in subtitles

While many of the metadata fields like Title, Description, Poster Art, and Cast & Crew are listed as optional, they are very important to the overall experience and may be required by our editorial team in order for the content to be featured.

  • A green status indicator green icon means that localized data is Required.

  • An orange status indicator orange icon means that localized data is Preferred.

  • A yellow status indicator yellow icon means that localized data is Optional.

Note: Dubbing is preferred for Kids Content. Also, for Cast & Crew, “localized data” means names of actors, directors, characters, etc. are translated into the local language, and local voice artists are included where appropriate.

Territory

Language (specified in <locale> tag)

Preferred Component Type

Title

Description

16x9 Cover Art

Cast & Crew

All Other Countries

Any English (en-**)1

Dubs or Subtitles

green icon

green icon

orange icon

orange icon

U.S.

Any English (en-**)1

Dubs or Subtitles

green icon

green icon

green icon

green icon

United Kingdom

Any English (en-**)1

Dubs or Subtitles

green icon

green icon

green icon

green icon

Australia

Any English (en-**)1

Dubs or Subtitles

green icon

green icon

green icon

green icon

New Zealand

Any English (en-**)1

Dubs or Subtitles

green icon

green icon

green icon

green icon

Canada

Any English (en-**)1 or any French (fr-**)1

Dubs or Subtitles

green icon

green icon

green icon

green icon

Austria

German (de, de-DE, de-LU, de-AT, de-LI, de-BE, and de-IT)

Dubs or Subtitles

green icon

green icon

green icon

green icon

Germany

German (de, de-DE, de-LU, de-AT, de-LI, de-BE, and de-IT)

Dubs or Subtitles

green icon

green icon

green icon

green icon

Switzerland

German (de-**), French (fr-**), and Italian (it-**)

Dubs or Subtitles

green icon

green icon

green icon

green icon

France

Parisian French (fr-FR) or OSL Canadian French (fr-CA)2

Dubs or Subtitles

green icon

green icon

green icon

green icon

Italy

Any Italian (it-**)1

Dubs or Subtitles

green icon

green icon

green icon

green icon

Spain

Castilian Spanish (es-ES) or OSL Spanish (es-419, es-MX)

Dubs or Subtitles

green icon

green icon

green icon

green icon

Czech Republic

Any English (en-**) or any Czech

Dubs or Subtitles

orange icon

orange icon

orange icon

orange icon

Poland

Any English (en-**) or any Polish

Dubs or Subtitles

orange icon

orange icon

orange icon

orange icon

Bulgaria

Any English (en-**) or any Bulgarian

Subtitles

yellow icon

yellow icon

yellow icon

yellow icon

Cyprus

Any English (en-**), any Greek, or any Turkish

Subtitles

yellow icon

yellow icon

yellow icon

yellow icon

Estonia

Any English (en-**) or any Estonian

Subtitles

yellow icon

yellow icon

yellow icon

yellow icon

Greece

Any English (en-**) or any Greek

Subtitles

yellow icon

yellow icon

yellow icon

yellow icon

Hungary

Any English (en-**) or any Hungarian

Subtitles

yellow icon

yellow icon

yellow icon

yellow icon

Latvia

Any English (en-**) or any Latvian

Subtitles

yellow icon

yellow icon

yellow icon

yellow icon

Lithuania

Any English (en-**) or any Lithuanian

Subtitles

yellow icon

yellow icon

yellow icon

yellow icon

Malta

Any English (en-**) or any Maltese

Subtitles

yellow icon

yellow icon

yellow icon

yellow icon

Portugal

Any English (en-**) or any Portuguese

Subtitles

yellow icon

yellow icon

yellow icon

yellow icon

Slovakia

Any English (en-**) or any Slovak

Subtitles

yellow icon

yellow icon

yellow icon

yellow icon

Slovenia

Any English (en-**) or any Slovenian

Subtitles

yellow icon

yellow icon

yellow icon

yellow icon

Belgium

Dutch (nl-**) and any French (fr-**)

Subtitles

yellow icon

orange icon

yellow icon

yellow icon

Luxembourg

German (de-**) or French (fr-**)

Subtitles

yellow icon

orange icon

yellow icon

yellow icon

Denmark

Any Danish

Subtitles

yellow icon

orange icon

yellow icon

yellow icon

Finland

Any Finnish

Subtitles

yellow icon

orange icon

yellow icon

yellow icon

Netherlands

Any Dutch (nl-**)

Subtitles

yellow icon

orange icon

yellow icon

yellow icon

Norway

Any Norwegian

Subtitles

yellow icon

orange icon

yellow icon

yellow icon

Sweden

Any Swedish

Subtitles

yellow icon

orange icon

yellow icon

yellow icon

Hong Kong

Cantonese Audio (yue), Cantonese Subtitles (yue-Hant), or Traditional Chinese Subtitles (cmn-Hant)3

Subtitles

green icon

green icon

green icon

green icon

Macau

Cantonese Audio (yue), Cantonese Subtitles (yue-Hant), or Traditional Chinese Subtitles (cmn-Hant)3

Subtitles

green icon

green icon

green icon

green icon

Taiwan

Mandarin Audio (cmn) or Traditional Chinese Subtitles (cmn-Hant)

Subtitles

green icon

green icon

green icon

green icon

India

Any English or Any Hindi

Subtitles

orange icon

orange icon

orange icon

orange icon

Japan

Japanese (ja-**)1)

Subtitles

green icon

green icon

green icon

green icon

Argentina

Latin American Spanish (es-419) or Mexican Spanish (es-MX) or OSL Spanish (es-**)1,2)

Dubs or Subtitles

yellow icon

orange icon

yellow icon

orange icon

Bolivia

Latin American Spanish (es-419) or Mexican Spanish (es-MX) or OSL Spanish (es-**)1,2)

Dubs or Subtitles

yellow icon

orange icon

yellow icon

orange icon

Chile

Latin American Spanish (es-419) or Mexican Spanish (es-MX) or OSL Spanish (es-**)1,2)

Dubs or Subtitles

yellow icon

orange icon

yellow icon

orange icon

Colombia

Latin American Spanish (es-419) or Mexican Spanish (es-MX) or OSL Spanish (es-**)1,2)

Dubs or Subtitles

yellow icon

orange icon

yellow icon

orange icon

Costa Rica

Latin American Spanish (es-419) or Mexican Spanish (es-MX) or OSL Spanish (es-**)1,2)

Dubs or Subtitles

yellow icon

orange icon

yellow icon

orange icon

Dominican Republic

Latin American Spanish (es-419) or Mexican Spanish (es-MX) or OSL Spanish (es-**)1,2)

Dubs or Subtitles

yellow icon

orange icon

yellow icon

orange icon

Ecuador

Latin American Spanish (es-419) or Mexican Spanish (es-MX) or OSL Spanish (es-**)1,2)

Dubs or Subtitles

yellow icon

orange icon

yellow icon

orange icon

El Salvador

Latin American Spanish (es-419) or Mexican Spanish (es-MX) or OSL Spanish (es-**)1,2)

Dubs or Subtitles

yellow icon

orange icon

yellow icon

orange icon

Guatemala

Latin American Spanish (es-419) or Mexican Spanish (es-MX) or OSL Spanish (es-**)1,2)

Dubs or Subtitles

yellow icon

orange icon

yellow icon

orange icon

Honduras

Latin American Spanish (es-419) or Mexican Spanish (es-MX) or OSL Spanish (es-**)1,2)

Dubs or Subtitles

yellow icon

orange icon

yellow icon

orange icon

Mexico

Latin American Spanish (es-419) or Mexican Spanish (es-MX) or OSL Spanish (es-**)1,2)

Dubs or Subtitles

yellow icon

orange icon

yellow icon

orange icon

Nicaragua

Latin American Spanish (es-419) or Mexican Spanish (es-MX) or OSL Spanish (es-**)1,2)

Dubs or Subtitles

yellow icon

orange icon

yellow icon

orange icon

Panama

Latin American Spanish (es-419) or Mexican Spanish (es-MX) or OSL Spanish (es-**)1,2)

Dubs or Subtitles

yellow icon

orange icon

yellow icon

orange icon

Paraguay

Latin American Spanish (es-419) or Mexican Spanish (es-MX) or OSL Spanish (es-**)1,2)

Dubs or Subtitles

yellow icon

orange icon

yellow icon

orange icon

Peru

Latin American Spanish (es-419) or Mexican Spanish (es-MX) or OSL Spanish (es-**)1,2)

Dubs or Subtitles

yellow icon

orange icon

yellow icon

orange icon

Venezuela

Latin American Spanish (es-419) or Mexican Spanish (es-MX) or OSL Spanish (es-**)1,2)

Dubs or Subtitles

yellow icon

orange icon

yellow icon

orange icon

Brazil

Brazilian Portuguese (pt-BR)

Dubs or Subtitles

yellow icon

yellow icon

yellow icon

yellow icon

Russia

Any Russian (ru-**)

Dubs or Subtitles

green icon

green icon

green icon

green icon

Bahrain

Arabic (ar-**)1

Dubs or Subtitles

yellow icon

yellow icon

yellow icon

yellow icon

Egypt

Arabic (ar-**)1

Dubs or Subtitles

yellow icon

yellow icon

yellow icon

yellow icon

Jordan

Arabic (ar-**)1

Dubs or Subtitles

yellow icon

yellow icon

yellow icon

yellow icon

Lebanon

Arabic (ar-**)1

Dubs or Subtitles

yellow icon

yellow icon

yellow icon

yellow icon

Niger

Any English (en-**)1 or any French (fr-**)1

Dubs or Subtitles

yellow icon

yellow icon

yellow icon

yellow icon

Oman

Arabic (ar-**)1

Dubs or Subtitles

yellow icon

yellow icon

yellow icon

yellow icon

Qatar

Arabic (ar-**)1

Dubs or Subtitles

yellow icon

yellow icon

yellow icon

yellow icon

United Arab Emirates

Arabic (ar-**)1

Dubs or Subtitles

yellow icon

yellow icon

yellow icon

yellow icon

Saudi Arabia

Arabic (ar-**)1

Dubs or Subtitles

yellow icon

yellow icon

yellow icon

yellow icon

Thailand

Thai (th-**)1

Subtitles

orange icon

orange icon

yellow icon

yellow icon

Vietnam

Vietnamese (vi-**)1

Subtitles

orange icon

orange icon

yellow icon

yellow icon

1 The two asterisks (**) are placeholders for a region subtag and indicate that assets with the specified language subtag and any region subtag (or no region subtag) will satisfy minimum storefront requirements. For example, if fr-** is required, that requirement can be fulfilled by fr, fr-FR, or fr-CA.

2 The minimum storefront requirement can be fulfilled in a territory if both the Original Spoken Locale (OSL) language and audio is provided in the specified language.

3 Title treatment for 2x3 Poster Art & 16x9 Cover Art should be dual language: Cantonese and English.

Regional Data Requirements

The regions below have ratings requirements for film and TV. When applicable, supply the consumer advisory code and a rating reason via the feed per the UMC Catalog Specification. The consumer advice labels are issued in the form of initials - not the full advice. Refer to the Content Advisories and Ratings addendum for a full list of ratings and advisories. You can opt to use the content advisory descriptors in the addendum as the rating reason value.

Brazil

TV and Films delivered for distribution in Brazil need a local rating. To obtain a rating, do one of the following:

  • Submit the film to the National Secretariat of Justice of the Brazilian Ministry of Justice (“NSJ”) for an official review and rating classification.

  • If the film has never received an official rating for distribution in Brazil, you can designate the appropriate rating yourself using the guidance issued by the NSJ.

Full guidance can be found here and it can be displayed in English by selecting the link “Inglês.”

See the official website here and they can be contacted at the following email address: classificacaoindicativa@mj.gov.br

The NSJ also issues content descriptors that act as consumer advice and are specific to each film. For self-rated content, if a provider chooses to designate descriptors, then they should also be selected in line with the same guidance.

Colombia

In order to make your content visible in Colombia, you will need to provide the country of origin for your Apple TV Channels video content. This field is defined in the Item Schema Definition and can be delivered through the UMC catalog feed. It will be required on TV episodes, TV seasons, and movies. Bonus episodes and sporting events are included.

Europe

In order to make your content visible in a set of European countries, you must provide the country of origin, production country, and the original spoken locale for your Apple TV Channels video content. The fields are defined in the Item Schema Definition and can be delivered through the UMC catalog feed. These fields will be required for TV episodes, TV seasons, and movies. Bonus episodes and sporting events are included.

Below are the countries that will require these fields:

Austria (AT), Belgium (BE), Bulgaria (BG), Croatia (HR), Cyprus (CY), Czech Republic (CZ), Denmark (DK), Estonia (EE), Finland (FI), France (FR), Germany (DE), Greece (GR), Hungary (HU), Iceland (IS), Ireland (IE), Italy (IT), Latvia (LV), Liechtenstein (LI), Lithuania (LT), Luxembourg (LU), Malta (MT), Netherlands (NL), Norway (NO), Poland (PL), Portugal (PT), Romania (RO), Slovakia (SK), Slovenia (SI), Spain (ES), Sweden (SE), and United Kingdom (GB).

Germany

To comply with reporting requirements to the German Federal Film Board, you must provide accurate data for theatrical releases. A theatrical release is defined as a movie that has been released in cinemas for payment in Germany or its territory of origin. If the film was not released theatrically, you are required to provide a digital release date. Provide this information through the UMC Catalog Data Feed.

India

India has consumer advice labels that are specific to film and TV. Where consumer advice has been issued, it must be displayed on the Apple TV App.

Delivering an advisory is not required for films with a U rating; Apple will always display the advisory "Content Suitable for All Ages” for U-rated films. The remaining ratings (U/A 7+, U/A 13+, U/A 16+, and A) require at least one advisory.

Movies sold in India that contain a smoking and/or drinking alcohol health warning, must include a pre-roll with a legal warning card. The video subtype that must be used for this pre-roll is <subtype>warning</subtype>.

For more information, refer to the Pre-Roll and Post-Roll Video Specification.

New Zealand

TV and Films delivered for distribution in New Zealand need an official label, containing an age rating classification, from the Film and Video Labeling Body (FVLB).

Note: The label must specifically cover online distribution, and a label that has been issued for DVD distribution only will not be sufficient. In order for the FVLB to issue a label for a film, the film will have to be reviewed and classified by the New Zealand Office of Film and Literature Classification, or have been given an unrestricted classification in Australia or the UK. For more information on the classification and labeling process, they can be contacted at the following email address: enquiries@fvlb.org.nz

In addition to the age rating, the FVLB issues consumer advice which is specific to each film, and it is a legal requirement that the consumer advice is displayed on on the Apple TV App.

South Africa

TV and Films delivered for distribution in South Africa that have been rated by the Film and Publication Board (“FPB”) should be delivered with both the rating and the corresponding consumer advice labels. Consumer advice labels must also be displayed on the Apple TV App. They can be contacted at the following email address: clientsupport@fpb.org.za

Switzerland

An ISAN or V-ISAN is required for movies at least 60 minutes in length distributed in Switzerland. The ISAN is entered as an externalContentId via the UMC Catalog Data Feed. For more information, review the Item Schema Definition.

ISAN (International Standard Audiovisual Number) is an industry standard used to uniquely identify audiovisual works. For more information, review the Item Schema Definition.

Learn more about ISAN.

United Kingdom

All films require BBFC Ratings. For TV, BBFC ratings should only be used when provided by or authorized by the BBFC. For TV content that does not have a BBFC rating and is deemed not suitable for children, use “C” (Caution) as part of the “uk-tv” rating system. If the content is deemed suitable for children, ratings are not required.

United States

All Apple TV Channel deliveries in the U.S. require assets with closed captions. Learn more about how to implement closed captions.

Universal Advisories

The following list will be accepted for any country where advisories are not already defined.

Advisory

Definition

AC

Alcohol Consumption

C

Criminal Activity

D

Drugs or Drug Use

FV

Fantasy Violence

G

Gambling

GV

Graphic Violence

H

Horror

B

Imitable Behavior

L

Language

N

Nudity

ML

Mild Language

MV

Mild Violence

MT

Mild Themes

MSD

Mild Suggestive Dialogue

MH

Mild Horror

P

Prejudice

PPS

Contains sequences of flashing lights or patterns

R

Religiously Sensitive

SC

Sexual Content

SV

Sexual Violence

T

Smoking or Tobacco Use

SD

Suggestive Dialogue

V

Violence

Vietnam

When provided by the ministry, please include a valid advisory. The advisories for Vietnam are listed in the Content Advisories Addendum.

EU Portability for Video Subscription Partners

If your Apple TV Channel is available in the European Union i.e. your content has a valid offer in the EU, you are required to provide device_location restrictions to support cross-border portability laws — one for each EU country.

<?xml version="1.0" encoding=“UTF-8"?><umcAvailability version="3.5" xmlns:umc="http://www.tbd.com/spec/umc-avail/"> <lastBuildDate>2018-08-07T10:00:14+01:00</lastBuildDate> <service teamId="VT6C486PNU" serviceId="com.acme.service.asv1"> <serviceType isAppleSubscription="true">vod</serviceType> <totalItemCount>2</totalItemCount> <serviceOffers> <serviceOffer> <offeringType>subscription</offeringType> <windowStart>2019-01-01T00:00:00Z</windowStart> <windowEnd>2255-01-01T00:00:00Z</windowEnd> <restrictions> <restriction type="device_location" relationship="allow">gra.apple.country.AT</restriction> <restriction type="device_location" relationship="allow">gra.apple.country.BE</restriction> <restriction type="device_location" relationship="allow">gra.apple.country.BG</restriction> <restriction type="device_location" relationship="allow">gra.apple.country.CY</restriction> <restriction type="device_location" relationship="allow">gra.apple.country.CZ</restriction> <restriction type="device_location" relationship="allow">gra.apple.country.DE</restriction> <restriction type="device_location" relationship="allow">gra.apple.country.DK</restriction> <restriction type="device_location" relationship="allow">gra.apple.country.EE</restriction> <restriction type="device_location" relationship="allow">gra.apple.country.ES</restriction> <restriction type="device_location" relationship="allow">gra.apple.country.FI</restriction> <restriction type="device_location" relationship="allow">gra.apple.country.FR</restriction> <restriction type="device_location" relationship="allow">gra.apple.country.GR</restriction> <restriction type="device_location" relationship="allow">gra.apple.country.HR</restriction> <restriction type="device_location" relationship="allow">gra.apple.country.HU</restriction> <restriction type="device_location" relationship="allow">gra.apple.country.IE</restriction> <restriction type="device_location" relationship="allow">gra.apple.country.IT</restriction> <restriction type="device_location" relationship="allow">gra.apple.country.LT</restriction> <restriction type="device_location" relationship="allow">gra.apple.country.LU</restriction> <restriction type="device_location" relationship="allow">gra.apple.country.LV</restriction> <restriction type="device_location" relationship="allow">gra.apple.country.MT</restriction> <restriction type="device_location" relationship="allow">gra.apple.country.NL</restriction> <restriction type="device_location" relationship="allow">gra.apple.country.PL</restriction> <restriction type="device_location" relationship="allow">gra.apple.country.PT</restriction> <restriction type="device_location" relationship="allow">gra.apple.country.RO</restriction> <restriction type="device_location" relationship="allow">gra.apple.country.SE</restriction> <restriction type="device_location" relationship="allow">gra.apple.country.SI</restriction> <restriction type="device_location" relationship="allow">gra.apple.country.SK</restriction> </restrictions> </serviceOffer> </serviceOffers

Catalog and Availability Feed Lookahead

For partners participating in Apple TV Channels or the Apple Video Partner Program, there are additional requirements for catalog and availability feed lookahead.

For catalog and availability data, every published update must include the following items:

  • All items currently available in this service.

  • All items that will become available within 72 hours following the feed’s publish time with the exception of items originating from live shows or other quick turn content previously discussed with Apple.

    Note: For Apple TV Channels, feeds must include all items that will become available within seven days following the feed’s publish time.