集成Singular SKAdNetwork:合作伙伴的常见问题

了解如何成为Singular SKAdNetwork 解决方案的集成合作伙伴。另外请参阅:Singular归因集成,这是一个单独且必须的集成。

如果您是Singular的客户,请参阅Singular的SKAdNetwork解决方案

 

常见问题

什么是SKAdNetwork

Apple引入的App Tracking Transparency限制了传统用户级移动测量的使用。从iOS14.5开始,iOS广告标识符 (IDFA)仅适用于同意分享其数据(选择加入)的最终用户。

Apple提供的替代方案是SKAdNetwork, 它是一个以隐私为中心的广告活动汇总框架,最初在iOS11.3中引入,但已针对iOS14进行了重大更新。注册SKAdNetwok的媒体渠道合作伙伴在应用安装时可以自动接收”SKAdNetwork回传,无论最终用户是否选择共享他们的数据。

为什么要集成SingularSKAdNetwork解决方案?

SKAdNetwork将关键绩效数据分散在广告主、发行商、媒体渠道和移动测量供应商之间,使广告商更难访问他们作出营销决策所需的绩效数据。

Singular的SKAdNetwork解决方案(即SKAN)通过最终用户的设备、媒体渠道和Singular(作为MMP)之间的信息交换来收集广告主需要的数据。

  • SKAdNetwork回传是从设备发送到媒体渠道MMP的。

  • 转化值及其含义是从MMP发送到媒体渠道的。

  • 广告系列ID及其含义是从媒体渠道发送到MMP的。

IDFA_307d.png

Singular的安全SKAN数据流程图

集成SingularSKAdNetwork解决方案涉及什么内容?

与Singular的SKAdNetwork解决方案集成是一个独立于与Singular正常归因集成的过程。按照下列步骤与Singular的SKAdNetwork解决方案集成之前,必须先与Singular进行有效的归因集成

1. 注册SKAdNetwork

作为使用SKAdNetwork的先决条件,媒体渠道合作伙伴必须Apple注册,然后Apple会给合作伙伴分配一个“ad network ID”

2. 处理SKAdNetwork回传

选项A(推荐): 安全SKAN

方法 307 Redirect
重定向URL https://skadnetwork.singular.net/api/v1/skan_postback

使用307重定向允许Singular接收从设备发送的相同SKAdNetwork回传。

当您接收到一个使用Singular作为MMP的广告主的SKAdNetwork回传,使用307重定向允许Singular接收从设备发送的相同SKAdNetwork回传。将回传重定向到Singular的专用skan_postback端点。

重定向还应该在URL(请参阅媒体渠道字段)中包含一些额外的参数。这里是一个完整的URL示例,您可以把回传重定向到:

"https://skadnetwork.singular.net/api/v1/skan_postback?adn_campaign_id=102&adn_campaign_name=My%20Campaign"

了解更多细节请参阅参数参考

选项B:向Singular发送SKAdNetwork回传的内容

方法 POST请求
端点URL
https://skadnetwork.singular.net/api/v1/skan_postback
有效载荷 从SKAdNetwork收到的完整有效负载回传。

作为媒体渠道合作伙伴,您可以使用skan_postback端点给Singular发送一个回传,其中包含来自SKAdNetwork回传的未经修改的完整有效载荷。回传还应该包含一些额外参数

发送到Singular的回传可能如下所示(请确保将“Content-Type”标签设置为“application/json”格式):

{
"version": "3.0",
"ad-network-id": "com.example",
"campaign-id": 42,
"transaction-id": "6aafb7a5-0170-41b5-bbe4-fe71dedf1e28",
"app-id": 525463029,
"attribution-signature": "MDYCGQCsQ4y8d4BlYU9b8Qb9BPWPi+ixk\/OiRysCGQDZZ8fpJnuqs9my8iSQVbJO\/oU1AXUROYU=",
"redownload": true,
"source-app-id": 1234567891,
"fidelity-type": 1,
"conversion-value": 20,
"did-win": true,
"skan_ip": "136.25.2.194",
"skan_timestamp": 1601555400,
"adn_campaign_id": "102",
"adn_campaign_name": "My Campaign"
}

更多信息请参阅参数推荐

3. 解码SKAdNetwork转化值

使用上述方法向Singular发送一个SKAdNetwork回传后,您可能想解码转化值的含义。Singular通过两种方式支持解码SKAdNetwork转化值。

选项A: 转化事件回传(即将推出)

Singular可以向您发送回传通知,其中包含关于SKAdNetwork转化事件的信息。

目标是让您可以保存和处理转化信息,就像您处理Singular发送的关于用户级别归因和事件的回传一样。

Singular将与您的团队合作,了解您希望回传发送到哪个端点,并配置一个方便您处理的回传模板。

注意:SKAdNetwork转化回传与您可能通过与Singular归因集成所接收的任何归因回传或时间回传是分开的(需要单独配置)。

