AppLovin User Revenue API
请注意,第三方数据集成产生的数据会被纳入集群的消耗数据量
概要
接口简介
| 接口名 | 类型 | 粒度 | 归因 | 成本 | 收益 | 展示 | 点击 | 转化 |
|---|---|---|---|---|---|---|---|---|
| User Revenue API | API | 用户级别 | ✅ | ✅ |
AppLovin 除了 SDK 和回调链接外,AppLovin 还提供了数据拉取接口 User Revenue API,支持拉取用户层级或展示层级的广告收益数据。
集成流程
- 接入 AppLovin SDK 与 AE SDK,并在 AppLovin SDK 中设置 AE 的用户识别 ID
- 登录 AppLovin 后台,获取 User Revenue API 所需的授权信息
- 登录 AE 后台,进入三方集成模块,新增 AppLovin User Revenue API 方案,并完成相关配置
- 查看 AE 系统是否成功接收数据,并完成报表搭建
一、客户端 SDK 配置
集成 AppLovin 数据的第一步,是在客户端完成 AE SDK 与 AppLovin SDK 的打通。
1.1 方案一(自动关联)
-
如果您接入的 Android、iOS SDK
- SDK 版本为 2.8.0~2.8.1 ,可以直接使用本方案
- SDK 版本为 2.8.2 及以上 ,您还需要安装三方数据插件。详情请参考 安卓 SDK 三方数据 与 iOS SDK 三方数据
请注意 AE 的 SDK 初始化和开启自动集成代码必须在 AppLovin 的 SDK 初始化之前完成,请按照以下步骤操作:
1. 初始化 AE SDK。
2. 调用`enableThirdPartySharing` 自动设置访客 ID。
3. 初始化 AppLovin SDK。
以下各端 SDK 的代码样例:
- Android
- iOS
// 1、初始化 Android SDK
TDConfig config = TDConfig.getInstance(this, APPID, TE_SERVER_URL);
TDAnalytics.init(config);
// 2、调用 enableThirdPartySharing 接口设置 ta_distinct_id 到 applovin 事件中
TDAnalytics.enableThirdPartySharing(TDThirdPartyType.APPLOVIN_IMPRESSION)
// 3、初始化 applovin SDK
// 。。。
// 1、初始化 iOS SDK
TDConfig *config = [[TDConfig alloc] init];
config.appid = appid;
config.serverUrl = url;
[TDAnalytics startAnalyticsWithConfig:config];
// 2、调用 enableThirdPartySharing 接口 设置 ta_distinct_id 到 applovin 事件中
[TDAnalytics enableThirdPartySharing:TDThirdPartyTypeAppLovin];
// 3、初始化 applovin SDK
// 。。。
该方案的原理就是内部自动调用 AppLovinSdk SDK 的 setUserIdentifier() 方法,传入 AE 项目的访客 ID。
1.2 方案二(手动关联)
手动关联方案,需要您在 AF AppLovin 中使用 setUserIdentifier() 接口设置 AE 项目的访客 ID 。
请注意 AE 的 SDK 初始化和调用 setUserIdentifier 接口必须在 AppLovin 的 SDK 初始化之前完成,请按照以下步骤操作:
1. 初始化AE SDK。
2. 调用`setUserIdentifier` 设置访客 ID。
3. 初始化 AppLovin SDK。
以下各端 SDK 手动集成代码样例:
- Android
- iOS
- Unity
// 1、初始化 Android SDK
TDConfig config = TDConfig.getInstance(this, APPID, TE_SERVER_URL);
TDAnalytics.init(config);
// 2、获取 AE 的访客 ID, 对应 AE 中的 #distinct_id
String distinctId = TDAnalytics.getDistinctId();
// 3、将访客ID设置到 applovin 采集事件中
AppLovinSdk.getInstance(context).setUserIdentifier(distinctId);
// 4、初始化 applovin SDK
// 。。。
// 1、初始化 iOS SDK
TDConfig *config = [[TDConfig alloc] init];
config.appid = appid;
config.serverUrl = url;
[TDAnalytics startAnalyticsWithConfig:config];
// 2、获取 AE 的访客 ID, 对应 AE 中的 #distinct_id
NSString *distinctId = [TDAnalytics getDistinctId];
// 3、将访客ID设置到 applovin 采集事件中
[ALSdk shared].userIdentifier = distinctId;
// 4、初始化 applovin SDK
// 。。。
// 1、初始化 Unity SDK
TDConfig config = new TDConfig("APPID","SERVER");
TDAnalytics.Init(config);
// 2、获取 AE 的访客 ID, 对应 AE 中的 #distinct_id
var distinctId = TDAnalytics.GetDistinctId();
// 3、将访客ID设置到 Applovin 采集事件中
MaxSdk.SetUserId(distinctId);
// 4、初始化 Applovin SDK
// 。。。
二、获取 Report Key
接下来,请您登录 AppLovin 后台,在「Account」-「Key」中获取 Report Key,请将该 Key 妥善保管
三、方案配置
当您完成了 SDK 配置并获得 Report Key 后,您可以登录 AE 系统,在「三方集成」模块中完成新方案的配置。下图是 AppLovin User Revenue API 的配置界面,请您按照本章节内容完成方案的创建:
3.1 授权信息配置
点击「授权信息」下的「配置授权信息」按钮,在弹出框内填写您在授权工作中获取到的信息(API Key 需要先点击右侧的编辑图标才能填写)
其中:
- APP ID:iOS 平台 iTunes ID 的数字部分,或者 Android 平台的应用包名
- Platform:游戏所在平台,请填写 android 或 ios
- API Key:刚刚获得的 Report Key
3.2 定时拉取
您可以在「定时拉取」模块设置 AE 系统定时拉取 AppLovin User Revenue API 数据的策略,可以选择在每天的某时或者每小时拉取一段时间的数据。由于拉取的数据也会计入数据量,建议不要定时拉取太长时间的数据
3.3 用户识别字段
由于 AppLovin User Revenue API 是用户级别数据,因此需要为其设置用户识别规则,即 AppLovin User Revenue API 数据中与#distinct_id 和 #account_id 对应的字段。AE 系统将根据该配置,在转换拉取的数据时,将这些字段设置为数据中的用户识别字段。
如果您按照本文档上一步进行客户端 SDK 配置,请使用以下配置:
- 账号 ID 关联字段:无
- 访客 ID 关联字段:user_id
3.4 事件表入库设置
打开「事件表入库设置」开关后,回传的数据都将写入到事件表中,我们建议您开启事件数据入库。
3.5 用户属性入库规则
在默认情况下,AE 系统不会将 AppLovin User Revenue API 数据写入到用户属性中。如果您希望将一些字段写入用户表,请首先打开规则,使其运行,再通过属性映射功能添加需要写入用户表的字段,来源属性名需填写字段的入库名:
3.6 集成配置
您可以在集成配置模块对数据拉取的细节配置进行控制。比如入库后的事件名等。
集成配置是一个 JSON,你可以按照需要对其中的内容进行调整
| 模块 | 名称 | 含义 |
|---|---|---|
| sink_event | event_name | 入库后的事件名,可以自定义 |
3.7 数据入库规则
- 使用数据中的 user_id 作为数据中的访客 ID,该字段应可对应 AE 项目中的访客ID
- 使用数据中的 date 字段,即广告展示时间,作为事件的 #event_time
- 数据事件名为 -- applovin_ad_revenue_impression_level
- 其他字段将全数入库,以下是所有返回数据的字段含义:
| 字段 | 入库名 | 说明 | 样例 |
|---|---|---|---|
| Ad Format | ad_format | 广告类型 | INTER, BANNER, REWARD |
| Ad Placement | ad_placement | 在 SDK 中自定义的 Placement 名 | Launch%20Screen |
| Ad Unit ID | ad_unit_id | MAX 广告 ID | 9ad0816ac071552a |
| Ad Unit Name | ad_unit_name | MAX 广告名称 | Control |
| Country | country | 两位字母的 Country Code | gb |
| Custom Data | custom_data | 通过 SDK 设置的自定义数据 | gb |
| Date | date | 广告曝光的时间 | 2019-07-29 15:53:07.39 |
| Device Type | device_type | 设备类型 | PHONE, TABLET |
| IDFA | idfa | iOS 端的 IDFA 或者安卓端的 Google Advertising ID | 860635ea-65bc-eaed-d355-1b5283b30b94 |
| IDFV | idfv | IDFV | 4CD1C3C4-3FD7-00F5-1635-7BC6D9387E60 |
| Network | network | 广告展示的 Ad Network | 取值可参考(MAX Mediation Documentation (applovin.com))APPLOVIN_NETWORK |
| Placement | placement | Ad Network 的 Placement 名 | MY_NATIVE_PLACEMENT |
| Revenue | revenue | 预估收益,包含 FB Bidding 的值 | 0.0121, 5.74466e-05 |
| User ID | user_id | SDK 设置的用户 ID,对应 AE 项目的访客 ID | 7634657898 |
| Waterfall | waterfall | 广告 Waterfall 的名称 | LAT |
3.8 标准化字段
以下事件属性会进行标准化处理:
| 原始字段 | 标准化字段 | 含义 |
|---|---|---|
| network_name | te_ads_object.media_source | 媒体渠道 |
| ad_mediation_platform | te_ads_object.media_source | 变现渠道 |
| ad_unit_name | te_ads_object.ad_group_name | 变现广告 Unit 名 |
| ad_unit_id | te_ads_object.ad_group_id | 变现广告 Unit ID |
| ad_placement | te_ads_object.placement | 变现广告位置 |
| app_id | te_ads_object.app_id | 应用 ID |
| country | te_ads_object.country | 国家地区编码 |
| platform | te_ads_object.platform | 平台,即 Android、iOS 等 |
| 【USD】定值 | te_ads_object.currency | 变现收益的币种 |
| revenue | te_ads_object.revenue | 变现收益 |

