Version 3.0 / March 2015
广告主可以通过Audience API创建用户层级的定位投放活动。
使用Apple IDFA或Android广告ID来创建Audience。
可用的定向受众API为
List – 列出当前audience列表
Create – 创建新audience列表
Update – 通过新user组更新audience列表。对于指定audience,此API将替代现有user列表。
Append – 增加新user至现有audience
Delete – 删除指定audience
验证:
所有定向受众API皆须API密钥,以作为该请求的查询参数. 如需用于验证Audience API的Management Key密钥,可于广告主账户页面“Keys”标签获取. 如无法获得 Management Key密钥, 则发送邮件至adsupport@applovin.com,我们会为您生成密钥。
https://api.applovin.com/audiences/list?api_key=<API_KEY>
错误:
Http 状态编码,用于显示Error
HTTP响应编码
|
描述
|
200 |
成功 |
400 |
该请求格式不完整,该请求缺少必要参数,或存在无效参数 |
403 |
验证失败。检查API密钥是否有效. |
404 |
指定Audience ID不存在 |
406 |
对于create,已存在具有相同参数的有效audience |
500 |
服务不可用 |
创建:
提交自定义audience第一步就是建立一个空白的audience列表. 若想建立一个新的audience列表,提交申请至
https://api.applovin.com/audiences/create?api_key=<API_KEY>
Create API接受包含如下查询参数的URL
名称 |
类型 |
描述 |
要求 |
name |
String |
Audience名 |
是。须为字母数字_-+,或URL编码中的空格符 |
package_name |
String |
App包名或Bundle ID |
若audience_type=retargeting,则yes |
platform |
Enum (android, ios) |
App平台. 须为“android"或“iOS”. |
是 |
description |
String |
Audience描述 |
否 |
audience_type
|
Enum (ua, retargeting) |
Audience类型. 默认为“retargeting”. |
若 audience_type=ua,则yes |
响应为JSON格式:
名称 |
类型 |
描述 |
audience_id |
String |
Audience ID |
请求范例:
curl "https://api.applovin.com/audiences/create?name=My%20Audience%20Name&package_name=my.app.bundleId&platform=ios&api_key=<API_KEY>"
响应范例:
{"audience_id" : "fce0b41a0849706bd0fbbe181e61f419"}
列表:
如需查看所有当前audience列表,则发出HTTP请求致list API
https://api.applovin.com/audiences/list?api_key=<API_KEY>
响应为JSON格式:
名称
|
类型
|
描述 |
code |
int |
若为200 则成功 |
audiences |
List of Objects |
包含某audience信息的对象列 |
audience_id |
String |
Audience ID |
name |
String |
Audience 名 |
package_name |
String |
iTunes ID或源App包名 |
platform |
Enum (android, ios) |
源App平台。必须为“android” 或 “ios” |
description |
String |
Audience描述 |
user_count |
Long |
该audience中的user数 |
count |
Long |
该user的audience数 |
请求范例:
curl "https://api.applovin.com/audiences/list?api_key=<API_KEY>"
响应范例:
{
"code": 200,
"audiences": [
{
"audience_id": "dab2d1297d35592597b0eee016e92baa",
"name": "Custom Audience Test",
"package_name": "Some package name",
"platform": "ios",
"description": "Test Custom Audience",
"user_count": "10"
}
],
"count": 1
}
更新:
使用update API上传user列至指定audience列表. 若audience已存在user列,则该user列将被update API请求中的user列所替代.
如需用新user列更新audience,则发出HTTP POST请求至
https://api.applovin.com/audiences/update?api_key=<API_KEY>&audience_id=<AUDIENCE_ID>&ttl_seconds=<TTL_SECONDS>
查询参数:
名称
|
类型
|
描述 |
要求 |
audience_id |
Long |
从create API返回的audience ID |
是
|
ttl_seconds |
Long |
该User列表有效时限(秒). 默认为365天. |
否
|
Post 主体: 在一次POST请求中,update API可接收用行隔开的用户ID列表
名称
|
类型 |
描述 |
要求 |
List of advertising ids |
List of Strings |
分行的Apple IDFA或Android 广告ID. ID须为UUID格式. |
是
|
响应为JSON格式:
姓名
|
类型
|
描述 |
audience_id |
Long |
Audience ID |
num_valid_ids |
Integer |
新audience列表所含有效广告ID数 |
num_invalid_ids |
Integer |
该请求中所含无效广告ID数 |
请求范例:
curl -X POST --data-binary @userIds.txt "https://api.applovin.com/audiences/update?audience_id=<AUDIENCE_ID>&ttl_seconds=2592000&api_key=<API_KEY>"
其中userIds.txt文件所含内容为
c77bbe4e-6a28-11e4-bcda-14109fdf9591
f601faf5-4a83-44d6-98ef-b67c24919d39
响应范例
{ "audience_id" :“dab2d1297d35592597b0eee016e92baa”, "num_valid_ids" : 2, "num_invalid_ids" : 0 }
添加:
使用append API以增加user至现有audience. 若audience已存在user列,则添加新增user至该列中.
如需通过新的user列插入user至audience,则发出HTTP POST请求至
https://api.applovin.com/audiences/append?api_key=<API_KEY>&audience_id=<AUDIENCE_ID>&ttl_seconds=<TTL_SECONDS>
查询参数:
名称
|
类型
|
描述
|
要求
|
audience_id |
Long |
create API所返回的audience ID |
是
|
ttl_seconds |
Long |
该User列表有效时限(秒). 默认为365天. |
否
|
Post Body: 在一次POST请求中,Append API可接收用行隔开的UserID列表
名称
|
类型
|
描述
|
要求
|
List of advertising ids |
List of Strings |
分行Apple IDFA或Android 广告ID. ID须为UUID格式. |
是 |
响应为JSON格式:
名称
|
类型 |
描述
|
audience_id |
Long |
Audience ID |
num_valid_ids |
Integer |
新audience列所含有效广告ID数 |
num_invalid_ids |
Integer |
该请求所含无效广告ID数 |
请求范例:
curl -X POST --data-binary @userIds.txt "https://api.applovin.com/audiences/append?audience_id=<AUDIENCE_ID>&ttl_seconds=2592000&api_key=<API_KEY>"
其中userIds.txt所含内容为
c77bbe4e-6a28-11e4-bcda-14109fdf9591
f601faf5-4a83-44d6-98ef-b67c24919d39
响应范例:
{ "audience_id" : “dab2d1297d35592597b0eee016e92baa”, "num_valid_ids" : 2, "num_invalid_users" : 0 }
删除:
如需删除某audience,则发出HTTP请求至
https://api.applovin.com/audiences/delete?api_key=<API_KEY>&audience_id=<AUDIENCE__ID>
其中AUDIENCE_ID为create API 的返回IDdelete API中无响应body. 若HTTP响应成功,则返回编码200.
请求范例:
curl "https://api.applovin.com/audiences/delete?audience_id=<AUDIENCE_ID>&api_key=<API_KEY>"
提示:
- 在不更新全部audience的情况下,删除某audience中的user: 无法从某一audience中移除个体user,但是您可以将这些user的符合性限制为0 seconds,此即为事实上的移除. 如需此操作,则发出一个带ttl_seconds=0的Append调用.
- API Timeouts: 超过100 seconds则请求超时. 根据您的连接速度以及我们的终端环境,需要分批上传至~100K的user块. 我们建议在脚本中批量创建与该API进行交互的重试逻辑.
- 将广告活动定向至Audience: 一旦创建一个audience并关联了ID,则该audience将作为选项出现在所有有效广告活动Edit Targets页面的Custom Audience. 若audience 与广告活动均为同一包名或同一平台,若活动类型及audience类型为retargeting,若audience和campaign为同一平台,若campaign类型和audience类型为user acquisition,则该audience对该campaign有效.
Postman Collection范例: