iOS SKAdNetwork support
This guide represents Unity's 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
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 | Type | Description | Example |
---|---|---|---|
sourceapp | string | Publisher app ID in Apple’s App Store. Should match app.bundle value in the bid request. |
|
skadnetids | string array | A lowercase list of DSP-specific SKAdNetworkItem entries that appear in the publisher app’s Info.plist_ file. |
|
versions | string array | Array of strings containing the supported skadnetwork versions. Dependent on both the OS version and the SDK version. |
|
BidRequest.device.ext.atts
Unity will include the status for app tracking authorization in the BidRequest.device.ext.atts
field. For more information about this field, refer to Apple’s API documentation.
Field | Type | Description | Example |
---|---|---|---|
atts | int | The status value for app tracking authorization. Possible values are:
|
|
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, refer to Apple’s API documentation.
Field | Type | Description | Example |
---|---|---|---|
signature | string | SKAdNetwork signature specified by Apple. |
|
network | string | Ad network identifier used in signature. This must match one of the items in the skadnetids array in the request. |
|
version | string | Version of desired SKAdNetwork. |
|
campaign | string | Campaign ID compatible with Apple’s spec. As of version 2.0, this must be an integer between 1 and 100 , expressed as a string. |
|
itunesitem | string | Advertiser app ID in Apple’s App Store. This must match bid.bundle in the bid response. |
|
nonce | string | An ID that is unique to each ad response. |
|
sourceapp | string | ID of publisher app in Apple’s App Store. This must match imp.ext.skadn.sourceapp in the bid request. |
|
timestamp | string | Unix time in milliseconds at the time the signature was generated. |
|
fidelities | object array | Supports multiple fidelity types introduced in SKAdNetwork v2.2. |
|
sourceidentifier | string | A four-digit integer that ad networks define to represent the ad campaign. Used in SKAdNetwork 4.0 and later, and replaces the Note: DSPs must generate signatures in versions 4.0 and later by using the Source Identifier. For versions 3.0 and earlier, continue to use |
|
bid.ext.skadn.fidelities
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, refer to Apple’s API documentation.
Field | Type | Description | Example |
---|---|---|---|
fidelity | int | The fidelity-type of the attribution to track. |
|
nonce | string | An ID that is unique to each ad response. Refer to Apple's documentation for the proper UUID format requirements. |
|
timestamp | string | Unix time in milliseconds at the time the signature was generated. |
|
signature | string | SKAdNetwork signature specified by Apple. |
|
Device IDs
Note: Unity will pass IDFA where present. Where IDFA is not present, IDFV will be passed.
Device.ifa | string | Preferred device advertising identifier (IDFA). It has a value of 00000000-0000-0000-0000-000000000000 when permission to track has not been granted. |
|
Device.ext.ifv | string | IDFV of the device in the publisher. This is a unique identifier across apps from the same vendor. |
|