VAST Tag Integration
Learn how to set up a VAST integration
To establish a VAST tag integration, please follow these steps:
Generate the VAST Tag URL: Start by generating the appropriate VAST Tag URL. Utilize the provided base_url and follow the parameter guidelines outlined below.
Complete and Sign Audiohook IO: Before proceeding with setting the VAST tag live, ensure that you complete and sign the Audiohook IO document. This document will be provided to you once the integration process is initiated.
Submit the Description of your Inventory: Fill out our form here to create a description that sells your inventory to advertisers looking to create their playlists.
Integration Activation: Once the Audiohook IO is signed, request the activation of the VAST tag integration by reaching out to publisher@audiohook.com. Our team will confirm the integration's live status and address any additional requirements.
Immediate Integration and Billable Monitoring: After the VAST tag integration is activated, impressions generated during the first week of live integration will be monitored and are billable based on their validity. Monthly reports will be sent to you, and you can subsequently send us an invoice for the provided services. Billable total impressions are derived from valid impressions received within an eight-hour window.
base_url = directvast.audiohook.com/{{publisher-id}}/vast?{{params}}
Example VAST:
https://directvast.audiohook.com/testPub/vast?feed-url=%%feed_url%%&episode-url=%%episode_url%%&ip=%%ip%%&ua=%%ua%%&vspec=4
Update macros and traffic in your ad server.
Here is a list of hosting platform support articles:
Recommended VAST tags:
- For Megaphone users
https://directvast.audiohook.com/{{publisher-id CHANGE ME}}/vast?feed-url=%%rssurl%%&episode-url=%%mediaurl%%&placement-type=%%position%%&ip=%%ip%%&ua=%%ua%%&ord=%%cachebuster%%&vspec=4
- For Art19 users
(different VASTs needed for pre, mid and post rolls) https://directvast.audiohook.com/{{publisher-id CHANGE ME}}/vast?feed-url={{ primaryFeed }}&episode-url=https://rss.art19.com/episodes/{{ episodeID }}.mp3&ip=header-x-device-ip&ua={{ deviceUserAgent }}&vast-type=inline&placement-type=pre&vspec=4 https://directvast.audiohook.com/{{publisher-id CHANGE ME}}/vast?feed-url={{ primaryFeed }}&episode-url=https://rss.art19.com/episodes/{{ episodeID }}.mp3&ip=header-x-device-ip&ua={{ deviceUserAgent }}&vast-type=inline&placement-type=mid&vspec=4 https://directvast.audiohook.com/{{publisher-id CHANGE ME}}/vast?feed-url={{ primaryFeed }}&episode-url=https://rss.art19.com/episodes/{{ episodeID }}.mp3&ip=header-x-device-ip&ua={{ deviceUserAgent }}&vast-type=inline&placement-type=post&vspec=4
We require ip, ua, vspec=4, feed-url, and episode-url parameters. Additional parameters depend on your hosting platform’s requirements and your desired parameters.
We require inventory-type if you have 2 or more of podcasts, streaming, radio or emerging inventory. For podcasts we recommend placement-type. For streaming and radio, placement-type=mid recommended.
Parameter | Required Field | Requires Macro | Default Value | Permitted Values | Example | Comment |
ip | yes | yes | header-ip | %%IP%% | The IP Address of the User (only provided to attribution partners). If the IP address is passed in the header, please insert "header-{{key}}" where the key is the key that is used in the header (example: header-ip). | |
ua | yes | yes | %%USER_AGENT%% | The User Agent String of the User. | ||
vspec | yes | no | 4 | 4 | This is the version of the VAST specification. We previously support VAST 2 however we have since stopped supporting that version. | |
inventory-type | yes | no | podcast | [podcast,streaming,radio,emerging] | The type of content. Note that radio should be used if there is a broadcast feed available for consumers. If it can only be listened to digitally, then it should be specified as streaming. | |
publisher | no | no | [all values] | bonneville | This field allows partners to pass the name of the publisher that is producing the content. Note that this field will be reported on for analytics and billing purposes. | |
station | no | no | [all values] | FM100 | This field allows for partners to pass the name of the station. This field can be used for both streaming inventory and digital radio inventory. Note that this field will be reported on for analytics and billing purposes. | |
feed-url | yes (if content is podcast) | yes | [all values] | This allows Audiohook to support brand safety integrations. Feed URLs should be URL encoded. Note that for some hosting platforms the series and episode id can be provided instead if the RSS feed is consistent | ||
episode-url | yes (if content is podcast) | yes | [all values] | %%FEED_URL%%
or a URL with episode ID macro such as
https://rss.art19.com/episodes/{{ episodeID }}.mp3 | This allows Audiohook to support brand safety integrations. Episode URLs should be URL encoded. Note that for some hosting platforms the series and episode id can be provided instead if the RSS feed is consistent. | |
series-id | no | yes | [all values] | Use feed-url parameter. In case hosting platform doesn’t have url macro instead use feed-url param with a URL with series-id macro inserted. T | ||
episode-id | no | yes | [all values] | Use episode-url parameter. In case hosting platform doesn’t have url macro instead use episode-url param with a URL with episode-id macro inserted. | ||
cpm | no | no | 5.00 | |||
hosting | no | no | [all values] | art19 | This parameter is required when using either the series-id or episode-id parameters. | |
player-domain | no | no | [all values] | domain.com | This parameter should be passed if the content is being played through a web player. It should be the domain of the website that the player is located. | |
vast-type | no | no | wrapper | [wrapper, inline] | Currently, by default, we serve VAST tags with wrappers. This replaces the historical inline parameter. REPLACE INLINE=1 WITH VAST-TYPE=INLINE | |
placement-type | no | no | post | [pre,mid,post] | If this is left blank, we will assign the inventory as post-roll. | |
genre | no | yes | %%SPORTS%% | Currently we support only one genre to be provided at a time. | ||
bcat | no | no | None | [IAB1,IAB2,IAB3,IAB4,IAB5,IAB6,IAB7,IAB8,IAB9,IAB10,IAB11,IAB12,IAB13,IAB14,IAB15,IAB16,IAB17,IAB18,IAB19,IAB20,IAB21,IAB22,IAB23,IAB24,IAB25] | IAB3-2 | This allows the publisher to block specific IAB advertiser categories. We support both parent categories and sub-categories. This field is not case sensitive. |
badv | no | no | None | [all values] | example.com | This allows the publisher to block specific advertiser domains. Note that domains should not include http/https. |
ord | no | yes | %%cachebuster%% | serves as a cachebuster, which is a unique value appended to the VAST tag URL to create a new and distinct ad request each time the VAST tag is called |