AppLovin 数据集成解决方案
最近更新时间:2023-07-05
一、集成方案介绍
请注意,第三方数据集成产生的数据会被纳入集群的消耗数据量
概要
本文将介绍如何将 AppLovin 的数据回传到 Agentic Engine(后文简称 AE 系统) ,本方案支持:
点击标题可跳转至方案的对应章节
| 集成方法 | 数据粒度 | 集成类型 | 涵盖数据 |
|---|---|---|---|
| Impression-Level User Revenue API | 用户数据 | 客户端 SDK | 收益数据,展示数据 |
| MAX S2S Impression Revenue API | 用户数据 | 推式 | 收益数据,展示数据 |
| User Revenue API(展示级别) | 用户数据 | 拉式 | 收益数据,展示数据 |
| 聚合指标 | 拉式 | 成本数据,收益数据,展示数据,点击数据,转化数据 | |
| Revenue Reporting API | 聚合指标 | 拉式 | 收益数据,展示数据 |
| 聚合指标 | 拉式 | 成本数据,展示数据,点击数据,转化数据 |
二、Impression-Level User Revenue API(客户端 SDK 上报)
接口基本信息
| 接口名 | API 类型 | 产品化 | 数据粒度 | 归因数据 | 成本数据 | 收益数据 | 展示数据 | 点击数据 | 转化数据 |
|---|---|---|---|---|---|---|---|---|---|
| Impression-Level User Revenue API | 客户端 SDK | 否 | 用户级别 | 是 | 是 |
从 AppLovin SDK 版本 10.3.0 开始,您可以通过 AppLovin SDK 中的 Impression-Level User Revenue API 获取展示级别的用户收入数据。再通过 AE SDK 进行数据上报,将收益数据直接传输到 AE 系统中,即可实现实时的收益数据上报。
如果要实现收益数据获取,您需要创建 MaxAdRevenueListener,并复写 onAdRevenuePaid() 方法,在该方法中实现收益数据的获取以及 AE SDK 的数据上报,最后将该监听器传递给 setRevenueListener() 。以下代码示例展示了如何复写 onAdRevenuePaid() 方法,获取收益数据并将其通过 AE SDK 上传至 AE 服务器:
示例代码一:
如果您接入的 AE SDK 版本为 2.8.0~2.8.1 ,推荐使用本方案
如果您接入的 AE SDK 版本为 2.8.2 及以上 ,使用本方案您还需要安装三方数据插件
详情可参考 安卓 SDK 三方数据 与 iOS SDK 三方数据
void onAdRevenuePaid(final MaxAd ad){
instance.enableThirdPartySharing(TDThirdPartyShareType.TD_APPLOVIN_USER,ad)
}
该方案的原理就是内部自动解析MaxAd中的参数,并且发送appLovin_sdk_ad_revenue事件
示例代码二:
void onAdRevenuePaid(final MaxAd ad)
{
JSONObject properties = new JSONObject();
try {
properties.put("revenue",ad.getRevenue());
properties.put("countryCode",AppLovinSdk.getInstance(context).getConfiguration().getCountryCode());
properties.put("networkName", ad.getNetworkName());
properties.put("adUnitId", ad.getAdUnitId());
properties.put("adFormat", ad.getFormat());
properties.put("placement", ad.getPlacement());
}catch(JSONException e){
}
instance.track("appLovin_sdk_ad_revenue", properties);
}
三、MAX S2S Impression Revenue API
接口基本信息
| 接口名 | API 类型 | 产品化 | 数据粒度 | 归因数据 | 成本数据 | 收益数据 | 展示数据 | 点击数据 | 转化数据 |
|---|---|---|---|---|---|---|---|---|---|
| MAX S2S Impression Revenue API | 回传 | 否 | 用户级别 | 是 | 是 |
AppLovin 提供了通过 MAX S2S Impression Revenue API 回传数据的方法,每当变现广告被展示时,AppLovin 会将展示层级的收益数据回传到配置好的回调链接处。
3.1 AppLovin 客户端 SDK 配置
为了将回调数据与 AE 项目数据关联起来,您需要在 AppLovin SDK 中传入 AE 系统的访客 ID 作为 AppLovin 的用户自定义标识 ID。以下是安卓和 iOS 端(Swift)的代码样例:
- 安卓样例
// 获取 AE 的访客 ID, 对应 AE 中的 #distinct_id
String ta_distinct_id = ThinkingAnalyticsSDK.sharedInstance(context, TA_APP_ID).getDistinctId();
AppLovinSdk.getInstance(context).setUserIdentifier(ta_distinct_id);
- iOS 样例
ALSdk.shared()!.userIdentifier = ThinkingAnalyticsSDK.sharedInstance()!.getDistinctId()
3.2 配置回调地址
接下来需要配置回调地址。回传数据中能够接收到的字段称为“宏”,默认情况下,我们将拉取所有字段(即配置所有宏)。下表是 MAX S2S Impression Revenue API 支持的所有宏,您可以根据实际需要调整需要拉取的字段:
| 宏 | 是否必要 | 说明 | 样例 |
|---|---|---|---|
| {AD_UNIT_ID} | MAX 广告 ID | 9ad0816ac071552a | |
| {AD_UNIT_NAME} | MAX 广告名 | My%20App%20Banners | |
| {AD_UNIT_TEST_NAME} | 广告测试组的名称 | Control | |
| {ALL_REVENUE} | 是 | 预估的收益,包括 FB Bidding 时的收益 | 0.0121, 5.74466e-05 |
| {CC} | 两位字母的 Country Code | gb | |
| {CUSTOM_DATA} | 通过 SDK 设置的自定义数据 | gb | |
| {EVENT_ID} | 事件唯一 ID | 8dc948013d71f04264b8e5c1c61933154b226e08 | |
| {EVENT_TOKEN} | 事件 Token(由事件唯一 ID 生成) | e000949f6d851c1f34adae08e6ef1076ba43cf31 | |
| {EVENT_TOKEN_ALL} | 全局事件 Token(由事件唯一 ID 以及所有请求参数宏生成) | eba615583ed59bc679a495ec58439f4b82b5460d822348eff6be5f218702a97a | |
| {FORMAT} | 广告类型 | reward, banner, inter | |
| {IDFA} | iOS 端的 IDFA 或者安卓端的 Google Advertising ID | 860635ea-65bc-eaed-d355-1b5283b30b94 | |
| {IDFV} | IDFV | 4CD1C3C4-3FD7-00F5-1635-7BC6D9387E60 | |
| {IP} | 用户的 IP 地址 | 162.1.1.1, fe80%3A%3A1ff%3Afe23%3A4567%3A890a%0A | |
| {NETWORK} | 广告展示的 Ad Network | 取值可参考(MAX Mediation Documentation (applovin.com))APPLOVIN_NETWORK | |
| {NETWORK_PLACEMENT} | Ad Network 的 内部 Placement 名 | ca-app-pub-12345678%2F0987654321 | |
| {PACKAGE_NAME} | 包名,安卓端的 App Package Name 和 iOS 端的 Bundle ID (iOS) | com.test.app | |
| {PLACEMENT} | 在 SDK 中自定义的 Placement 名 | Launch%20Screen | |
| {PLATFORM} | 平台 | android, ios | |
| {PRECISION} | 收益数据的精度,与数据的来源有关:
| exact | |
| {REVENUE} | 是 | 预估收益,FB Bidding 时该值为 0 | 0.0121, 5.74466e-05 |
| {TS} | 是 | 广告曝光的时间 | 1546300800 |
| {USER_ID} | 是 | SDK 设置的用户 ID,对应 AE 项目的访客 ID | 7634657898 |
| {WATERFALL_NAME} | 广告 Waterfall 的名称 | LAT |
接下来,AE 工作人员会将回调地址发送给您,您需要联系 AppLovin 工作人员配置该回调链接。
3.3 数据入库规则
默认情况下,我们会将回调数据以事件形式写入 AE 项目中,一条回调数据(即一次展示)写入一条事件数据:
- 使用数据中的 {USER_ID} 作为数据中的访客 ID,该字段应可对应 AE 项目中的访客ID
- 使用数据中的 {TS} 字段,即广告展示时间,作为事件的 #event_time
- 数据事件名为 -- applovin_max_s2s_impression_revenue
- 回调链接中配置的其他字段将全数入库
接下来您可以基于事件名为 applovin_max_s2s_impression_revenue 事件在 AE 系统进行分析。
3.4 数据集成配置信息模板
在阅读完以上文档之后,建议您完成以下信息模板,并发送给您在 ThinkingAI 的客户成功经理:
数据接口:AppLovin MAX S2S Impression Revenue API
---------
公司名称:XXX
AE 项目环境:(SAAS/私有化)
AE 项目名称:XXX
AE 项目 APP ID: XXX
数据接收地址 push_url: XXX
---------
回调宏配置
需要的字段:{AD_UNIT_ID},{AD_UNIT_NAME},{AD_UNIT_TEST_NAME},{ALL_REVENUE},{CC},{CUSTOM_DATA},{EVENT_ID},{EVENT_TOKEN},{EVENT_TOKEN_ALL},{FORMAT},{IDFA},{IDFV},{IP},{NETWORK},{NETWORK_PLACEMENT},{PACKAGE_NAME},{PLACEMENT},{PLATFORM},{PRECISION},{REVENUE},{TS},{USER_ID},{WATERFALL_NAME}
四、User Revenue API(展示级别)
接口基本信息
| 接口名 | API 类型 | 产品化 | 数据粒度 | 归因数据 | 成本数据 | 收益数据 | 展示数据 | 点击数据 | 转化数据 |
|---|---|---|---|---|---|---|---|---|---|
| User Revenue API(展示级别) | 拉式 | 否 | 用户级别 | 是 | 是 |
AppLovin 除了 SDK 和回调链接外,AppLovin 还提供了数据拉取接口 User Revenue API,支持拉取用户层级或展示层级的广告收益数据。
目前 AE 仅支持拉取展示级别的数据(非聚合,一条数据对应一次广告展示)
4.1 AppLovin 客户端 SDK 配置
方案一(自动关联):
如果您接入的 AE SDK 版本为 2.8.0~2.8.1 ,推荐使用本方案
如果您接入的 AE SDK 版本为 2.8.2 及以上 ,使用本方案您还需要安装三方数据插件
详情可参考 安卓 SDK 三方数据 与 iOS SDK 三方数据
// 初始化 AE SDK
ThinkingAnalyticsSDK instance = ThinkingAnalyticsSDK.sharedInstance(this, TA_APP_ID, TA_SERVER_URL);
// 开启 AppLovinSdk id关联
instance.enableThirdPartySharing(TDThirdPartyShareType.TD_APPLOVIN_IMPRESSION);
// 初始化 AppLovinSdk SDK
该方案的原理就是内部自动调用 AppLovinSdk SDK 的 setUserIdentifier() 方法,传入 AE 项目的访客 ID。
方案二(手动关联):
为了将 API 拉取的数据与 AE 项目数据关联起来,您需要在 AppLovin SDK 中传入 AE 系统的访客 ID 作为 AppLovin 的用户自定义标识 ID。以下是安卓和 iOS 端(Swift)的代码样例:
- 安卓样例
// 获取 AE 的访客 ID, 对应 AE 中的 #distinct_id
String ta_distinct_id = ThinkingAnalyticsSDK.sharedInstance(context, TA_APP_ID).getDistinctId();
AppLovinSdk.getInstance(context).setUserIdentifier(ta_distinct_id);
- iOS 样例
ALSdk.shared()!.userIdentifier = ThinkingAnalyticsSDK.sharedInstance()!.getDistinctId()
4.2 接口参数
-
API Key:
- 需要提供用于报表拉取的 API Key(即Report Key),可在 AppLovin 后台「Keys」 标签页获得
-
平台:
- 需要单独指定拉取的数据的平台,即安卓端还是 iOS 端
-
App:
- 需要指定拉取哪个 App 的数据,安卓端和 iOS 端需要传入对应的包名或应用市场 ID,您需要将这些信息提供给 AE 工作人员
-
时间:
- 拉取以日为时间单位的数据
- 每个 UTC 日的 8 点可以拉取前一个 UTC 日的数据,比如 UTC 日 2019-01-01 的数据可以在 UTC 时间 2019-01-02 08:00:00 之后获取到
4.3 数据入库规则
默认情况下,我们会将拉取的数据以事件形式写入 AE 项目中,一条数据(即一次展示)写入一条事件数据:
- 使用数据中的 user_id 作为数据中的访客 ID,该字段应可对应 AE 项目中的访客ID
- 使用数据中的 date 字段,即广告展示时间,作为事件的 #event_time
- 数据事件名为 -- applovin_ad_revenue_impression_level
- 其他字段将全数入库,以下是所有返回数据的字段含义:
| 字段 | 说明 | 样例 |
|---|---|---|
| Ad Format | 广告类型 | INTER, BANNER, REWARD |
| Ad Placement | 在 SDK 中自定义的 Placement 名 | Launch%20Screen |
| Ad Unit ID | MAX 广告 ID | 9ad0816ac071552a |
| Ad Unit Name | MAX 广告名称 | Control |
| Country | 两位字母的 Country Code | gb |
| Custom Data | 通过 SDK 设置的自定义数据 | gb |
| Date | 广告曝光的时间 | 2019-07-29 15:53:07.39 |
| Device Type | 设备类型 | PHONE, TABLET |
| IDFA | iOS 端的 IDFA 或者安卓端的 Google Advertising ID | 860635ea-65bc-eaed-d355-1b5283b30b94 |
| IDFV | IDFV | 4CD1C3C4-3FD7-00F5-1635-7BC6D9387E60 |
| Network | 广告展示的 Ad Network | 取值可参考(MAX Mediation Documentation (applovin.com))APPLOVIN_NETWORK |
| Placement | Ad Network 的 Placement 名 | MY_NATIVE_PLACEMENT |
| Revenue | 预估收益,包含 FB Bidding 的值 | 0.0121, 5.74466e-05 |
| User ID | SDK 设置的用户 ID,对应 AE 项目的访客 ID | 7634657898 |
| Waterfall | 广告 Waterfall 的名称 | LAT |
4.4 数据集成配置信息模板
在阅读完以上文档之后,建议您完成以下信息模板,并发送给您在 ThinkingAI 的客户成功经理:
接口:User Revenue API(展示级别)
--------
公司名称:XXX
AE 项目环境:(SAAS/私有化)
AE 项目名称:XXX
AE 项目 APP ID: XXX
数据接收地址 push_url: XXX
---------
AppLovin api_key(即 Report Key):XXX
应用市场 App ID:XXX(安卓以com.开头,iOS 以 id 开头)
--------
API 配置
历史数据拉取时间范围:yyyy/mm/dd - yyyy/mm/dd
定时拉取:每天 X 点拉取前一天的数据(建议北京时间 16:00 之后,即 UTC 时间 8:00 之后)
五、Basic Reporting API
接口基本信息
| 接口名 | API 类型 | 产品化 | 数据粒度 | 归因数据 | 成本数据 | 收益数据 | 展示数据 | 点击数据 | 转化数据 |
|---|---|---|---|---|---|---|---|---|---|
| Basic Reporting API | 拉式 | 否 | 聚合数据 | 是 | 是 | 是 | 是 | 是 |
除了用户粒度的收益数据外,AppLovin 也提供了聚合指标 API,即 Basic Reporting API。
5.1 报表类型
Basic Reporting API 提供了两种截然不同的报表,即广告主报表(advertiser)与流量主报表(publisher),以下章节将会分别介绍两类报表:
5.2 广告主报表(advertiser)
5.2.1 接口参数
- API Key:
- 需要提供用于报表拉取的 API Key(即Report Key),可在 AppLovin 后台「Keys」 标签页获得
- 时间:
- 拉取以 UTC 日为时间单位的数据,最多只能拉取近 45 天的数据
- 筛选:
- 支持对指标类型字段进行筛选,比如筛选出点击量大于 500 的数据,类似于 SQL 中的 having 逻辑
5.2.2 涵盖字段
以下是广告主报表返回的字段,您可以按照实际需要,选择返回的字段
| 字段名 | 是否默认 | 含义 |
|---|---|---|
| day | 是 | 报表的日期 |
| impressions | 是 | 曝光量 |
| clicks | 是 | 点击量 |
| ctr | 是 | 点击率 |
| conversions | 是 | 转化量(即安装量) |
| conversion_rate | 是 | 转化率(安装量 / 点击量) |
| average_cpa | 是 | 平均 CPA(安装) |
| average_cpc | 是 | 平均 CPC |
| ad | 是 | 广告名称 |
| country | 是 | 两位英文字母的 Country Code |
| campaign | 是 | Campaign 名称 |
| app_id_external | 是 | 经过哈希处理的应用 ID |
| external_placement_id | 经过编码的应用 ID | |
| traffic_source | 是 | 流量来源,取值为 AppLovin 或其他 exchange 渠道名 |
| ad_type | 是 | 广告类型,取值如:GRAPHIC, VIDEO, REWARD, 或 PLAY |
| cost | 是 | 广告成本 |
| sales | 是 | 内购次数 (需要配置 Revenue 回调) |
| first_purchase | 首次内购的用户数 (需要配置 Revenue 回调) | |
| size | 是 | 广告尺寸,取值如:INTER, BANNER, MREC, LEADER, 或 NATIVE |
| device_type | 是 | 设备类型,取值如:phone, tablet 或 other |
| platform | 是 | 设备平台,取值如:android, ios, fireos, tvos |
| campaign_package_name | 是 | 推广 App 的包名,安卓端为 package name,iOS 端为 Bundle ID |
| campaign_store_id | 推广 App 的应用市场 ID,安卓端为 package name,iOS 端为 iTunes ID 的数字部分 | |
| campaign_id_external | 是 | Campaign 的唯一标识 |
| campaign_ad_type | 是 | 如果是 User Acquisition Campaign,该值为 ua ,如果是 Retargeting Campaign,该值为 rt |
| application | 推广 App 名称 |
5.2.3 入库规则
默认情况下,我们会将拉取的数据以事件形式写入 AE 项目中:
- 由于 Basic Reporting API 是聚合数据,因此我们将使用一个固定值作为其用户标识,您可以认为所有数据挂载在一个虚拟用户上
- 使用数据中的 day 字段,即数据的日期,设置为聚合数据的 #event_time
- 数据事件名为 -- applovin_advertiser
- 其余字段都将会入库
5.3 流量主报表(publisher)
5.3.1 接口参数
- API Key:
- 需要提供用于报表拉取的 API Key(即Report Key),可在 AppLovin 后台「Keys」 标签页获得
- 时间:
- 拉取以 UTC 日为时间单位的数据,最多只能拉取近 45 天的数据
- 筛选:
- 支持对指标类型字段进行筛选,比如筛选出点击量大于 500 的数据,类似于 SQL 中的 having 逻辑
5.3.2 涵盖字段
以下是流量主报表返回的字段,您可以按照实际需要,选择返回的字段
| 字段名 | 是否默认 | 含义 |
|---|---|---|
| day | 是 | 报表的日期 |
| hour | 是 | 报表的小时值 (仅当拉取最近 30 天 时存在该字段) |
| impressions | 是 | 曝光量 |
| clicks | 是 | 点击量 |
| ctr | 是 | 点击率 |
| revenue | 是 | 变现总收益 |
| ecpm | 是 | ECPM |
| country | 是 | 两位英文字母的 Country Code |
| ad_type | 是 | 广告类型,取值如:GRAPHIC, PLAY, VIDEO, REWARD, 或 MRAID |
| size | 是 | 广告尺寸,取值如:INTER, BANNER, MREC, LEADER, 或 NATIVE |
| device_type | 是 | 设备类型,取值如:phone, tablet 或 other |
| platform | 是 | 设备平台,取值如:android, ios, fireos, tvos |
| application | 是 | App 名称 |
| package_name | 是 | 推广 App 的包名,安卓端为 package name,iOS 端为 Bundle ID |
| store_id | 推广 App 的应用市场 ID,安卓端为 package name;iOS 端为 iTunes ID 的数字部分,无法获取时取 Bundle ID | |
| placement | 是 | Placement 名称 |
| application_is_hidden | 是 | 该 App 是否在 AppLovin 看板中被隐藏 |
| zone | 是 | Zone 名称(仅当您的账号开启了 Zones) |
| zone_id | 是 | Zone ID(仅当您的账号开启了 Zones) |
| bidding_integration | 集成的竞价方式(取值如 MAX 或 Admob Open Bidding) |
5.3.3 入库规则
默认情况下,我们会将拉取的数据以事件形式写入 AE 项目中:
- 由于 Basic Reporting API 是聚合数据,因此我们将使用一个固定值作为其用户标识,您可以认为所有数据挂载在一个虚拟用户上
- 使用数据中的 day 字段,即数据的日期,设置为聚合数据的 #event_time
- 数据事件名为 -- applovin_publisher
- 其余字段都将会入库
5.4 数据集成配置信息模板
在阅读完以上文档之后,建议您完成以下信息模板,并发送给您在 ThinkingAI 的客户成功经理:
接口:Basic Reporting API
--------
公司名称:XXX
AE 项目环境:(SAAS/私有化)
AE 项目名称:XXX
AE 项目 APP ID: XXX
数据接收地址 push_url: XXX
---------
AppLovin api_key(即 Report Key):XXX
拉取的数据类型:[广告主/流量主]
需要拉取的字段:XXX,XXX
历史数据拉取时间范围:yyyy/mm/dd - yyyy/mm/dd(仅支持拉取近 45 天的数据)
定时拉取:每天 X 点拉取前一天的数据
5.5 数据校验
可以在 AE 系统后台的「数据管理」—「事件管理」页面 或「SQL IDE」页面搜索以下事件是否入库:
- 广告主报表数据:applovin_advertiser
- 流量主报表数据:applovin_publisher
六、Revenue Reporting API
接口基本信息
| 接口名 | API 类型 | 产品化 | 数据粒度 | 归因数据 | 成本数据 | 收益数据 | 展示数据 | 点击数据 | 转化数据 |
|---|---|---|---|---|---|---|---|---|---|
| Revenue Reporting API | 拉式 | 否 | 聚合数据 | 是 | 是 |
AppLovin 还提供了专门针对 Max 变现聚合指标 API,即 Revenue Reporting API。
6.1 接口参数
- API Key:
- 需要提供用于报表拉取的 API Key(即Report Key),可在 AppLovin 后台「Keys」 标签页获得
- 时间:
- 拉取以 UTC 日为时间单位的数据,最多只能拉取近 45 天的数据
- 筛选:
- 支持对指标类型字段进行筛选,比如筛选出点击量大于 500 的数据,类似于 SQL 中的 having 逻辑
6.2 涵盖字段
以下是报表返回的字段,您可以按照实际需要,选择返回的字段
| 字段 | 是否默认 | 说明 | 样例 |
|---|---|---|---|
| ad_format | 是 | 广告类型 | INTER, BANNER, REWARD |
| ad_unit_waterfall_name | 是 | 广告 Waterfall 的名称 | LAT |
| application | 是 | 应用名称 | My App |
| attempts | 是 | Ad Network 的广告尝试拉取数(仅当分组中拉取字段中存在 network 或 network_placement 时可用,存在 max_placement 时不可用) | 41734 |
| country | 是 | 两位字母的 Country Code | gb |
| custom_network_name | 是 | 自定义的广告 Ad Network 名称 | Custom Network |
| day | 是 | 广告曝光的日期 | 2019-07-29 |
| device_type | 是 | 设备类型 | PHONE, TABLET |
| ecpm | 是 | 预估的 eCPM(美元) | 8.47 |
| estimated_revenue | 是 | 预估的总收益(美元) | 245.12 |
fill_rate | 是 | 广告填充率 = 广告响应数 / 尝试拉取数(仅当分组中拉取字段中存在 network 或 network_placement 时可用,存在 max_placement 时不可用) | .8512 |
has_idfa | 是 | 是否可以获取用户的广告 ID,如果用户开启了 LAT 或者 GDPR 适用区域内关闭了数据跟踪,则该值为 0,否则为 1 | 1 |
| hour | 是 | 报表的小时值 (仅当拉取最近 30 天 时存在该字段) | 20:00 |
| impressions | 是 | 广告曝光量 | 28942 |
| max_ad_unit | 是 | MAX 广告名 | My%20App%20Banners |
| max_ad_unit_id | 是 | MAX 广告 ID | 9ad0816ac071552a |
| max_ad_unit_test | 是 | 广告测试组的名称 | Control |
| max_placement | 在 SDK 中自定义的 Placement 名 | Launch%20Screen | |
| network | 是 | 广告展示的 Ad Network | 取值可参考(MAX Mediation Documentation (applovin.com))APPLOVIN_NETWORK |
| network_placement | 是 | Ad Network 的 Placement 名 | MY_NATIVE_PLACEMENT |
| package_name | 是 | 包名,安卓端的 App Package Name 和 iOS 端的 Bundle ID (iOS) | com.test.app |
| platform | 是 | 平台 | android, ios |
| requests | 广告请求数(当存在 network 或 network_placement、max_placement 时不可用) | 45651 | |
| responses | 是 | 广告响应数(仅当分组中拉取字段中存在 network 或 network_placement 时可用,存在 max_placement 时不可用) | 39841 |
| store_id | 推广 App 的应用市场 ID,安卓端为 package name,iOS 端为 iTunes ID 的数字部分 | 1207472156 |
6.3 入库规则
默认情况下,我们会将拉取的数据以事件形式写入 AE 项目中:
- 由于 Revenue Reporting API 是聚合数据,因此我们将使用一个固定值作为其用户标识,您可以认为所有数据挂载在一个虚拟用户上
- 不存在 hour 字段时(即 30 天前的数据),使用数据中的 day 字段,即数据的日期,设置为聚合数据的 #event_time;存在 hour 的情况下,会拼接 day 和 hour 字段为聚合数据的 #event_time
- 数据事件名为 -- applovin_maxreport
- 其余字段都将会入库
6.4 数据集成配置信息模板
在阅读完以上文档之后,建议您完成以下信息模板,并发送给您在 ThinkingAI 的客户成功经理:
接口:Revenue Reporting API
--------
公司名称:XXX
AE 项目环境:(SAAS/私有化)
AE 项目名称:XXX
AE 项目 APP ID: XXX
数据接收地址 push_url: XXX
---------
AppLovin api_key(即 Report Key):XXX
历史数据拉取时间范围:yyyy/mm/dd - yyyy/mm/dd(仅支持拉取近 45 天的数据)
需要拉取的字段:XXX,XXX
定时拉取:每天 X 点拉取前一天的数据
七、Probabilistic Report
接口基本信息
| 接口名 | API 类型 | 产品化 | 数据粒度 | 归因数据 | 成本数据 | 收益数据 | 展示数据 | 点击数据 | 转化数据 |
|---|---|---|---|---|---|---|---|---|---|
| Probabilistic Report | 拉式 | 否 | 聚合数据 | 是 | 是 | 是 | 是 |
Probabilistic Report 与 Basic Reporting API 类似,其主要差异在于:
- 仅支持广告主报表数据,不支持流量主报表
- 安装与成本相关指标均基于预估的安装数据
7.1 接口参数
- API Key:
- 需要提供用于报表拉取的 API Key(即Report Key),可在 AppLovin 后台「Keys」 标签页获得
- 时间:
- 拉取以 UTC 日为时间单位的数据,最多只能拉取近 45 天的数据
- 筛选:
- 支持对指标类型字段进行筛选,比如筛选出点击量大于 500 的数据,类似于 SQL 中的 having 逻辑
7.2 涵盖字段
以下是广告主报表返回的字段,您可以按照实际需要,选择返回的字段
| 字段名 | 是否默认 | 含义 |
|---|---|---|
| day | 是 | 报表的日期 |
| impressions | 是 | 曝光量 |
| clicks | 是 | 点击量 |
| ctr | 是 | 点击率 |
| conversions | 是 | 转化量(即安装量) |
| conversion_rate | 是 | 转化率(安装量 / 点击量) |
| average_cpa | 是 | 平均 CPA(安装) |
| average_cpc | 是 | 平均 CPC |
| ad | 是 | 广告名称 |
| country | 是 | 两位英文字母的 Country Code |
| campaign | 是 | Campaign 名称 |
| app_id_external | 是 | 经过哈希处理的应用 ID |
| external_placement_id | 经过编码的应用 ID | |
| traffic_source | 是 | 流量来源,取值为 AppLovin 或其他 exchange 渠道名 |
| ad_type | 是 | 广告类型,取值如:GRAPHIC, VIDEO, REWARD, 或 PLAY |
| cost | 是 | 广告成本 |
| sales | 是 | 内购次数 (需要配置 Revenue 回调) |
| first_purchase | 首次内购的用户数 (需要配置 Revenue 回调) | |
| size | 是 | 广告尺寸,取值如:INTER, BANNER, MREC, LEADER, 或 NATIVE |
| device_type | 是 | 设备类型,取值如:phone, tablet 或 other |
| platform | 是 | 设备平台,取值如:android, ios, fireos, tvos |
| campaign_package_name | 是 | 推广 App 的包名,安卓端为 package name,iOS 端为 Bundle ID |
| campaign_store_id | 推广 App 的应用市场 ID,安卓端为 package name,iOS 端为 iTunes ID 的数字部分 | |
| campaign_id_external | 是 | Campaign 的唯一标识 |
| campaign_ad_type | 是 | 如果是 User Acquisition Campaign,该值为 ua ,如果是 Retargeting Campaign,该值为 rt |
| application | 推广 App 名称 |
7.3 入库规则
默认情况下,我们会将拉取的数据以事件形式写入 AE 项目中:
- 由于 Probabilistic Report 是聚合数据,因此我们将使用一个固定值作为其用户标识,您可以认为所有数据挂载在一个虚拟用户上
- 使用数据中的 day 字段,即数据的日期,设置为聚合数据的 #event_time
- 数据事件名为 -- applovin_prob_advertiser
- 其余字段都将会入库
7.4 数据集成配置信息模板
在阅读完以上文档之后,建议您完成以下信息模板,并发送给您在 ThinkingAI 的客户成功经理:
接口:Probabilistic Report
--------
公司名称:XXX
AE 项目环境:(SAAS/私有化)
AE 项目名称:XXX
AE 项目 APP ID: XXX
数据接收地址 push_url: XXX
---------
AppLovin api_key(即 Report Key):XXX
需要拉取的字段:XXX,XXX(不填即视为使用默认字段)
历史数据拉取时间范围:yyyy/mm/dd - yyyy/mm/dd(仅支持拉取近 45 天的数据)
定时拉取:每天 X 点拉取前一天的数据

