VAST Tag

VAST Tag Integration Guide

Introduction

A VAST ad tag URL is used by a player to retrieve video ads. You can manually assemble a VAST ad tag URL or modify an existing URL using the macros below.

Example

https://rtb.ssp.metaxads.com/ads/vast?pubid=601423144&adunit=345864&place=3&protocols=2&dnt=0&secure=0&appid=324567&appname=myapp&appdomain=domain.com &bundle=myapp.name&ifa_type=dpid&ifa=metax_ifa_123456&max_ad_duration=120&min_ad_duration=15&w=1280&h=720&lang=en&ua=myua&cb=6901873088

Macros

Parameter

Macro

Path in OpenRTB

CTV/IA

Video/Audio

App/Site

Description

pubid

[PUBLISHER_ID]

ALL

ALL

ALL

Specifies the seller’s publisher ID. MetaX provides publisher ID

adunit

[ADUNIT]

ALL

ALL

ALL

The seller’s Ad Unit ID. MetaX provides Ad Unit ID

mediatype

[MEDIATYPE]

ALL

ALL

ALL

Specifies which media type request is, default is app. Where app = app traffic, site = site traffic

appid

[APP_ID]

app.id

ALL

ALL

App

Specifies the seller’s app ID. Follow spec: https://iabtechlab.com/wp-content/uploads/2020/08/IAB-Tech-Lab-OTT-store-assigned-App-Identification-Guidelines-2020.pdf

appname

[APP_NAME]

app.name

ALL

ALL

App

The full name of the app. (This value may be aliased at the publisher’s request.)

appdomain

[APP_DOMAIN]

app.domain

ALL

ALL

App

Specifies the domain of the app (for example, myapp.site.com) where the impression will be shown. Set as the referrer domain on the impression if available.

appcat

[APP_CAT]

app.cat

ALL

ALL

App

Specifies a list of IAB content categories (listed in section 5.1 of the specification). See Category Type.

bundle

[BUNDLE]

app.bundle

ALL

ALL

App

Specifies the application bundle or package name (e.g., com.foo.myapp). This is intended to be a unique ID across multiple exchanges.

storeurl

[STORE_URL]

app.storeurl

ALL

ALL

App

App’s URL in store.

appver

[APP_VERSION]

app.ver

ALL

ALL

App

App Version.

siteid

[SITE_ID]

site.id

ALL

ALL

Site

Specifies the seller’s site ID.

sitename

[SITE_NAME]

site.name

ALL

ALL

Site

The full name of the site.

sitedomain

[SITE_DOMAIN]

site.domain

ALL

ALL

Site

Specifies the domain of the site (for example, www.site.com) where the impression will be shown.

sitecat

[SITE_CAT]

site.cat

ALL

ALL

Site

Specifies a list of IAB content categories (listed in section 5.1 of the specification). See Category Type.

url

[URL]

site.page

ALL

ALL

Site

Site’s page URL.

ifa

[IFA]

device.ifa

ALL

ALL

ALL

The “identifier for advertising” is an unhashed device ID sanctioned for advertiser use.

ifa_type

[IFA_TYPE]

device.ext.ifa_type

ALL

ALL

ALL

Identify the source of the IFA, whether that is device-generated or whether it is a publisher-provided IFA, or a temporary/session IFA. https://iabtechlab.com/wp-content/uploads/2018/12/OTT-IFA-guidelines.final_Dec2018.pdf

device_make

[DEVICE_MAKE]

device.make

ALL

ALL

ALL

Specifies the make of the device. e.g. Samsung

device_os

[DEVICE_OS]

device.os

ALL

ALL

ALL

This is the code field that you obtain from operating system code. e.g. Android, Roku, IOS, Linux, Windows

lang

[LANGUAGE]

device.language

ALL

ALL

ALL

Content language using ISO 639-1 standard.

protocols

[PROTOCOLS]

imp.video.protocols

ALL

Video

ALL

Supported video protocols. See Protocols. Using comma to separate them. E.g: protocols=2,3,4.

ip

[IP]

device.ip

ALL

ALL

ALL

Required if it’s server to server request, Device IP address.

ua

[USERAGENT]

device.ua

ALL

ALL

ALL

The device user agent. which typically indicates the app or browser making the request.

tvsize

[TVSIZE]

ALL

Video

ALL

TV Size (e.g.,44 inch) .

brand

[BRAND]

ALL

Video

ALL

TV Brand (e.g.,TCL) .

startdelay

[STARTDELAY]

imp.video.startdelay

