开发者后台管理API
1 获取Api Key
登录后台,点击公司名称,进入“我的账号”,“API Key”,获取API Key和秘钥。
名称 | 用途 |
---|---|
API Key(bear) | 标识用户身份 |
密钥(secret) | 生成请求签名 |
2 API接入
所有请求都采用post方式,POST请求数据默认格式为:multipart/form-data;请求域名为:https://openapi.tradplusad.com
2.1 请求公参
参数 | 说明 | 传递方式 | 样例 |
---|---|---|---|
bear | API key | HTTP Header | 157E4A5D-3877-1236-DE06-457FT3F70C4 |
sign | 签名 | GET | 5DE008C88087D8556D276A9E5B8E37E6 |
timestamp | 时间戳,当前时间的秒数 | GET | 1629525680 |
nonce | 16位长度随机字符,数字与字母组合 | GET | 5c672d4e9628d0a7 |
2.2 生成签名
获取bear和secret,参考 1 获取Api Key
具体规则如下:
- 拼接secret, timestamp, nonce和请求路径
- md5加密并且转换为大写
$sign = strtoupper(md5($secret+$timestamp+$nonce+$path));
2.3 调用示例
curl --location --request POST 'https://openapi.tradplusad.com/api/seat/store?sign=5DE008C88087D8556D276A9E5B8E37E6×tamp=1629525680&nonce=5c672d4e9628d0a7' \
--header 'bear: 157E4A5D-3877-1236-DE06-457FT3F70C4' \
--form 'adseat_list[0][app_uuid]="BA04D9C5A5E736CCDA8003BC5D936BE5"' \
--form 'adseat_list[0][seat_name]="test创建"' \
--form 'adseat_list[0][ad_type]="5"' \
--form 'adseat_list[0][adseat_uuid]=""'
2.4 返回参数
返回json格式
2.4.1 成功
{
"code": 200,
"status": 0,
"data": {
"list": [
{
"adseat_uuid": "8629EE09A4E3C6B60AEC48FA7D6CA4D4",
"seat_name": "test创建",
"error_message": ""
}
]
}
}
2.4.2 失败
{
"code": 403,
"status": -1,
"error_message":"sign error"
}
3 报表
3.1 提交三方广告平台报表数据
请求路径: /api/report/submit
请求参数:
字段 | 类型 | 必传 | 说明 | 备注 |
---|---|---|---|---|
report_data_list | Array | Y | 最多10个超过会被丢弃 | |
report_data_list.day | String | Y | 日期,仅支持到天Y-m-d格式 | 示例:2021-02-01 |
report_data_list.iso | String | Y | 国家二位码(短码) | 示例:GE 见:8.1 |
report_data_list.adsource_id | Int | Y | tradplus广告平台ID | 见:8.2 |
report_data_list.placement_id | String | Y | 三方广告平台广告位ID | Mintegral需要用 "_" 拼接AD Unit ID Unity_Ads需要拼接Game ID Applovin需要拼接SDK Key Kidoz需要拼接应用的包名package_name ReklamUp需要拼接应用的包名package_name 示例:placementID_adUnitID |
report_data_list.currency | String | N | 币种单位CNY或USD,不传默认CNY | |
report_data_list.bidding_request | Int | N | 竞价请求 | 默认 0 |
report_data_list.bidding_response | Int | N | 竞价响应 | 默认 0 |
report_data_list.request | Int | N | 请求 | 默认 0 |
report_data_list.fill | Int | N | 填充 | 默认 0 |
report_data_list.impression | Int | N | 展示 | 默认 0 |
report_data_list.click | Int | N | 点击 | 默认 0 |
report_data_list.income | Float | N | 收入 | 默认 0 |
返回字段:
字段 | 类型 | 必传 | 说明 |
---|---|---|---|
error | Array | Y | 错误信息列表 |
error.message | String | N | 错误信息 |
error.report_data | Array | N | 错误信息详情(同请求数据) |
返回样例:
{
"code": 200,
"status": 0,
"data": {
"error": [
{
"message": "国家二位码(短码) 缺失或者错误",
"report_data": {
"day": "2022-01-18",
"iso": "USA",
"adsource_id": "16",
"placement_id": "abc123",
"currency": "CNY",
"income": "50",
"fill": "800"
}
},
{
"message": "广告网络ID 缺失或者错误",
"report_data": {
"day": "2022-01-19",
"iso": "CN",
"adsource_id": "475",
"placement_id": "22",
"currency": "CNY",
"income": "20",
"fill": "600",
"impression": "100"
}
}
]
}
}
4 应用管理
4.1 获取应用分类
请求路径: /api/app/allcategory
请求参数:无
返回字段:
字段 | 类 型 | 必传 | 说明 |
---|---|---|---|
first_category | Array | Y | 一级分类 |
first_category.id | String | Y | 分类id |
first_category.name_cn | String | Y | 中文名 |
first_category.name_en | String | Y | 英文名 |
sub_category | Array | Y | 二级分类 |
sub_category.id | String | Y | 二级分类id |
sub_category.pid | String | Y | 对应的一级分类id |
sub_category.name_cn | String | Y | 中文名 |
sub_category.name_en | String | Y | 英文名 |
返回样例:
{
"code": 200,
"status": 0,
"data": {
"first_category": [
{
"id": "1",
"name_cn": "游戏",
"name_en": "Game"
},
{
"id": "2",
"name_cn": "应用",
"name_en": "App"
}
],
"sub_category": [
{
"id": "101",
"name_cn": "动作",
"name_en": "Action",
"pid": "1"
},
{
"id": "102",
"name_cn": "冒险",
"name_en": "Adventure",
"pid": "1"
}
...
]
}
}