Table of Contents
Roku Search provides another way to convert Roku users into customers of your VOD channel, besides the Roku Channel Store. Roku Search is located on the main menu of the Roku home-screen, and allows Roku users to search for a particular movie, TV show/special, or actor/actress/director. Roku Search then allows users to see a list of providers and launch the provider's channel and go directly to the selected piece of content.
By participating in the Roku Search program, all of your content that matches any search, and your channel, is offered automatically to all Roku users who use Roku Search and can use your channel. (Search results are not shown outside the country specified)
After completing a search, the user can also add the results to My Feed, which provides updates on the content they have expressed an interest in previously.
Roku Search is only available in English, and only available in the U.S., Canada (English only), Ireland and the U.K. Roku Search only supports full-length movies and TV series, episodes, and specials. Roku Search does not support short-form or clip content.
Roku Search Algorithm
The algorithm for Roku Search is:
- A user selects Search from the Roku home-screen main menu.
- The user is presented with a keypad to enter a search string and a panel of search results. Initially, the user also is presented with a list of previous search results. The user does have the option of clearing their search history.
- As the user enters the search string, the system suggests search results from the Roku Search database that match. The user can select any search result at any time.
- After the user selects an actor or a director, a list of content titles that were done by that person appear.
- After the user selects a title then a content details screen will appear. The user can also select a title directly in step #3. This screen has a list of providers.
- If the title is a series then a list of seasons appears. Once the user selects a season then a list of providers will appear.
- Once the user selects a provider, that provider's channel is launched and you go directly to the selected piece of content.
- If the user does not have the provider's channel installed it will prompt the user to install the channel.
Content Details Screen
The content details screen includes:
- artwork, such as DVD cover art, or TV show banners
- content information, such title, description, rating, actors, director, run time, production year, genre
- a selectable list of content provider items for the movie or TV show, including an option to add the movie or TV show to the personal My Feed of the user
Each item in the content provider list includes:
- the logo of the content provider
- the terms to acquire the movie or TV show
- an indication if the movie or TV show is available in HD
- the number of episodes available for TV shows
- a checkmark if the user has installed the content provider VOD channel on their Roku Media Player
Each item, when selected by the user, will "deep link" into the content provider channel. The link could be to a content provider movie details screen, TV season episode list screen, or TV episode details screen, or other screen, depending on the content selected, the content provider, and whether the user has installed the content provider VOD channel.
Content Provider List Order
Content providers are sorted on the content details screen in the following order:
- Authenticated SVOD (subscription) or TVE (cable/satellite) channels
- Free advertising channels
- Unauthenticated SVOD or TVE channels
- Purchase or rental price
When more than one content provider meets the same criteria, the order is randomized.
Content Meta-Data Database
User search strings are compared to a master database of content meta-data maintained by Roku. Content providers who participate in the Roku Search program must supply Roku with an XML file listing their currently-available content and content meta-data, which is then incorporated into the Roku master database four times a day. Currently content is pulled at 1:00am, 7:00am, 1:00pm and 7:00pm. The process of reconciling all of the data sources is quite long so we ask you to give us 24 hours for changes to propagate to production.
Integrating Your VOD Channel Content Into Roku Search
This is what you need to do to participate in the Roku Search program:
- Create an up-to-date XML feed of your currently available content. – see below
- Create search artwork (store and list artwork) – see below
- Create a non-certified channel with the name <CHANNEL>SearchBeta where <CHANNEL> is the name of your production channel. Use the same name used when you upload the channel, not the name in the manifest.
- Submit an up-to-date XML feed of your available content to Roku using the correct XML schema. Here is the URL: https://developer.roku.com/search/feed_validator. We do not accept feeds which do not pass the validator.
- Send email to dl.searchsubmit@roku.com with your non-certified channel code, your feed URL, and your icons. Tell us if you think your deep linking already works.
- We will configure your XML feed to your non-certified channel and then you can test deep linking. Because non-certified channels publish automatically you can rapidly iterate to get the feature working.
- Once everything is working on the non-certified channel and any changes made have been published to the public channel then we can enable search on your public channel. There is a cert process that we do to make sure everything works.
- Make sure you have the infrastructure in place to keep the search feed up-to-date.
Third party support for Integrating Roku Search
Roku search is the most suitable way to make an app and content accessible to viewers. Universal Search and Discovery LLC (USAND LLC) provides outsourced Universal Search Feed Ingest and metadata Delivery Services for Roku’s platform. If a developer needs to seek help to integrate Roku Search in their channel, they can reach out to USAND.
USAND provides free, no obligation app feed assessments for suitability of universal search. The developer can send their existing app feed (in any form). For more information, visit the USAND website at www.universalsearch.io. You can also reach out to the USAND representative Steve Harnsberger at 415-987-2674 or steveh@universalsearch.io.
Search Artwork
You must provide artwork to display in the Roku Search interface. There are two formats, a small icon of your logo for your item in the content providers list on the content details screen and a larger, square logo used for randomized teasers in the search screen. This artwork must look similar to the artwork used to represent your channel in the Roku Channel Store, with your logo and brand colors.
Requirements
- PNG format only
- Square corners for the teaser logo
- Rounded corners for the small logo
- 143w x 113h pixels for the teaser logo
- 165w x 60h pixels for the small logo
- Use an inner shadow effect for the teaser logo to conform to the default Scene Graph list item focus appearance
- If a gradient is applied to the artwork, use a gradient with the light source at the top of the artwork
Search Artwork Templates
The following PSD templates can be used in an illustration tool to create the Roku Search artwork.
- Channel Store Teaser Artwork, FHD: searchProviderTile_FHD.psd
- Content Provider List Item Artwork, FHD: partnerLogo_template_FHD.psd
Deep Linking
Your channel will need to be updated to support deep linking with the play IDs provided in your feed. Deep linking works by sending command line arguments, via the roAssociativeArray named "args", your channel. Args should be parsed by the channel launch time and the correct content brought up. Just launching the channel will not pass certification.
Function Main(args as Dynamic) as void if (args <> invalid) contentID = args.contentID contentType = args.mediatype ... End Function
A tricky item. In your feed, there is a tag called PlayID which gets passed into the channel as ContentID.
A 2nd tricky item. If in search, the user selects "series", then a "season", it will not deep link using the PlayID for the series. It will instead use one of the PlayIDs for one of the episodes in the selected season.
A 3rd tricky item. When the deep link comes through, it has a contentType of “season” not a “series.”
Here is a snippet from a working XML feed:
<movie tmsId="MV003837380000"> <title>The Adventures of Chris Fable</title> <videos> <video> <region>us</region> <playId>bbtv://vod/asset_id/2dd3cf6fcf644453a0792cd1a60c3be2</playId> <viewOptions> <option> <quality>SD</quality> <license>rental</license> <price>1.99</price> <currency>USD</currency> </option> </viewOptions> </video> </videos> </movie>
Here is what is the "args" passed in when the piece of content above was selected:
splashTime: 1973 source: meta-search contentid: bbtv://vod/asset_id/2dd3cf6fcf644453a0792cd1a60c3be2 instant_on_run_mode: foreground mediatype: movie action: display lastExitOrTerminationReason: EXIT_UNKNOWN
This contentID means something to this channel's developer. As far as Roku is concerned it is just a string however. Some channels use numbers, some user URLs, some use name/value pairs delimited by "|".
Testing your channel for search
There are two ways to test. The first one is to manually trigger the deep link via an ECP command. This boils down to a "curl" to the ECP port where you specify the ContentID and the MediaType as parameters to the URL. See External Control API#3.3ImplementingDeepLinkinginaChannel
The other way to test is with a live system. We use the <channel name>PrivateSearchBeta channel you created for live, end-to-end testing. We configure your feed to point to this channel when we test it. Because non-certified channels are published automatically you can make changes, upload them, update your system, and see your changes in production immediately.
XML Feed Schemas
You must provide an up-to-date XML feed web location for your VOD channel.
Optional security
The only security we support for the XML feed is basic username and password authentication in the HTTP request-header.
Your XML feed should contain content meta-data for each title in your catalog, as described in Search Meta-Data. The XML files from your feed location will be uploaded and incorporated into the Roku Search master database four times a day.
There are two schemas used for XML feeds to the Roku master database:
- Schemas Using the Gracenote TMS Database
- Schemas Without the TMS Database
The two differ in the amount of meta-data you must supply, and whether you need to supply a TMS ID that corresponds to the deep-link playID(s) of your content item(s).
Schemas Using the TMS Database
One schema incorporates meta-data from the Gracenote TMS database, a database of movies and TV shows. To use this database, you must supply the minimal data required to allow Roku users to purchase and play your content items, such as playID, pricing, and so forth. You must also identify the TMS ID for the corresponding content item(s) you make available to Roku users.
The TMS ID is a 14-character scheme used to uniquely identify movie and TV show content (for example, MV123456780000). These IDs are used to match titles in your currently-offered content catalog back to specific title entries in the master Roku Search database.
The first two characters in the ID represent the unique ID domain applied to the program record:
ID | Domain |
---|---|
MV | Movie (theatrical, made-for-television, direct-to-video) |
SH | TV Show |
EP | TV Episode |
The next 12 characters will be the unique numeric value within that database. This implies that the numeric sequence could be identical across the four ID domains.
By using the TMS IDs, Roku only needs limited information from you to display full content meta-data. Please contact Gracenote directly about acquiring IDs for your content.
Schemas Without the TMS Database
The second schema requires you to provide more meta-data. You will also provide your own unique, immutable playID for each item instead of the TMS-ID.
XML Validation
Roku cannot incorporate your XML files into the master database unless it conforms to the correct XML schema. Refer to Search Meta-Data for details on the required and optional meta-data for Roku Search. The following are two sample XML files, one that uses the TMS database, the other without the TMS database:
- TMS: roku-parter-content-feed-example-tms-id_2015-06-01.xml
- Non-TMS: roku-partner-content-feed-example-non-tms-id-2015-06-02.xml
Make sure to validate your XML feed against one of the two following XML schema (.xsd
) files before submitting it to Roku:
- TMS: partner-feed-tms-validator.xsd
- Non-TMS: partner-feed-validator.xsd
Search Meta-Data
The following tables describe the required and optional meta-data fields used in the XML feed files for Roku Search.
Although many fields are optional, the more meta-data you include, the greater the probability your content will be returned in the user search results.
Movie Meta-Data (TMS)
Field | Required | Description |
---|---|---|
movies/movie/@tmsId | Required | Gracenote TMS ID for a specific movie. |
... movie/title | Optional | Optional, but very helpful |
… movie/videos/video | Required | The videos element lists all the video content items corresponding to the specific movie identified by the movie/@tmsId attribute. Each child video element must have a unique play ID, and provide meta-data indicating availability, pricing and other specifics about that specific video content item available on your channel. |
… video/playId | Required | A value you provide for each title in your XML feed that we will pass back to your channel when a user selects your service as a provider for a specific title (see Play IDs and Deep Linking). |
… video/region | Optional | Can be one of the following 2-character ISO codes (can be either uppercase or lowercase):
|
… video/viewOptions/option | Required | Used to provide video viewing options. |
… option/quality | Required | The resolution of the video content item. Must be one of the following (can either be uppercase or lowercase):
|
… option/license | Required | The type of license terms for the video content item. Must be one of the following (can either be initial capitalization or all lowercase):
|
… option/price | Required if option/license is set to purchase or rental, defaults to 0.00 if option/license is set to subscription or free | Price, that must include two decimal point places, such as "1.90", "1.99", or "2.00". If the price is "0.00", set option/license to "subscription" or "free" rather than setting option/price to "0.00", and option/price will be set to "0.00" by default. |
… option/currency | Optional | The type of currency that denominates the price. Must be one of the following (can either be uppercase or lowercase):
|
Movie Meta-Data (non-TMS)
Field | Required | Description |
---|---|---|
movies/movie/@id | Required | Your immutable reference ID for that movie. Note: Once assigned to a content item, you cannot change the reference ID or use it for another content item in the Roku Search metadata. |
... movie/titles/title | Required | Movie title. We use this value for matching. Please don’t include extra information like year, version label, and so forth. |
… title/@language | Optional | Default: en (Roku Search is currently only available in English.) |
… movie/images/image | Optional | Although this is optional, we recommend that you include it for items where you unsure about whether we can or cannot match your content. |
… image/url | Required |
Image dimensions must be 240 x 360 (W x H) pixels. |
… image/@language | Optional | Default: en (Roku Search is currently only available in English.) |
… image/@category | Required | Must one of the following:
|
… movie/descriptions/description | Required | You must provide a movie description that does not exceed 60 characters. You should (though are not required) to also provide longer descriptions not to exceed 500 characters (the maximum length is set by the description/@length attribute). |
… description/@language | Optional | Default: en (Roku Search is currently only available in English.) |
… description/@length | Optional | Maximum character value for the short/long description. Must be one of the following:
|
… movie/runTime | Required | Runtime in seconds |
… movie/releaseYear | Required | Year initially released or first aired |
… movie/crew/person, … movie/cast/person | Optional | Used to provide a list of cast and crew members. Note: Roku recommends you provide this if there is a chance Roku data cannot match your data. |
… cast/person/role | Required if a cast person is provided | Must be one of the following:
|
… crew/person/role | Required if a crew person is provided | Must be one of the following:
|
… person/firstName | Required if person provided | First Name or abbreviation |
… person/middleName | Optional | Middle Name or abbreviation |
… person/lastName | Optional | Last Name |
… person/birthDate | Optional |
|
… person/deathDate | Optional |
|
… person/image | Optional |
Image dimensions must be 270 x 360 (W x H) pixels. |
… movie/ratings/rating | Optional | Localized parental rating of movie |
… rating/rating | Required if rating provided | Must be a value found in Acceptable Parental Ratings |
… rating/source | Required if rating provided | Must be either:
|
… movie/keywords/keyword | Optional | Keywords used to describe movie |
… keyword/type | Required only if keyword | Must be:
|
… keyword/word | Optional | Users cannot search by keyword, however our meta-data structure supports them. For example, here are keywords for the movie Argo by keyword type: Mood
Theme
Subject
Time Period
Setting
Character
|
… keyword/@language | Optional | Default: en (Roku Search is currently only available in English.) |
… movie/genres/genre | Optional | Must be found in Acceptable Genres. |
… movie/videos/video | Required | The videos element lists all the video content items corresponding to the specific movie identified by the movie/@id attribute. Each child video element must have a unique play ID, and provide meta-data indicating availability, pricing and other specifics about that specific video content item available on your channel. |
… video/playId | Required | A value you provide for each title in your XML feed that we will pass back to your channel when a user selects your service as a provider for a specific title (see Play IDs and Deep Linking). |
… video/region | Optional | Can be one of the following 2-character ISO codes (can be either uppercase or lowercase):
|
… video/viewOptions/option | Required | Used to provide video viewing options. |
… option/quality | Required | The resolution of the video content item. Must be one of the following (can either be uppercase or lowercase):
|
… option/license | Required | The type of licensing terms for the video content item. Must be one of the following (can either be initial capitalization or all lowercase):
|
… option/price | Required if option/license is set to purchase or rental, defaults to 0.00 if option/license is set to subscription or free | Price, that must include two decimal point places, such as "1.90", "1.99", or "2.00". If the price is "0.00", set option/license to "subscription" or "free" rather than setting option/price to "0.00", and option/price will be set to "0.00" by default. |
… option/currency | Optional | The type of currency denominated by price. Must be one of the following (can be either uppercase or lowercase):
|
TV Meta-Data (TMS)
Field | Required | Description |
---|---|---|
seriesItems/series/@tmsId | Required | Gracenote TMS ID for a specific TV series. |
... series/title | Optional | Optional, but very helpful |
… series/episodes/episode | Required | At least one episode must be included for a series |
episode/@tmsId | Required | Gracenote TMS ID for a specific TV episode. |
... episode/title | Optional | Optional, but very helpful |
… episode/videos/video | Required | The videos element lists all the video content items corresponding to the specific TV episode identified by the episode/@tmsId attribute. Each child video element must have a unique play ID, and provide meta-data indicating availability, pricing, and other specifics about that specific video content item available on your channel. |
… video/playId | Required | A value you provide for each title in your XML feed that we will pass back to your channel when a user selects your service as a provider for a specific title (see Play IDs and Deep Linking). |
… video/region | Optional | Can be one of the following 2-character ISO codes (can be either uppercase or lowercase):
|
… video/viewOptions/option | Required | Used to provide video viewing options. |
… option/quality | Required | The resolution of the video content item. Must be one of the following (can be either uppercase or lowercase):
|
… option/license | Required | The type of licensing terms for the video content item. Must be one of the following (can be either initial capitalization or all lowercase):
|
… option/price | Required if option/license is set to purchase or rental, defaults to 0.00 if option/license is set to subscription or free | Price, that must include two decimal point places, such as "1.90", "1.99", or "2.00". If the price is "0.00", set option/license to "subscription" or "free" rather than setting option/price to "0.00", and option/price will be set to "0.00" by default. |
… option/currency | Optional | The type of currency denominated by price. Must be one of the following (can be either uppercase or lowercase):
|
TV Meta-Data (non-TMS)
Field | Required | Description |
---|---|---|
seriesItems/series/@id | Required | Your immutable reference ID for that TV series. Once assigned to a content item, you cannot change the reference ID or use it for another content item in the Roku Search meta-data. |
… series/titles/title | Required | Used for providing titles. We use this field for matching. |
… title/@language | Options | Default: en (Roku Search is currently only available in English.) |
… series/images/image | Optional | Used to provide images for this tv series. Optional but highly recommended if you’re not confident that we can match your data. |
… image/url | Required | http://your_domain/your_image_path Image dimensions must be 360 x 270 (W x H) pixels. |
… image/@language | Optional | Default: en (Roku Search is currently only available in English.) |
… series/descriptions/description | Required | You must provide a movie description that does not exceed 60 characters. You should (though are not required) to also provide longer descriptions not to exceed 500 characters (the maximum length is set by the description/@length attribute). |
… description/@language | Optional | Default: en (Roku Search is currently only available in English.) |
… description/@length | Optional | The maximum character value for the short/long description. Must be one of the following:
|
… series/originalAirDate | Optional |
Optional but very important. We recommend that you provide this. |
… series/crew/person, | Optional | Used to identify cast and crew members |
… cast/person/role | Required if a cast person is provided | Must be one of the following::
|
… crew/person/role | Required if a crew person is provided | Must be one of the following:
|
… person/firstName | Required if person provided | First Name or abbreviation. Used for matching. |
… person/middleName | Optional | Middle Name or abbreviation |
… person/lastName | Optional | Last Name. Used for matching. |
… person/birthDate | Optional |
Used for matching. |
… person/deathDate | Optional |
|
… person/image | Optional | http://your_domain/your_image_path Image dimensions must be 270 x 360 (W x H) pixels. |
… series/seasons/season | Required | Used to include data for seasons |
… season/seasonNumber | Required | Sequential season number |
… season/images/image/url | Required | http://your_domain/your_image_path Image dimensions must be 360 x 270 (W x H) pixels. |
… season/images/image/@language | Optional | Default: en (Roku Search is currently only available in English.) |
… season/episodes/episode | Required | At least one episode must be included for a series |
… episode/@id | Required | Your immutable reference ID for episode. Once assigned to a content item, you cannot change the reference ID or use it for another content item in the Roku Search meta-data. |
… episode/episodeNumber | Required | Sequential episode number |
… episode/airDate | Optional |
Optional but recommended. This is helpful for matching and such. |
… episode/titles/title | Required | Series title |
… title/@language | Optional | Default: en (Roku Search is currently only available in English.) |
… episode/images/image | Optional | Image used for episode |
… image/url | Required |
Image dimensions must be 360 x 270 (W x H) pixels. |
… image/@language | Optional | Default: en (Roku Search is currently only available in English.) |
… episode/descriptions/description | Required | You must provide a movie description that does not exceed 60 characters. You should (though are not required) to also provide longer descriptions not to exceed 500 characters (the maximum length is set by the description/@length attribute). |
… description/@language | Optional | Default: en (Roku Search is currently only available in English.) |
… description/@length | Optional | Must be the maximum character value for the short/long description:
|
… episode/crew/person, | Optional | A cast or crew member. Roku recommends that you provide complete data for this if you’re not sure that we can match the episode. |
… cast/person/role | Required if a cast person is provided | Must be one of the following:
|
… crew/person/role | Required if a crew person is provided | Must be one of the following:
|
… person/firstName | Required if person provided | First Name or abbreviation. Used for matching. |
… person/middleName | Optional | Middle Name or abbreviation |
… person/lastName | Optional | Last Name. Used for matching. |
… person/birthDate | Optional |
Used for matching. |
… person/deathDate | Optional |
|
… person/image | Optional | http://your_domain/your_image_path Image dimensions must be 270 x 360 (W x H) pixels. |
… episode/ratings/rating | Optional | Localized parental rating of movie |
… rating/rating | Required if rating provided | Must be a value from Acceptable Parental Ratings |
… rating/source | Required if rating provided | Must be either:
|
… episode/keywords/keyword | Optional | Keywords used to describe movie |
… keyword/type | Required only if keyword | Must be:
|
… keyword/word | Optional | Users cannot search by Keyword, however our meta-data structure supports them. For example, here are keywords for the movie Argo by keyword type: Mood
Theme
Subject
Time Period
Setting
Character
|
… keyword/@language | Optional | Default: en (Roku Search is currently only available in English.) |
… episode/videos/video | Required | The videos element lists all the video content items corresponding to the specific TV episode identified by the episode/@id attribute. Each child video element must have a unique play ID, and provide meta-data indicating availability, pricing, and other specifics about that specific video content item available on your channel. |
… episode/genres/genre | Optional | Must be found in Acceptable Genres. |
… video/playId | Required | A value you provide for each title in your XML feed that we will pass back to your channel when a user selects your service as a provider for a specific title (see Play IDs and Deep Linking). |
… video/region
| Optional
| Must be one of the following 2-character ISO codes (can be either uppercase or lowercase):
|
… video/viewOptions/option | Required | You must provide at least one option. |
… option/quality | Required | The resolution of the video content item. Must be one of the following (can be either uppercase or lowercase):
|
… option/license | Required | The type of licensing terms for the video content item. Must be one of the following (can be either initial capitalization or all lowercase):
|
… option/price | Required if option/license is set to purchase or rental, defaults to 0.00 if option/license is set to subscription or free | Price, that must include two decimal point places, such as "1.90", "1.99", or "2.00". If the price is "0.00", set option/license to "subscription" or "free" rather than setting option/price to "0.00", and option/price will be set to "0.00" by default. |
… option/currency | Optional | The currency that denominates price. Must be one of the following (can either be uppercase or lowercase):
|
Acceptable Genres
All acceptable genres may have either initial capitalization of the first word or all lower-case.
- action
- action sports
- adventure
- aerobics
- agriculture
- animals
- animated
- anime
- anthology
- archery
- arm wrestling
- art
- arts/crafts
- auction
- auto
- auto racing
- aviation
- awards
- badminton
- ballet
- baseball
- basketball
- beach soccer
- beach volleyball
- biathlon
- bicycle
- bicycle racing
- billiards
- biography
- blackjack
- boat
- boat racing
- bobsled
- bodybuilding
- bowling
- boxing
- bullfighting
- bus./financial
- canoe
- card games
- cheerleading
- children
- children-music
- children-special
- children-talk
- collectibles
- comedy
- comedy drama
- community
- computers
- consumer
- cooking
- cricket
- crime
- crime drama
- curling
- dance
- dark comedy
- darts
- debate
- diving
- docudrama
- documentary
- dog racing
- dog show
- dog sled
- drag racing
- drama
- educational
- entertainment
- environment
- equestrian
- erotic
- event
- exercise
- fantasy
- fashion
- fencing
- field hockey
- figure skating
- fishing
- football
- fundraiser
- gaelic football
- game show
- gaming
- gay/lesbian
- golf
- gymnastics
- handball
- health
- historical drama
- history
- hockey
- holiday
- holiday music
- holiday music special
- holiday special
- holiday-children
- holiday-children special
- home improvement
- horror
- horse
- house/garden
- how-to
- hunting
- hurling
- hydroplane racing
- indoor soccer
- interview
- intl soccer
- kayaking
- lacrosse
- law
- luge
- martial arts
- medical
- military
- miniseries
- mixed martial arts
- motorcycle
- motorcycle racing
- motorsports
- mountain biking
- music
- music special
- music talk
- musical
- musical comedy
- mystery
- nature
- news
- newsmagazine
- olympics
- opera
- outdoors
- parade
- paranormal
- parenting
- performing arts
- playoff sports
- poker
- politics
- polo
- pool
- pro wrestling
- public affairs
- racquet
- reality
- religious
- ringuette
- rodeo
- roller derby
- romance
- romantic comedy
- rowing
- rugby
- running
- sailing
- science
- science fiction
- self improvement
- shooting
- shopping
- sitcom
- skateboarding
- skating
- skeleton
- skiing
- snooker
- snowboarding
- snowmobile
- soap
- soap special
- soap talk
- soccer
- softball
- special
- speed skating
- sports talk
- squash
- standup
- sumo wrestling
- surfing
- suspense
- swimming
- table tennis
- talk
- technology
- tennis
- theater
- thriller
- track/field
- travel
- triathlon
- variety
- volleyball
- war
- water polo
- water skiing
- watersports
- weather
- weightlifting
- western
- wrestling
- yacht racing
Acceptable Parental Ratings
- 12
- 12A
- 14+
- 14A
- 15
- 18
- 18+
- 18A
- A
- AA
- C
- C8
- E
- G
- NC-17
- PG
- PG-13
- R
- R18
- TV14
- TVG
- TVMA
- TVPG
- TVY
- TVY14
- TVY7
- U
- Uc
- UNRATED
Attachments:
searchresults.jpg (image/jpeg)
searchscreen80.jpg (image/jpeg)
searchresults80.jpg (image/jpeg)
searchalgo.png (image/png)
searchalgo.png (image/png)
roku-partner-content-feed-example-non-tms-id-2015-06-02.xml (text/xml)
roku-parter-content-feed-example-tms-id_2015-06-01.xml (text/xml)
partner-feed-tms-validator.xsd (application/octet-stream)
partner-feed-validatornontms.xsd (application/octet-stream)
searchalgo.png (image/png)
searchalgo.jpg (image/jpeg)
searchlogodims.jpg (image/jpeg)
searchProviderTile_HD.psd (image/photoshop)
searchProviderTile_SD.psd (image/photoshop)
partnerLogo_template_HD.psd (image/photoshop)
partnerLogo_template_HD.psd (image/photoshop)
partnerLogo_template_SD.psd (image/photoshop)
partner-feed-tms-validator.xsd (application/octet-stream)
partner-feed-validatornontms.xsd (application/octet-stream)
partner-feed-validatornontms.xsd (application/octet-stream)
harrisonFord.jpg (image/jpeg)
harrisonFord.jpg (image/jpeg)
GameOThrones.jpg (image/jpeg)
partner-feed-validator.xsd (application/octet-stream)
partner-feed-tms-validator.xsd (application/octet-stream)
partner-feed-validator.xsd (application/octet-stream)
Capture.PNG (image/png)
roku-partner-content-feed-example-non-tms-id-2015-06-02.xml (text/xml)
roku-partner-content-feed-example-non-tms-id-2015-06-02.xml (text/xml)
partner-feed-validator.xsd (application/octet-stream)
partner-feed-tms-validator.xsd (application/octet-stream)
searchProviderTile_FHD.psd (image/vnd.adobe.photoshop)
partnerLogo_template_FHD.psd (image/vnd.adobe.photoshop)
partner-feed-validator.xsd (application/xml)