例如,Singular发给合作伙伴的回传可能如下所示(使用Singular回传宏语法):

{
"transaction-id": {SKAN_POSTBACK.TRANSACTION_ID},
"conversion_event":{CONVERSION.PARTNER_CONVERSION_NAME},
"is_attributed":{SKADNETWORK_IS_VALID},
"original-conversion-value":{SKAN_POSTBACK.CONVERSION_VALUE},
"mmp-conversion-name":{CONVERSION.ADVERTISER_CONVERSION_NAME},
"mmp-conversion-value":{CONVERSION.ADVERTISER_CONVERSION_VALUE},
"mmp-conversion-currency":{CONVERSION.ADVERTISER_CONVERSION_CURRENCY},
"advertiser-app":{SKAN_POSTBACK.APP_ID},
"attribution-type":"skadnetwork",
"mmp":"singular"
}

有关SKAdNetwork转化事件回传可用的所有宏,请参阅参考部分。

选项B:使用SKAN转化信息API

Singular还托管pull API,允许集成合作伙伴检索转化模型映射。

如果满足以下要求,这个API仅返还给定应用的配置转化模型:

有关请求/响应规格要求和示例的更多信息,请参阅我们的API支持技术文档

注意:SKAN转化信息API的使用范围是受限的。如果您有兴趣使用API解码SKAdNetwork转化值,请联系您的Singular合作伙伴经理或集成团队(请参阅如何联系Singular)。

4. 处理广告系列ID

如果您使用安全SKAN方法来报告SKAdNetwork回传,可以通过与Singular分析集成将信息传递给Singular

我希望与SingularSKAdNetwork解决方案集成。我应该如何开始呢?

先决条件:

  1. 收集要求: 请查看什么是Singular SKAdNetwork集成?来了解可用的集成细节和选项。
  2. 填写Singular的SKAdNetwork解决方案集成表格。
  3. 收到我们集成团队的回复:Singular集成团队将会审核您的表格,如果我们有任何问题或者是否收到了全部所需的信息,都会告知您。

  4. 测试集成:Singular完成创建集成后,我们将会联系您,以便让您知道您这一端如何测试集成。

怎样可以测试我与SingularSKAdNetwork解决方案的集成?

一旦您完成与SingularSKAdNetwork集成,并且收到SKAdNetwork ID配置完成的确认信息后,您可以转发一个已上线应用程序或示例应用程序的SKAN回传来测试集成。

当您已经开始给Singular客户的线上应用提供推广服务,并获得了客户共享给您的账号访问权限,您只需为他们的应用程序发送测试回传,并检查Singular导出日志或SKAN报告以确认回传已收到。

如果您还没有已上线的应用程序并且想测试示例应用程序,您可以为位于此处的Singular设备辅助应用发送模拟回传。

https://apps.apple.com/us/app/singular-device-assist/id1441750662

我们支持技术团队验证回传是否被成功处理。要收到该确认信息,请创建带有回传细节和发送时间的支持工单。

注意:如果您已经转发了模拟的SKAN回传(不是从Apple收到的真实回传),请确保在报告中将“SKAN验证状态切换为同时显示

mceclip0.png

如果延迟收到SKAdNetwork回传怎么办?Singular会把数据与正确的日期相匹配吗?

Singular收到SKAdNetwork回传后会自动进行处理。如果回传延迟,我们建议使用预估安装日期而不是回传日期来运行报告。

estimatedinstalldate_datetype.png

参考:SKAdNetwork回传参数

本节记录了Singular支持的入站SKAdNetwork回传到SingularAPI端点和参数(设备→Singular,媒体渠道→Singular)。

端点: https://skadnetwork.singular.net/api/v1/skan_postback
方法: POST
参数:
*
表示必选参数

数据源 参数 参数描述 类型
SKAdNetwork version *

来自SKAdNetwork回传的“版本”。

当采用SKAdNetwork版本2.0时,此参数为必选参数。
String
SKAdNetwork ad-network-id * 来自SKAdNetwork回传的“媒体渠道ID” String
SKAdNetwork transaction-id * 来自SKAdNetwork回传的“交互id” String
SKAdNetwork campaign-id * 来自SKAdNetwork回传的“广告系列id” Integer
SKAdNetwork app-id * 来自SKAdNetwork回传的“应用程序id” Integer
SKAdNetwork attribution-signature * 来自SKAdNetwork回传的“归因签名” String
SKAdNetwork redownload * 来自SKAdNetwork回传的“重新下载”。当采用SKAdNetwork版本2.0时,此参数为必选参数。 bool
SKAdNetwork source-app-id * 来自SKAdNetwork回传的“数据源应用程序ID”。当采用SKAdNetwork版本2.0时,此参数为必选参数。 (当原始回传中不存在此字段时,请勿发送此字段) Integer
SKAdNetwork fidelity-type * 来自SKAdNetwork回传的“保真类型”。当采用SKAdNetwork版本2.0时,此参数为必选参数。 Integer
SKAdNetwork conversion-value *