ALL

Video

ALL

Required if could not set the [PLACE], Indicates the start delay in seconds for pre-roll, mid-roll, or post-roll ad placements.

w

[WIDTH]

imp.w

ALL

Video

ALL

Width of the video player in device independent pixels (DIPS).

h

[HEIGHT]

imp.h

ALL

Video

ALL

Height of the video player in device independent pixels (DIPS).

pmad

[PMAD]

ALL

ALL

ALL

The maximum number of ads in a pod.

pmnd

[PMND]

ALL

ALL

ALL

The minimum duration that a pod must match in seconds.

pmxd

[PMXD]

ALL

ALL

ALL

The maximum duration that a pod must match in seconds.

min_ad_duration

[MIN_AD_DURATION]

imp.video.minduration

ALL

Video

ALL

Minimum duration of an ad in seconds.

max_ad_duration

[MAX_AD_DURATION]

imp.video.maxduration

ALL

Video

ALL

Maximum duration of an ad in seconds.

content_id

[CONTENT_ID]

app/site.content.id

ALL

ALL

ALL

ID uniquely identifying the content.

content_cat

[CONTENT_CAT]

app/site.content.cat

ALL

ALL

ALL

IAB content categories for the presented video content. See Category Type. Separate multiple categories with commas. For example, content_cat=IAB1-3,IAB2-4

content_cat_custom

[CONTENT_CAT_CUSTOM]

ALL

ALL

ALL

Customer defined content categories. Separate multiple categories with commas.

content_len

[CONTENT_LEN]

app/site.content.len

ALL

ALL

ALL

Length of content in seconds; appropriate for video or audio.

content_title

[CONTENT_TITLE]

app/site.content.title

ALL

ALL

ALL

Video content title. Examples: Search Committee.

content_episode

[CONTENT_EPISODE]

app/site.content.episode

ALL

ALL

ALL

Content Episode Number.

content_series

[CONTENT_SERIES]

app/site.content.series

ALL

ALL

ALL

Content series. e.g., The%20Office.

content_season

[CONTENT_SEASON]

app/site.content.season

ALL

ALL

ALL

Content season. e.g., “Season 3”.

content_genre

[CONTENT_GENRE]

app/site.content.genre

ALL

ALL

ALL

Genre that best describes the content. e.g., rock, pop, etc.

content_language

[CONTENT_LANGUAGE]

app/site.content.language

ALL

ALL

ALL

Content language. Using ISO-639-1-alpha-2.

content_livestream

[CONTENT_LIVESTREAM]

app/site.content.livestream

ALL

ALL

ALL

Indicates content is live streaming, where 1 = live streaming.

content_rating

[CONTENT_RATING]

app/site.content.contentrating

ALL

ALL

ALL

Content rating. e.g., MPAA.

content_channel

[CONTENT_CHANNEL]

app/site.content.ext.channel

ALL

ALL

ALL

Content channel name that an ad will be displayed on.

content_keywords

[CONTENT_KEYWORDS]

app/site.content.keywords

ALL

ALL

ALL

Comma separated list of keywords describing the content.

content_prod

[CONTENT_PROD]

app/site.content.prodq

ALL

ALL

ALL

Production quality per IAB’s classification.

video_url

[VIDEO_URL]

ALL

ALL

ALL

URL of the content, for buy-side contextualization or review

gdpr

[GDPR]

regs.ext.gdpr

ALL

ALL

ALL

Indicates whether the request is subject to General Data Protection Regulation (GDPR) regulation. “1” means yes. “0” means no.

gdpr_consent

[GDPR_CONSENT]

user.ext.consent

ALL

ALL

ALL

A declaration that that the user has consented to having his or her data collected by the publisher’s site, as mandated by the GDPR.

coppa

[COPPA]

regs.coppa

ALL

ALL

ALL

Request is subject to the COPPA regulations established by the USA FTC, where 0 = no, 1 = yes.

us_privacy

[US_PRIVACY]

regs.ext.us_privacy

ALL

ALL

ALL

US Privacy String communicates signals regarding consumer privacy and choice under US privacy regulation. Must follow the US Privacy string format.

secure

[SECURE]

imp.secure

ALL

ALL

ALL

Flag to indicate if the impression requires secure HTTPS URL creative assets and markup, where 0 = non-secure, 1 = secure.

dnt

[DNT]

device.dnt

ALL

ALL

ALL

Standard “Do Not Track” flag as set in the header by the browser, where 0 = tracking is unrestricted, 1 = do not track.

