Advanced Ads enables you to use almost any ad provider with Apps Creator. To use Advanced ads with Apps Creator, you will need to work with your Ad provider to generate VMAP or VAST complaint Ad Tag URLs.
To build a robust Ad tag URL, Apps Creator provide a bunch of macros that can be used in the Ad tag URLs to relay information to your Ad provider, in the Ad request. These macros will be replaced with actual values when an ad call is made to the ad provider.
How to use macros to build an Ad tag URL?
Just form your ad tag URL and include the token values from that list (mentioned below) for the macros that you want to be passed on dynamically. That is, if, when forming the ad request, you would like Apps Creator to replace values of certain macros in your ad tag URL, please include the exact names (token name) for the respective macros to the right of the = sign. Apps Creator will replace values of only those macros for which the names of the token (placeholder) values exactly match the respective token value names mentioned in the list of macros supported by Apps Creator.
If we don't find any token value in your ad tag URL that matches any of the token values recognized by Apps creator (from the table below), no value will be passed on for any macro and the ad request will just be made with the ad tag URL untouched.
Please note that the names of the macros (to the left of the = sign) can be anything. It is just the names of their token values that Apps Creator will be matching with the names of token values listed in the table below.
For example, if you have an ad tag supplied by your ad server as:
And would like to dynamically pass the "app_bundle" macro, the value to the macro should be replaced with Apps Creator's Token Value (derived from the table below). The modified ad tag which should be added to the Apps Creator dashboard should look like this:
Supporter macros/tokens are listed below:
|[[W]]||Player width||Video player width as per current orientation|
|[[H]]||Player height||Video player height as per current orientation|
|[[CB]]||Random number to prevent caching||A random but unique number|
|[[IPADDRESS]]||User IP address||IP address of the user's device. Subject to user granting location tracking permission. Note: Only available for Roku.|
|[[UA]]||User-agent string||The user-agent string of the user's device. In the case of tvOS, since WebKit is not available, a custom UA string is passed on|
|[[LATITUDE]]||User latitude||Only supported on mobile. Latitude of user's location. Subject to user granting location tracking permission|
|[[LONGITUDE]]||User longitude||Only supported on mobile. Latitude of user's location. Subject to user granting location tracking permission|
|[[DESC]]||Video description||Video description taken from source feed, if available|
|[[DUR]]||Video duration length in seconds||Video duration length in seconds. For videos not hosted through the platform, the duration will be passed on if available in the feed|
|[[ATPLY]]||1 if the player is set to autoplay, 0 if not||Since the player is always set to autoplay, 1 is passed on|
|[[PLCMNT]]||Placement of video||1, as our video ads are in-stream ads only|
|[[DMAKE]]||Device's make||Device's make|
|[[DMODEL]]||Device's model||Device's model|
|[[AB]]||App bundle||App bundle|
|[[AN]]||App name||App name|
|[[ASU]]||App store URL||App store URL. For Roku, since we don't have the app store URL, the app bundle ID is passed on|
|[[DID]]||User device ID for all device types||User's device ID for all device types. For iOS/tvOS - Advertising Id is sent|
|[[MID]]||Media ID||Identifier of the video item|
|[[CID]]||Content ID||Identifier of the video item|
|[[VT]]||Encoded video title||Encoded title of the video item|
|[[VID]]||Video ID||Identifier of the video item|
|[[VURL]]||Encoded video URL||Encoded URL of the video item|
|[[GDPRFLAG]]||GDPR Flag||1 (true, consenting) or 0 (false, non-consenting)|
|[[USPRIVACY]]||US Privacy string||US Privacy string as per IAB specifications and based on CCPA settings in the dashboard and whether the user has opted out or not|
|[[COPPAFLAG]]||COPPA flag, indicating traffic that is subject to the Children's Online Privacy Protection Act of the United States.||1 (true) or 0 (false). The platform will pass on 0|
|[[BN]]||Device's brand name||Brand name of the user's device if available, otherwise name of the corresponding platform as determined by the application.|
|[[CID2]]||Unique content ID for "content" object for PC and SSHB bid requests (see OpenRTB 2.5)||Identifier of the video item|
|[[CTITLE]]||Encoded content title for "content" object for PC and SSHB bid requests (see OpenRTB 2.5)||Encoded title of the video item|
|[[SESSION_ID]]||A unique identifier for the current app session, should be unique for each app launch||
See the “‘Session’ IFAs” section of the OTT-IFA specification for more information.
|[[IFA]]||A unique identifier for the device or session, based on the user’s choice of whether or not to limit ad tracking||
The identifier for advertising (IFA) must be a unique value and must never be (or be based on) a hardware-specific ID such as MAC address or IMEI.
The IFA may be based on IP Address, but should never be the IP address directly.
Overall, the IFA must never contain any Personally Identifiable Information (PII).
On many platforms, this ID is provided by the platform itself. When not provided by the platform, the Session ID (SID) token’s value should be used.
NOTE: For example, on VIZIO devices the IFA values can be retrieved by the app registering with the “VIZIO device IFA handler”, asdocumented here.
See the “Identifier for Advertising (ifa)” documentation in the “General Guidelines” section of theOTT-IFA specificationfor more information.
|[[IFA_TYPE]]||The IFA type of the device.||
See the “IFA Type (ifa_type)” documentation in the “General Guidelines” section of theOTT-IFA specificationfor more information.
|[[LMT]]||Indicates if a user has opted out of targeted advertising, per theOTT-IFA specification.||
|[[AD]]||A unique identifier for the app’s domain||
For example: "mygame.myapp.io"
|[[SN]]||The name of the page on which the content is being displayed.||
In the web app, this is the value of the “Website title” property on the web output configuration page.
In native apps, this is the same value as the “[[AN]]” token.
|[[PURL]]||The URL of the page (or deep link to app screen) on which the content is being displayed.||
In the web app, this is the web URL to the current page.
In native apps, this is the deep link to the current screen.
|[[CONTENT_GENRE]]||The genre of the content.||
If the content comes from the Zype CMS, this will be the value of the “Genre” field.
Otherwise, if a custom attribute named “genre” exists, this will be that attribute’s value. If more than one attribute is configured, the first value (in terms of the attribute’s position in the list of attributes) will be used.
|[[CONTENT_CHANNEL]]||The name of the channel in which the content is appearing.||
When content is being shown via the EPG, this is the name of the EPG channel.
Otherwise, this is the same value as the “App Name” (“[[AN]]”) token.
|[[CONTENT_RATING]]||The rating of the content.||
If the content comes from the Zype CMS, this will be the value of the “Rating” field.
Otherwise, if a custom attribute named “rating” exists, this will be that attribute’s value. If more than one attribute is configured, the first value (in terms of the attribute’s position in the list of attributes) will be used.
Connect Advance Ads to Apps Creator
Once you have your Ad Tags ready, add them to Apps Creator to begin serving ads in your Videos.
Step 1: Login to Apps Creator and navigate to Monetization>>Ads>>Advanced.
Step 2: Add your Ad Tag URL for each platform under Choose Channels Box and save the form.
Additional Ad Settings
How to set Ad Frequency?
Under Channels section, you will find a Set Request Frequency section. Here you can mention when you want the ads to be requested via the apps. This is helpful when you don't want your app users to be greeted by an ad as soon as they play the first video. Configure when and how often you want to the ads to be requested from the Ad server.
How to schedule Ad breaks without VMAP?
You can play mid-roll ads in the videos at the pre-defined intervals by selecting any one of these options considering that the ad tag URL provided by you should be a simple VAST tag without any pre-rolls, mid-rolls or post-rolls.
How to target ads using Key-Value Pairs?
To begin using KVPs with Apps Creator, you will need to set up your targeting tags in the Apps creator dashboard and in the third-party ad server console. Apps creator will pick up the values within designated tags from your MRSS feed and pass them to the third-party ad server for targeted ads.
Playback URL Parameters
Ad tag macros may also be passed as parameters on playback URLs to allow for Server-Side Ad Insertion. Macros can either be passed into the system as a part of the playback URLs that are included within MRSS feeds, or can be added to playback URLs by the system at playtime.
To specify parameters to add at playtime, configure them via the "Playback URL parameters" settings section on the Advanced ads configuration screen:
Parameters added here will be added to all content URLs (including URLs from MRSS feeds and Zype "self hosted" URLs) at playtime.
Learn more about SSAI and supported macros here.
With the release of iOS 14 and tvOS 14, Apple has introduced the AppTrackingTransparency framework. As per Apple's new guidelines, apps will need to request permission to track the user and access the device’s advertising identifier to display personalized ads.
Due to this, if your Zype app is already on the Apple App Store and you decide to turn on or turn off ads on the Apps Creator dashboard, an app update will be required for iOS/tvOS apps to comply with the new guidelines.
After enabling or disabling ads on the Apps Creator Dashboard, please write to us at firstname.lastname@example.org to request an app update for your iOS/tvOS app.