来自SKAdNetwork回传的“转化值”。当采用SKAdNetwork版本2.0时,此参数为必选参数。(当原始回传中不存在此字段时,请勿发送此字段)

Integer
SKAdNetwork did-win *  来自SKAdNetwork回传的“did-win”。当采用SKAdNetwork版本3.0时,此参数为必选参数。 bool
媒体渠道 skan_timestamp * 收到SKAdNetwork回传时的Unix格式(秒)时间戳 Integer
媒体渠道 skan_ip * 来自SKAdNetwork回传发送者的IP地址 String
媒体渠道 adn_campaign_id * 广告系列的ID String
媒体渠道 adn_campaign_name * 广告系列的名称 String
媒体渠道 adn_creative_id 素材的ID String
媒体渠道 adn_creative_name 素材的名称 String
媒体渠道 adn_sub_campaign_id Sub-campaign的ID。 可能也代表"ad group"或 "ad set"。 String
媒体渠道 adn_sub_campaign_ name Sub-campaign的名称。可能也代表"ad group"或 "ad set"。 String
媒体渠道 adn_sub_adnetwork_ name 子渠道,可能也代表媒体渠道等级的一个额外层级 String

参考:转化事件回传

请求规范(Singular → 媒体渠道

本节记录了Singular与合作伙伴之间的SKAdNetwork转化事件回传中的可用值。这些值被用来为媒体渠道提供转化值信息。

这些值在GETPOST有效载荷中都是可用的。

数据源 值的描述 类型
SKAdNetwork {SKAN_POSTBACK.VERSION} 来自SKAdNetwork回传的“版本”。适用于SKAdNetwork2.0版本 String
SKAdNetwork {SKAN_POSTBACK. AD_NETWORK_ID} 来自SKAdNetwork回传的“媒体渠道ID”。 String
SKAdNetwork {SKAN_POSTBACK. CAMPAIGN_ID} 来自SKAdNetwork回传的“广告系列ID”。 Integer
SKAdNetwork {SKAN_POSTBACK. TRANSACTION_ID} 来自SKAdNetwork回传的“交互ID”。 String
SKAdNetwork {SKAN_POSTBACK.APP_ID} 来自SKAdNetwork回传的“应用程序ID”。 Integer
SKAdNetwork {SKAN_POSTBACK. ATTRIBUTION_SIGNATURE} 来自SKAdNetwork回传的“归因签名”。 String
SKAdNetwork {SKAN_POSTBACK. REDOWNLOAD} 来自SKAdNetwork回传的“重新下载”。适用于SKAdNetwork2.0版本。 Integer
SKAdNetwork {SKAN_POSTBACK. SOURCE_APP_ID} 来自SKAdNetwork回传的“源应用程序ID”。适用于SKAdNetwork2.0版本。 Integer
SKAdNetwork {SKAN_POSTBACK. CONVERSION_VALUE} 来自SKAdNetwork回传的“转化值”。适用于SKAdNetwork2.0版本。 Integer
SKAdNetwork {ATTRIBUTION_IP} 来自SKAdNetwork回传的IP,例如136.25.2.194 String
Singular
{SKADNETWORK_IS_VALID}
Singular是否能够验证回传的安装签名(0或1) Integer
Singular {ATTRIBUTION_COUNTRY} SKAdNetwork回传的基于IP的双字母国家代码,例如US String
Singular {ATTRIBUTION_STATE} SKAdNetwork 回传的基于IP的地理位置所在州/省,例如California String
Singular {ATTRIBUTION_CITY} SKAdNetwork 回传的基于IP的地理位置所在城市,例如San Francisco String
Singular {CONVERSION.PARTNER_ CONVERSION_NAME} Singular能够自动映射支持的转化模型、转化名称以及合作伙伴支持的事件名称,例如合作伙伴购买事件 String
Singular {CONVERSION.ADVERTISER_ CONVERSION_NAME} 广告主为转化名称命名,例如我的购买事件 String
Singular {CONVERSION.ADVERTISER_ CONVERSION_VALUE} 广告主为转化定义的转化值,例如5 String
Singular {CONVERSION.ADVERTISER_ CONVERSION_CURRENCY} 对于支持的收入转化模型,转化的货币模型代码(通常是账户货币),例如USD String
Singular {CONVERSION.ADVERTISER_ CONVERSION_MODEL_TYPE} 广告主正在使用的转化模型类型的名称,例如收入 String
Singular {CONVERSION.ADVERTISER_ CONVERSION_MODEL_NAME} 广告主为转化模型配置的名称,例如我的IAP收入模型 String

参考:转化信息API

使用转化信息来检索Singular关于特定广告主的SKAdNetwork转化值的转化模型信息记录。