ad_type

[ADTYPE]

ALL

ALL

ALL

AdTypes, audio or video

feed

[FEED]

imp.audio.feed

ALL

Audio

ALL

Types of audio feed, see Feed Types.

stitched

[STITCHED]

imp.audio.stitched

ALL

Audio

ALL

Indicates if the ad is stitched with audio content or delivered independently, where 0=no, 1=yes.

nvol

[NVOL]

imp.audio.nvol

ALL

Audio

ALL

Volume normalization mode, see Volume Normalization Modes.

referer

[REFERER]

app/site.ref

ALL

ALL

ALL

The URL of the page that is hosting the video player

mimes

[MIMES]

ALL

ALL

ALL

Supported media Mime subtypes. Using comma to separate if there are two or more types. Example of types: mp4, quicktime, 3gpp, x-mpegURL, H264.

ssai

[SSAI]

ALL

ALL

ALL

Required for SSAI request. Indicates whether the ad request is coming from an SSAI environment or not. Where 1 = yes 0 = no.

ssai_vendor

[SSAI_VENDOR]

imp.ext.ssai_vendor

ALL

ALL

ALL

Defines the SSAI vendor that is being utilized to deliver the content. The following list is an example of SSAI vendors: AdobePrimetime, AdSparx, Amagi, AWS, Bitcentral, Brightcove, Imagine, MostMedia, Switch, Verizon Uplynk, Vidillion, Yospace, Zype

ssai_impact

[SSAI_IMPACT]

imp.ext.ssai

ALL

ALL

ALL

Indicates the impact of SSAI on asset and tracker retrieval, where 0 = status unknown, 1 = all clientside (i.e., not server-side), 2 = assets stitched server-side but tracking pixels fired client-side, 3 = all server-side.

sourceid

[SOURCEID]

ALL

ALL

ALL

ID of traffic source.

schain

[SCHAIN]

source.ext.schain

ALL

ALL

ALL

SCHAIN string value.

rewarded

[REWARDED]

imp.video.ext.rewarded

ALL

Video

ALL

Indicate if the inventory is rewarded video. where 0 = no, 1 = yes.

s2s

[S2S]

ALL

ALL

ALL

Indicate if the request comes from server side. where 0 = no, 1 = yes.

skip

[SKIP]

imp.video.skip

ALL

Video

ALL

Indicates if the player will allow the video to be skipped, where 0 = no, 1 = yes.

skipafter

[SKIP_AFTER]

imp.video.skipafter

ALL

Video

ALL

Number of seconds a video must play before skipping is enabled; only applicable if the ad is skippable.

iris_content_id

[IRIS_CONTENT_ID]

ALL

Video

ALL

required in query if IRIS.TV context API needs to be called by Springserv.

iris_id

[IRIS_ID]

ALL

Video

ALL

IRIS.TV ID needed to support contextual targeting via IRIS.TV.

iris_context

[IRIS_CONTEXT]

ALL

Video

ALL

IRIS.TV context ID needed to support contextual targeting via IRIS.TV.

net

[NET]

IA

ALL

ALL

Network connection type.

crr

[CRR]

IA

ALL

ALL

Mobile carrier as the concatenated MCC-MNC code (e.g., “310-005” identifies Verizon Wireless CDMA in the USA).

gender

[GENDER]

IA

ALL

ALL

Gender (“M”: male, “F” female, “O” Other).

yob

[YOB]

IA

ALL

ALL

Year of birth as a 4-digit integer.

cb

[RANDOM]

ALL

ALL

ALL

A random integer to avoid browser caching.

Category Type

Value

Description

IAB1

Arts & Entertainment

IAB2

Automotive

IAB3

Business

IAB4

Careers

IAB5

Education

IAB6

Family & Parenting

IAB7

Health & Fitness

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 Conte

Protocols

Value

Description

1

VAST 1.0

2

VAST 2.0

3

VAST 3.0

4

VAST 1.0 Wrapper

5

VAST 2.0 Wrapper

6

VAST 3.0 Wrapper

7

VAST 4.0

8

VAST 4.0 Wrapper

Feed Types

The following table lists the types of feeds, typically for audio.

Value

Description

1

Music Service

2

FM/AM Broadcast

3

Podcast

Volume Normalization Modes

The following table lists the types of volume normalization modes, typically for audio.

Value

Description

0

None

1

Ad Volume Average Normalized to Content

2

Ad Volume Peak Normalized to Content

3

Ad Loudness Normalized to Content

4

Custom Volume Normalization