Integrating with SpotX for Connected TV (CTV)

Integrating with SpotX for Connected TV (CTV)

CTV Integration Parameters

Application Data

ParameterVAST ParameterTypeCTV
App Nameapp[name]StringRequired
Application Bundleapp[bundle]StringRequired
App Domainapp[domain]StringRecommended
App Categoryapp[cat]StringRecommended
Application Versionapp[ver]StringRecommended
Application Privacy Policyapp[privacypolicy]IntegerRecommended
Application Store URLapp[storeurl]StringRecommended when available

Content Data

ParameterVAST ParameterTypeCTV
Content Genrecontent[genre]StringGenre of video content
Content Languagecontent[language]StringPlayback language of the video
Content Livestreamcontent[livestream]IntegerIndicates if video content is a live stream where 1 is live and 0 is not live
Content Producercontent[producer]StringName of content producer
Content Seriescontent[series]StringName of the video content series
Content Titlecontent[title]StringIndividual name of the video content

Device Data

ParameterVAST ParameterTypeCTV
IP Addressip_addrStringRequired for server side integrations only
Device Typedevice[devicetype]IntegerRequired, where 3 is SmartTV, and 7 is Set Top Box.
Device User Agentdevice[ua]StringRequired for server side integrations only
Device Apple IDFA or Google Advertising ID (Clear Text)device[ifa]StringRequired when available on device
Device Makedevice[make]StringRequired
Device Modeldevice[model]StringRequired
Device Do Not Trackdevice[dnt]StringRecommended
Cache BustercbIntegerRecommended

Server-Side Ad Insertion Data

ParameterVAST ParameterTypeCTV
SSAIssai[enabled]IntegerRequired for server side ad insertion integrations only where 1 is SSAI is being used and 0 is it is not being used
SSAI Vendorssai[vendor]StringRequired for server side ad insertion integrations only. Vendor name being used

Ad Format

FormatVAST ParameterExplanation
MP4 or RokuVPI=MP4
SpotX will respond with only MP4 creatives for Connected TV publishers. This is compatible with most CTV platforms.
player_heightplayer_height=1080Can be hardcoded as 1080.
player_widthplayer_width=1920Can be hardcoded as 1920.

Sample Connected TV – Use for Testing

The ad tags below can be used to test your Connected TV application integration with SpotX.

You will need to replace the [REPLACE_ME] placeholders with actual data at the time the ad request is made to SpotX. This is usually accomplished by adding your own macros into these ad tags where available. Be sure to encode values where possible.

A list of popular third party macros can be found in the SpotX Macros Guide.

When the appropriate parameters are replaced, the sample tags below should return a test ad 100% of the time. Make sure not to place these in a live environment as they are for testing only.

For additional integration information, including a link to the SpotX tag generator, please visit the Publisher Integrations Test page.

Once you are seeing an ad, notify your SpotX Integration contact so that your integration may be approved.

Sample Connected TV VAST Tag for Testing – MP4 Ads Only[bundle]=[REPLACE_ME]&app[name]=[REPLACE_ME]&app[cat]=[REPLACE_ME]&app[domain]=[REPLACE_ME]&app[privacypolicy]=[REPLACE_ME]&app[storeurl]=[REPLACE_ME]&app[ver]=[REPLACE_ME]&cb=[REPLACE_ME]&device[devicetype]=[REPLACE_ME]&device[ifa]=[REPLACE_ME]&device[make]=[REPLACE_ME]&device[model]=[REPLACE_ME]&device[dnt]=[REPLACE_ME]&player_height=[REPLACE_ME]&player_width=[REPLACE_ME]&ip_addr=[REPLACE_ME]&device[ua]=[REPLACE_ME]

Example of a properly formatted and complete connected TV ad request to SpotX[bundle]=roku.weatherapp&app[name]=myctvapp&app[cat]=IAB6-8&app[domain][privacypolicy]=1&app[storeurl][ver]=1.2.1&cb=7437276459847&device[devicetype]=7&device[ifa]=236A005B-700F-4889-B9CE-999EAB2B605D&device[make]=Roku&device[model]=Roku&device[dnt]=0&player_height=1080&player_width=1920&ip_addr=[ua]=Roku%2FDVP-7.10%2520(047.10E04062A)

