Apple payload structure
Use the Apple payload structure to send information from the SKAdNetwork payload and any additional campaign information to Adjust.
Adjust supports Apple's JSON SKAdNetwork payload structure.
Before you begin
Here's what you need to know before getting started.
Requirement
Ensure that you receive the SKAdNetwork payload from Apple with the following parameters:
version
ad-network-id
campaign-id
transaction-id
app-id
attribution-signature
redownload
source-app-id
conversion-value
fidelity-type
(SKAdNetwork version 2.2 and later)did-win
(iOS 14.6 and later, SKAdNetwork version 3.0)coarse-conversion-value
(iOS 16.1 and later, SKAdNetwork version 4.0)source-identifier
(iOS 16.1 and later, SKAdNetwork version 4.0)postback-sequence-index
(iOS 16.1 and later, SKAdNetwork version 4.0)
Example:
{
"version" : "2.2",
"ad-network-id" : "com.example",
"campaign-id" : 42,
"transaction-id" : "6aafb7a5-0170-41b5-bbe4-fe71dedf1e28",
"app-id" : 525463029,
"attribution-signature" : "MEYCIQDTuQ1Z4Tpy9D3aEKbxLl5J5iKiTumcqZikuY/AOD2U7QIhAJAaiAv89AoquHXJffcieEQXdWHpcV8ZgbKN0EwV9/sY",
"redownload": true,
"source-app-id": 1234567891,
"fidelity-type": 1,
"conversion-value": 20,
"did-win": true
"coarse-conversion-value": "high"
"postback-sequence-index": 0
"source-identifer": "5239"
}
Create the Apple payload structure
You need to append supported Adjust campaign parameters to the Apple SKAdNetwork payload and send the SKAdNetwork install postback to Adjust.
Follow these steps to create the Apple payload structure:
- Append additional information to the Apple SKAdNetwork payload.
Parameter | Description |
---|---|
adjust-tracker | 6/7-character Adjust link token |
adjust-campaign | Adjust campaign name |
adjust-campaign-id | Adjust campaign ID |
adjust-adgroup | Adjust adgroup name |
adjust-adgroup-id | Adjust adgroup ID |
adjust-creative | Adjust creative name |
adjust-creative-id | Adjust creative ID |
timestamp | UNIX timestamp (in seconds) at which you received the original postback from Apple. If this value is empty, then Adjust falls back to the time at which we received the postback from you. |
country | Two character country code showing the install location. If this value is empty, then Adjust reports it as “ZZ” (or “Unknown” in the aggregated reporting). |
- Use the HTTP POST method with
Content-Type: application/json
to send information to Adjust.
Adjust receives the following information:
Example:
URL: https://app.adjust.com/skadnetwork/<sk_network_token>
Body:
{
"source-app-id" : 123456789,
"app-id" : 987654321,
"attribution-signature" : "xxxxxxxxxxxx",
"campaign-id" : 1,
"transaction-id" : "6aafb7a5-0170-41b5-bbe4-fe71dedf1e28",
"conversion-value" : 1,
"fidelity-type": 1,
"version" : "2.2",
"ad-network-id" : "xxxxxxxxx.skadnetwork",
"redownload" : true,
"coarse-conversion-value": "high"
"postback-sequence-index": 0
"source-identifer": "5239"
"adjust-tracker": "abc123",
"adjust-campaign": "test_campaign_name",
"adjust-campaign-id": "test_campaign_id",
"adjust-adgroup": "test_adgroup_name",
"adjust-adgroup-id": "test_adgroup_id",
"adjust-creative": "test_creative_name",
"adjust-creative-id": "test_creative_id",
"timestamp": 1597151456,
"country": "de",
"ip-address": "10.10.10.10",
"user-agent": "App Store"
}
Here, user_agent
is the user agent from the SKAdNetwork payload. However, we recommend that you send the actual browser user agent. For example: Mozilla/5.0 (iPod; U; CPU iPhone OS 4_3_3 like Mac OS X; ja-jp) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8J2 Safari/6533.18.5