iOS 14 SKAdNetwork support

With the release of iOS 14, OpenWrap SDK now supports Apple’s SKAdNetwork version 2.2 for programmatic buyers and demand partners who buy iOS 14 in-app inventory. OpenWrap SDK now supports app install and conversion tracking using Apple's SKAdNetwork, which helps to get app install campaign attribution data even when the identifier for advertisers (IDFA) is unavailable. The ad network API helps advertisers measure the success of ad campaigns while maintaining user privacy.

SKAdNetwork flow

  1. OpenWrap SDK retrieves the SKAdNetworkItems from the app's Info.plist.
  2. OpenWrap SDK sends an ad request to OpenWrap Server that includes the SKAdNetworkItems, sourceapp, and version parameters. See Bid Request for details. 
  3. OpenWrap Server sends bid request to eligible partners and includes the imp.ext.skadn object.
  4. Bidder/demand partners respond with a valid bid, including seatbid.bid.ext.skadn if the campaign requires SKAdNetwork support.
  5. OpenWrap SDK receives the ad response, which includes the skadn object. See Bid Response for details.
  6. If the impression displays, OpenWrap SDK starts SKAdImpression with the appropriate data, including the DSP-signed signature. If valid, Apple considers the app for install attribution.

  7. If the user chooses to install the app, OpenWrap SDK calls loadProduct() with the appropriate data, including the DSP-signed signature. If valid, Apple considers the app for install attribution.

  8. Advertised app/target app registers the user for SKAdNetwork attribution on app launch. Optionally, target app can choose to provide an additional 6 bits of conversion value information.
  9. When the ad is closed or destroyed, OpenWrap SDK ends SKAdImpression.

  10. If SKAdNetwork determines that the user's view led to the install, Apple calls the postback endpoint provided during registration for the SKAdNetworkID with appropriate data of view-through attribution. If it determines that the user click led to the install, Apple calls the postback endpoint provided during registration for the SKAdNetworkID with appropriate data of click-through attribution.

If users see a StoreKit-rendered ad followed by a view-through ad for the same app, the StoreKit-rendered ad takes precedence over the view-through ad, despite the view-through ad being the most recent.

Attributing app installations

SKAdNetwork attribution support allows DSPs to submit signed clicks to the SKAdNetwork API. DSPs that register with Apple will:

  • Obtain a SKAdNetwork identifier.
  • Obtain a private key that allows them to sign their key to provide Apple verification.
  • Specify a Postback endpoint to receive install attribution notifications from Apple.

Once Demand Partners receive the SKAdNetwork ID from Apple, PubMatic makes it available for app publishers to declare in their apps info.plist files. Bid requests that support SKAdNetwork are flagged so DSPs can bid accordingly. To support this interaction, PubMatic has defined new OpenRTB objects in the bid request and bid response, detailed in the following sections.

Bid request

If an app has at least one SKAdNetworkItem in the its Info.plist, OpenWrap SDK adds a new object in the bid request that provides the necessary information to create a signature. This object is only be present if both the OpenWrap SDK version and the iOS version (14+) support skadnetwork

Object: BidRequest.imp.ext.skadn

Attribute

Description

Type

Example

version

The supported version of skadnetwork. Always "2.0" or higher. Dependent on both the iOS version and the OpenWrap SDK version.

string

"version":"2.0"

versionsThe list of supported versions of skadnetwork. Always "2.0" or higher and it is dependent on both the iOS version and the OpenWrap SDK version.array["2.0", "2.1", "2.2"]

sourceapp

ID of publisher app in Apple’s App Store. Should match BidRequest.app.bundle .

string

"sourceapp":"525463029"

skadnetids

A subset of SKAdNetworkItem entries in the publisher app’s info.plist that are relevant to the DSP.

array

["k674qkevps.skadnetwork"]


Example BidRequest.imp.ext.skadn
{
   "imp":[
      {
         "ext":{
            "skadn":{
               "version":"2.0",
               "versions":["2.0","2.1","2.2"],
               "sourceapp":"525463029",
               "skadnetids":[
                  "k674qkevps.skadnetwork",
                  "g3y426g9ed.skadnetwork"
               ]
            }
         }
      }
   ]
}

Bid Response

When a bid request includes the BidRequest.imp.ext.skadn object, then DSPs can choose to add the following object to their bid response. When this object is present in a response, then OpenWrap SDK submits the view data and signature to the SKAdImpression for view-through attribution, and the click data and signature to the Store Kit product view controller for click-through attribution.

Object: BidResponse.seatbid.bid.ext.skadn

v2.2 attributes v2.0-2.1 attributes

Table of Contents

⇧ Top

Do you have feedback on this document? Let us know: email us.