iOS14 update response information (3): SkAdNetwork reporting postback settings
Follow
For details on iOS 14's ATT policy response, please refer to the iOS14 update response guide series.
- iOS14 update response information (1): Key points
- iOS14 update response information (2): SDK distribution and application
iOS14 compatible, SkAdNetwork reporting postback
For campaigns using SkAdNetwork, attribution is measured directly by Apple, not by an MMP like DFINERY.Because it is attribution provided at the platform level, it can be said to be the most accurate attribution.
SkAdNetwork Campaign Process
- User installs app through campaign
- run app
-
iOS sends a performance postback to the ad network that contributed to the app installation (up to 24-48 hours delay)
- Performance postbacks do not contain any device-identifying information.
- The ad network delivers the postback data received in 3) to DFINERY as is.
- DFINERY configures SkAdNetwork reporting
SkAdNetwork performance postback
When an app install occurs, SkAdNetwork sends a performance postback directly to the ad network that contributed to the install.
Ad networks can use this postback to construct their own reports.
However, advertisers have the inconvenience of having to access each operating ad network and check reports, which will cause inefficiency for all major ad tech members.
DFINERY SkAdNetwork Reporting Postback
To reduce this inefficiency, DFINERY provides a solution to integrate SkAdNetwork's scattered reports.
The ad network simply forwards the performance postback received from SkAdNetwork to DFINERY.
DFINERY provides guidance on the reporting postback protocol through the partner console ( click here ) provided to each ad network.
SkAdNetwork Settings
1.Go to Settings > SkAdNetwork Settings panel in the Partner Console. (You can also go through SkAdNetwork in the main menu on the left)
2. Enables SkAdNetwork postbacks. It then generates a token to be used in the protocol.
The generated token must be included in the protocol header.
data transfer
The Json data received from SkAdNetwork is delivered in the body.
[sample request - Basic]
POST - https://event.adbrix.io/api/v1/skadn/postback
Header
{
"ABX-TOKEN" : "hsL1rk37pYXHaznL0Axd2xjOHn7%2b3EzB4gDXfa0wF8dHKLLJyccFC0T3BhPFRnxW2yEvUWak4LQeQhuAZAywDVsvjgNO95tWXkVbJd2DgzyZsb6A0IKzqpCcAEK%2 bvFJz4GQ6gKMwfNbwdEcyt3qlMSPpvS%2bGtpzj6UZWy7j0ucVK0v3wMsBjt4IrYLHPEM6skrLLrROMZukkm2PTC3E1v5Dt9wdCk9gah46p16UWoDQ%3d"
}
Body
{
"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
}
If you wish to pass additional parameters other than the basic data provided by SkAdNetwork, you can freely add a custom field.
[sample request - Advanced]
POST - https://event.adbrix.io/api/v1/skadn/postback
Header
{
"ABX-TOKEN" : "hsL1rk37pYXHaznL0Axd2xjOHn7%2b3EzB4gDXfa0wF8dHKLLJyccFC0T3BhPFRnxW2yEvUWak4LQeQhuAZAywDVsvjgNO95tWXkVbJd2DgzyZsb6A0IKzqpCcAEK%2 bvFJz4GQ6gKMwfNbwdEcyt3qlMSPpvS%2bGtpzj6UZWy7j0ucVK0v3wMsBjt4IrYLHPEM6skrLLrROMZukkm2PTC3E1v5Dt9wdCk9gah46p16UWoDQ%3d"
}
Body
{
"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,
"custom-field" : {
"custom-string" : "my_data",
"custom-bool" : false,
"custom-long" : 10
}
}
Response
The following response codes and messages are provided for protocol calls.
code | message | desc |
200 | ok | normal processing |
400 | bad request | Abnormal request |
404 | not found | Endpoint not found |