Parameter Notes and Examples

Application Data

App Bundle

An ID unique to each application that defines the application bundle or package name. Bundle IDs do not exist in all CTV environments; however, they are extremely important for programmatic advertisers from a targeting standpoint. SpotX requires that all CTV publishers pass a bundle ID for each application. If your CTV application does not have a bundle ID, please create one by using the following naming convention- CTVenvironment.appname.

Example: app[bundle]=roku.weatherapp -or- lgtv.weatherapp

App Category

Defines the array of IAB content categories for the overall application. See the Content Categories table.

Example: app[cat]=IAB6-8

App Domain

Defines the unique domain of the application.

Example: app[domain]=

App Name

Defines the name of the application.

Example: app[name]=mygame

App Privacy Policy

Defines whether the application has a privacy policy. “1” means there is a policy and “0” means there is not.

Example: app[privacypolicy]=1

App Store URL

Defines an app store URL for an installed app.

Example: app[storeurl]=

App Version

Defines the application version.

Example: app[ver]=1.2.1

Cache Buster

Defines a dynamically generated random number.

Example: cb=78948946351

Device Data

Device Apple IDFA or Google Advertising ID (Clear Text)

Unique Identifier for Advertisers such as Google Ad ID, Apple IDFA, or Roku’s RIDA.

Example: device[ifa]=236A005B-700F-4889-B9CE-999EAB2B605D

Device Do Not Track

Defines if the device should be tracked. If “0”, then do not track is set to false, if “1”, then do not track is set to true in browser.

Example: device[dnt]=0

Device IP

Defines the device IP address in IPv4.

Example: ip_addr=

Device Lat/Lon

Defines the Longitude and Latitude of where the device is located.

Example: device[geo][lat]=39.8967&device[geo][lon]=-105.0738

Device Make

Defines the make or manufacturer of the device.

Examples: Apple, Microsoft, Sony

Device Model

Defines the model of the device.

Examples: Apple TV, Xbox One, PlayStation 4

Device Type

Smart TVs are TVs with integrated internet (device type 3).

Example: Samsung, Sony, Vizio

Set Top Boxes are anything that connects to a TV (device type 7).

Examples: Roku, Apple TV, Fire TV, Xbox, PlayStation

Device User Agent

Defines the device user agent string.

Example: Roku%2FDVP-7.10%2520(047.10E04062A)

Player Height

Defines the height of the player in pixels.

Player Width

Defines the width of the player in pixels.

Required Documentation To Submit to SpotX

CTV App Onboarding Doc

It is important for SpotX to know what CTV apps you will be monetizing so that our media planning and demand facilitation teams can inform buyers of your inventory. As part of your onboarding process, please download SpotX’s CTV App Onboarding Doc, fill it out with information about your CTV apps and send it to your SpotX account team following your kick off call. Please note that SpotX needs this information for any new apps you start monetizing with SpotX in the future.

Content Categories Table

The following list represents the IAB’s contextual taxonomy for categorization. Standard IDs have been adopted to easily support the communication of primary and secondary categories for various objects.

  • IAB1 – Arts & Entertainment
  • IAB2 – Automotive
  • IAB3 – Business
  • IAB4 – Careers
  • IAB5 – Education
  • IAB6 – Family & Parenting
  • IAB7 – Health & Exercise
  • IAB8 – Food & Drink
  • IAB9 – Hobbies & Interests
  • IAB10 – Home & Garden
  • IAB11 – Law, Gov’t & Politics
  • IAB12 – News
  • IAB13 – Personal Finance
  • IAB14 – Society
  • IAB15 – Science
  • IAB16 – Pets
  • IAB17 – Sports
  • IAB18 – Style & Fashion
  • IAB19 – Technology & Computing
  • IAB20 – Travel
  • IAB21 – Real Estate
  • IAB22 – Shopping
  • IAB23 – Religion & Spirituality
  • IAB24 – Uncategorized
  • IAB25 – Non-Standard Content
  • IAB26 – Illegal Content
0 replies

Leave a Reply

Want to join the discussion?
Feel free to contribute!

Leave a Reply

Your email address will not be published.