Knowledge base

iOS 14 Support


This guide represents our current proposed changes to Unity Ads auction logic for our programmatic partners. 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


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


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

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

  • 0 = not determined
  • 1 = restricted
  • 2 = denied
  • 3 = authorized

Bid Response Change

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

Device IDs

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

Name Object Type Description Example
IDFA Device.ifa string Preferred device advertising identifier. It has a value of 00000000-0000-0000-0000-000000000000 when permission to track has not been granted. ABC123AB-1234-5678-A1B2-123ABCBCD789
IFV Device.ext.ifv string IDFV of the device in the publisher. This is a unique identifier across apps from the same vendor. ABCDEFGH-ABCD-1234-1234-ABCDEFGHABCD
Still need help? Get in touch!
Last updated on 22nd Oct 2021