Impression Level Data
DT FairBid enables you to access detailed information for each impression through the impressions callback APIs. The information includes, for example, which demand source served the ad and its expected or exact revenue.
You can call two different APIs that refer to different stages in the impression's lifetime:
(OnShow): When the ad appears.(OnAvailable): Before the ad appears, once a Fill becomes available.
The following table describes Impression Level Data attributes.
advertiserDomain
A unique identifier for a set of campaigns for the same advertiser.
campaignId
A unique identifier that represents a Campaign.
countryCode
Identifier of the country of the ad impression (in ISO country code).
creativeId
A unique identifier that represents the creative in the bid response. This can be useful when a particular creative causes user experience issues.
currency
Currency of the payout.
demandSource
Identifies the demand source name of the buy-side/demand-side entity that purchased the impression:
When mediated networks win an impression, the mediated network's name appears.
When a DSP buying through the programmatic marketplace wins the impression, the DSP's name appears.
impressionDepth
The number of impressions in the current session for the given Placement Type.
impressionId
A unique identifier for a specific impression.
requestId
Unique ID of the bid request.
jsonString
A JSON representation of the data serialized to a String.
netPayout
Net payout for an impression.
The value accuracy is returned in the priceAccuracy field. The value is provided in units returned in the currency field.
networkInstanceId
The mediated ad network's original Placement/Zone/Location/Ad Unit ID that you created in their dashboard.
For ads shown by the DT Exchange, the networkInstanceId is the Placement ID you created in the DT Console.
placementType
Defines the format and location of ads:
Banner: Rectangle ads appear either at the top or bottom of the screen. The user can view them but cannot dismiss them.
Rewarded: Full-screen ad format that shows a short video ad to the user. Upon completion of the video, the user will earn a reward.
Interstitial: Static or video full-screen ads. The user can view and then immediately dismiss them. This is a non-rewarded format for the user.
priceAccuracy
Accuracy of the netPayout value:
Programmatic:
netPayoutis the exact and committed impression value available when programmatic buyers win impressions.Predicted: DT's estimation of the impression value is based on historical data from non-programmatic mediated network's reporting APIs.
Undisclosed: The demand source does not agree to disclose the payout of every impression; in such cases, the
netPayoutis0.
renderingSDK
Name of the SDK in charge of rendering the ad.
renderingSDKVersion
The version of the SDK rendering the ad.
When AdMob renders an impression, the renderingSDKVersion shows the Google Play Services version.
variantId
A unique identifier that represents the variant delivered to the device.
Impression Data Upon Showing the Ad
All ad formats, Banners, Interstitials, and Rewarded, provide you access to the ImpressionData object through their callback APIs:
Android
Expected log output
Expected log output
iOS
The example below showcases how to access the data on an Interstitial integration. The integration for Rewarded and Banners is similar.
Expected log output:
Unity
All ad formats provide access to the ImpressionData object through their callback APIs:
Example:
Expected log output:
Impression Data Before Showing the Ad
You can also access the same information before showing the ad. This information will be available once you have a fill for that placement. If the placement for which you request the impression data does not have a fill, the API will return nil.
Calling this API at different moments may result in different values for the impression depth field since impression depth is counted for the ad type, regardless of placement. For more information, see Impression Depth.
Android
iOS
Unity
Impression Depth
Impression depth represents the number of impressions in a given session per ad format. Impression depth is accessible directly from each ad format class, which you can find in the following example. Alternatively, it can be accessed through the ImpressionLevelData object, as described in Impression Data Upon Showing the Ad.
The impression depth for each ad format increases throughout the session as more ads are displayed. It is reset only when:
The session ends (the app is killed).
The SDK considers the session has timed out.
Session Timeout
Session timeout or session background timeout represents the amount of time the user needs to spend with the app in the background before we consider them back to user engagement levels similar to a fresh new session. At this point, for all ad formats, the impression depth is reset to 0.
The Session timeout value is 30 minutes by default.
Example
The example below illustrates how you can access the impressionDepth value for all ad formats.
Last updated
