This document outlines the technical specifications for integrating Integral Ad Science's platform verification solutions across the platform's inventory.
The integration enables measurement of viewability, invalid traffic (IVT), and brand safety metrics. This integration covers display and video formats across Desktop, Mobile Web, Mobile App, and CTV environments. Furthermore, the integration handles a large volume of impressions and provides detailed insights into inventory performance.
IAS recommends the platform uses the following verification solutions:
JavaScript tags for display
JavaScript tags in conjunction with the Open Measurement SDK (OM SDK) for Mobile App
VPAID wrapper or OMID for web for video
CTV pixels for CTV implementation
The platform uses verification tags populated by macros. Display is measured using verification tags, while video is measured using a combination of VPAID wrapper, OMID, and CTV pixels depending on the environment. Additionally, Mobile in-app measurement requires the presence of the OM SDK.
The platform must ensure the correct macros are populated within the tag upon receipt. Your IAS representative configures the pixels for your integrations; example templates follow.
Macro | Description |
anId | Client ID assigned and provided by IAS Professional Services during implementation |
campId | The size of the trafficked creative in the ad server (for example, "728x90" or "300x250") |
pubId | An identifier for the publisher that served the current ad |
chanId | An identifier for the served ad unit |
placementId | An identifier for the line item / flight for the current ad |
pubCreative | An identifier for the creative served for the current ad |
pubOrder | An identifier for the campaign for the current ad |
custom / custom2 / custom3 | Optional key/value pairs to track in IAS reportsOmit the parameter if it is not used. Use these for things that have <= 200 unique values, so no IP addresses, user Ids, zip codes, etc. |
originalVast | URL pointing to the advertiser's VAST resource |
bundleId | An identifier for mobile apps |
ias_xappb | An identifier for CTV apps |
https://pixel.adsafeprotected.com/jload?anId=[ClientID]&campId=[AdSizeMacro]&pubId=[PublisherMacro]&chanId=[ChannelMacro]&placementId=[PlacementMacro]&pubCreative=[CreativeMacro]&pubOrder=[CampiagnMacro]&custom=[OPTIONAL]&custom2=[OPTIONAL]&custom3=[OPTIONAL]
For In-App environments, the same display measurement tag is used, but the OM SDK must be present for viewability measurement.
https://pixel.adsafeprotected.com/jload?anId=[ClientID]&campId=[AdSizeMacro]&pubId=[PublisherMacro]&chanId=[ChannelMacro]&placementId=[PlacementMacro]&pubCreative=[CreativeMacro]&pubOrder=[CampiagnMacro]&custom=[OPTIONAL]&custom2=[OPTIONAL]&custom3=[OPTIONAL]
https://vast.adsafeprotected.com/vast?anId=[ClientID]&campId=[AdSizeMacro]&pubId=[PublisherMacro]&chanId=[ChannelMacro]&placementId=[PlacementMacro]&pubCreative=[CreativeMacro]&pubOrder=[CampiagnMacro]&custom=[OPTIONAL]&custom2=[OPTIONAL]&custom3=[OPTIONAL]&originalVast=INSERT_VAST_URL
OM for Web uses the same tag as used with display but the tag is implemented as a JavaScript resource in the measurement provider section of the XML.
<Extensions>
<Extension>
<AdVerifications>
<Verification vendor="IAS">
<JavaScriptResource apiFramework="omid" browserOptional="true">
<![CDATA[
https://pixel.adsafeprotected.com/anId=[ClientID]&campId=[AdSizeMacro]&pubId=[PublisherMacro]&chanId=[ChannelMacro]&placementId=[PlacementMacro]&pubCreative=[CreativeMacro]&pubOrder=[CampiagnMacro]&custom=[OPTIONAL]&custom2=[OPTIONAL]&custom3=[OPTIONAL]
]>
</JavaScriptResource>
</Verification>
</AdVerifications>
</Extension>
</Extensions>
https://video.adsafeprotected.com/vevent/
impression
?xsId=[IMPRESSION_MACRO]&anId=[YOUR_ANID]&pubId=[ADVERTISER_MACRO]&chanId=[AD_UNIT_MACRO]&placementId=[PLACEMENT_MACRO]&pubCreative=[CREATIVE_MACRO]&pubOrder=[CAMPAIGN_MACRO]&campId=[AD_SIZE_MACRO]&ias_xappb=[CTV_APP_BUNDLE]
https://video.adsafeprotected.com/vevent/
firstQuartile
?xsId=[IMPRESSION_MACRO]&anId=[YOUR_ANID]
https://video.adsafeprotected.com/vevent/
midpoint
?xsId=[IMPRESSION_MACRO]&anId=[YOUR_ANID]
https://video.adsafeprotected.com/vevent/
thirdQuartile
?xsId=[IMPRESSION_MACRO]&anId=[YOUR_ANID]
https://video.adsafeprotected.com/vevent/
complete
?xsId=[IMPRESSION_MACRO]&anId=[YOUR_ANID]
https://video.adsafeprotected.com/vevent/
mute
?xsId=[IMPRESSION_MACRO]&anId=[YOUR_ANID]
https://video.adsafeprotected.com/vevent/
unmute
?xsId=[IMPRESSION_MACRO]&anId=[YOUR_ANID]
The platform confirms the macros it wants to use with the platform for reporting and populating the dashboard.
The platform decides which inventory it wants to run verification on. Measurement runs across any supported inventory within the predefined impression allotment.
The platform implements all pixel formats to measure all their inventory, following the guidelines in this document.
Platform macros pull in the ID number for macro values. The Platform provides a mapping document to be filled in to populate the UI with human-readable names.
Create an IAS case with details of your inquiry to receive help from our internal support team.