Knowledge base

iOS 14 Support

Overview

This guide documents important changes to Unity Ads auction logic for our programmatic partners. Please note the upcoming changes in bid requests and bid responses to ensure readiness for Apple’s launch of iOS 14 in September 2020. You will start seeing these changes in August on a limited scale, enabling you to test and validate prior to Apple's release.

Note: This page will continually be updated with useful information regarding signals and workflows between now and the release of iOS 14. As a result, we encourage you to revisit this documentation periodically to ensure that you have the most up-to-date guidance.

Note: All fields and names are case-sensitive.

Bid Request Change

BidRequest.imp.ext.skadn

If a DSP has at least one SKAdNetworkItem in the publisher app’s Info.plist, Unity will include this object in the bid request. This provides the information required to create a signature.

Field Description Type Example
version Version of skadnetwork supported, which is always "2.0" or higher. Depends on both the OS version and the SDK version. string "version":"2.0"
sourceapp Publisher app ID in Apple’s App Store. Should match app.bundle value in the bid request. string "sourceapp":"123456789"
skadnetids A list of DSP-specific SKAdNetworkItem entries that appear in the publisher app’s Info.plist. array of string "skadnetids": ["dsp1.skadnetwork"]

BidRequest.app.ext.trackingAuthStatus

Unity will include the status for app tracking authorization in the BidRequest.app.ext.trackingAuthStatus field. For more information about this field, please refer to Apple’s API documentation.

Field Description Type Example
trackingAuthStatus The status value for app tracking authorization. Possible values are:

      0 = notDetermined
      1 = restricted
      2 = denied
      3 = authorized
integer "trackingAuthStatus":2

Bid Response Change

BidResponse.seatbid.bid.ext.skadn

If a bid request includes a BidRequest.imp.ext.skadn, a DSP can send a BidResponse.seatbid.bid.ext.skadn object in response. If present, Unity will use the signature of this object for attribution. For more information, please refer to Apple’s API documentation.

Field Description Type Example
signature SKAdNetwork signature specified by Apple string "signature": "WOBQQIRTnAcfYzF..."
network Ad network identifier used in signature. Should match one of the items in the skadnetids array in the request. string "network":"5HUO92BLLQ.skadnetwork"
version Version of desired SKAdNetwork. Must be version 2.0 or above. string "version":"2.0"
campaign Campaign ID compatible with Apple’s spec. As of version 2.0, should be an integer between 1 and 100, expressed as a string. string "campaign":"83"
itunesitem Advertiser app ID in Apple’s App Store. Should match bid.bundle in the bid response. string "itunesitem":"987654321"
nonce An id that is unique to each ad response. string "nonce":"385c9n44-a9ik-28fd-8247-gjk2efoa56a9"
sourceapp ID of publisher app in Apple’s App Store. Should match imp.ext.skadn.sourceapp in the bid request. string "sourceapp":"123456789"
timestamp Unix time in milliseconds at the time the signature was generated. string "timestamp": "1225091839"

Device IDs

Note: Unity will pass IDFA where present. Where IDFA is not present, IDFV will be passed.

Name Object Description Value Example Value
IDFA Device.ifa Preferred device advertising identifier. It has a value of 00000000-0000-0000-0000-000000000000 when permission to track has not been granted. string ABC123AB-1234-5678-A1B2-123ABCBCD789
IDFV Device.ext.idfv Unique identifier across apps from same vendor string ABCDEFGH-ABCD-1234-1234-ABCDEFGHABCD
Still need help? Get in touch!
Last updated on 10th Aug 2020