AdVista SDKAdVista SDK
  • 指南

    • Advista 广告SDK隐私政策
    • Advista 广告SDK合规使用说明
    • Advista 广告SDK应用权限申请与使用情况说明
    • Advista 流量变现平台用户服务协议
    • Android 集成手册
    • iOS 集成手册
    • Report API 文档
      • 1、权限认证
      • 2、签名
        • 2.1、签名生成
        • 2.2、签名代码示例
        • 2.3、签名代码解析
      • 3、通用请求头参数
      • 4、通用响应码
      • 5、通用Http状态码
      • 6、广告数据报表API接口
        • 6.1、查询参数
        • 6.2、响应
        • 6.3、resultReports[]数据对象
        • 6.4、响应参考数据
      • 7、应用模块
        • 7.1、新建应用
        • 7.2、修改应用
        • 7.3、查询应用列表
      • 8、代码位模块
        • 8.1、新建代码位
        • 8.2、修改代码位
        • 8.3、查询代码位列表
      • 附录:应用品类
      • 附录:应用商店

Report API 文档

1、权限认证

API 通过参数签名的方式进行权限控制,签名所需的 accessKey 和 securityKey,请到变现平台-账号管理- 密钥信息中获取

示意图

2、签名

2.1、签名生成

使用 accessKey、nonce、timestamp 和securityKey生成md5,产生本次请求的sign

2.2、签名代码示例

func getSign(request map[string]interface{}, secureKey string) string {
    // 先对 key 排序,保证生成字符串的稳定性
    keys := make([]string, 0, len(request))
    for k := range request {
       keys = append(keys, k)
    }
    sort.Strings(keys)
    // 拼接 key=value&key2=value2...
    var sb strings.Builder
    for i, k := range keys {
       sb.WriteString(fmt.Sprintf("%s=%v", k, request[k]))
       if i != len(keys)-1 {
          sb.WriteString("&")
       }
    }
    // 拼接 secureKey
    sb.WriteString(secureKey)
    // 生成 MD5
    h := md5.New()
    h.Write([]byte(sb.String()))
    return hex.EncodeToString(h.Sum(nil))
}

2.3、签名代码解析

  1. 对参与签名的首字母进行排序,例如 accessKey、timestamp、nonce 按首字母排序为 accessKey、nonce、timestamp
  2. 排序结果后直接追加secureKey
  3. 示例结果:
    1. accessKey = 1001
    2. secureKey = 1002
    3. timestamp = 1755497831
    4. nonce = de503c93-fda7-4165-a813-af6d272939e4

组成的文本是:accessKey=1001&nonce=de503c93-fda7-4165-a813-af6d272939e4&timestamp=17554978311002

对该文本进行MD5 32位小写,得出结果: a96bb09bcf5938c7c3ddb4610565de44

3、通用请求头参数

参数名称类型是否必填描述
accessKeystring是access密钥(签名用)
signstring是签名后生成的秘钥
noncestring是随机数(签名用)
timestampstring是时间戳,毫秒(签名用)

4、通用响应码

状态码名称描述
0成功API请求成功处理并返回预期结果。
300签名错误签名算法错误或securityKey失效。
301时间戳无效或请求已过期timestamp不能为空且必须是过去5分钟内的时间。
302accessKey不存在提供的accessKey无效或不存在。
303必传参数不能为空请求中缺少必填参数。
304nonce不存在随机数nonce不能为空。
305参数错误请求参数错误

5、通用Http状态码

状态码名称描述
200成功Http状态码 200 代表成功
429请求过快在 HTTP 协议中,响应状态码 429 Too Many Requests 表示在一定的时间内用户发送了太多的请求,即超出了“频次限制”。

6、广告数据报表API接口

  • 域名 (请联系对接人确认域名)
  • URL: /adnReport/getReport
  • 方法: POST
  • Content-Type: application/json

6.1、查询参数

参数名称参数类型是否必填参数描述
strTimestring是数据日期,仅支持单天。日期格式为 yyyy-MM-dd

6.2、响应

参数名称类型描述
codeint返回结果状态码
messagestring描述信息
dataresultReports[]数据对象

6.3、resultReports[]数据对象

参数名称类型描述
dateDate日期 (2025-04-09T00:00:00+08:00) 包含时区,请注意格式化
usernamestring账号名称
app_idint应用ID
app_namestring应用名称
os_typeint系统平台(5001:Android, 5002: iOS)
slot_idint代码位ID
slot_namestring代码位名称
slot_typeint代码位类型(2001:开屏广告、2002:插屏广告、2003:激励视频、2004:原生广告、2005:Banner)
bid_typeint竞价类型(2201:目标价、2202:实时竞价)
requestint请求数
responseint填充数
fill_ratefloat填充率
impressionint展示数
exposure_ratefloat展示率
clickint点击数
click_ratefloat点击率
costfloat预估收益
cpmfloat预估eCPM

6.4、响应参考数据

{
  "code": 0,
  "data":
  [
      {
          "app_id": "116000",
          "app_name": "网易云音乐",
          "bid_type": 2202,
          "click": "1",
          "click_rate": "2.44",
          "cost": 0.66,
          "cpm": 16.1,
          "date": "2025-04-09T00:00:00+08:00",
          "exposure_rate": "100.00",
          "fill_rate": "100.00",
          "impression": "41",
          "os_type": 5001,
          "request": "41",
          "response": "41",
          "slot_id": "123571",
          "slot_name": "网易云音乐-开屏-短图",
          "slot_type": 2001,
          "username": "网易云音乐"
      },
      {
          "app_id": "116000",
          "app_name": "网易云音乐",
          "bid_type": 2202,
          "click": "0",
          "click_rate": "0.00",
          "cost": 0.47,
          "cpm": 11.46,
          "date": "2025-04-09T00:00:00+08:00",
          "exposure_rate": "87.23",
          "fill_rate": "100.00",
          "impression": "41",
          "os_type": 5001,
          "request": "47",
          "response": "47",
          "slot_id": "223200",
          "slot_name": "网易云音乐-信息流",
          "slot_type": 2004,
          "username": "网易云音乐"
      }
  ],
  "message": "成功"
}

7、应用模块

7.1、新建应用

  • 域名 (请联系对接人确认域名)

  • URL: /adnApp/createApp

  • 方法: POST

  • Content-Type: application/json

  • 请求参数

参数名称参数类型是否必填参数描述
appNamestring是应用名称
appTypeint是应用类型 1201: 正式, 1202: 测试
osTypeint是系统平台 5001: Android, 5002: iOS
appStorestringappType=1201 必填应用商店 (见附录)
categorystringappType=1201 必填应用品类 (见附录)
downloadUrlstringappType=1201 必填下载地址
packagestringappType=1201 必填应用包名
sha1stringappType=1201 且 osType=5001 必填SHA1值
  • 响应参数
参数名称参数类型描述
appIdint应用ID
appNamestring应用名称
appTypeint应用类型 1201: 正式, 1202: 测试
osTypeint系统平台 5001: Android, 5002: iOS
appStorestring应用商店 (见附录)
downloadUrlstring下载地址
packagestring应用包名
categorystring应用品类 (见附录)
appStatusint应用状态 1101: 测试, 1102: 运行中, 1105: 异常停止, 1106: 停止
coStatusint合作状态 1301: 开启, 1302: 关闭
sha1stringSHA1值
  • 响应示例
{
  "code": 0,
  "data": {
    "appId": 502300,
    "appName": "这是一个测试应用2026",
    "appType": 1201,
    "osType": 5001,
    "appStore": "1401",
    "downloadUrl": "https://www.test.com",
    "package": "com.test.www",
    "category": "1001",
    "appStatus": 1102,
    "coStatus": 1301,
    "sha1": "AA:BB:CC:11:22:33:44:55:66:77:88:99:AA:BB:CC:DD:EE:FF:00:11"
  },
  "msg": "创建成功"
}

7.2、修改应用

  • 域名 (请联系对接人确认域名)

  • URL: /adnApp/updateApp

  • 方法: PUT

  • Content-Type: application/json

  • 请求参数

参数名称参数类型是否必填参数描述
appIdint是应用ID
CoStatusint否合作状态 1301: 开启, 1302: 关闭
appNamestring是应用名称
appStorestringappType=1201 必填应用商店 (见附录)
categorystringappType=1201 必填应用品类 (见附录)
downloadUrlstringappType=1201 必填下载地址
packagestringappType=1201 必填应用包名
sha1stringappType=1201 且 osType=5001 必填SHA1值
  • 响应示例
{
  "code": 0,
  "data": null,
  "msg": "更新成功"
}

7.3、查询应用列表

  • 域名 (请联系对接人确认域名)

  • URL: /adnApp/getAppList

  • 方法: POST

  • Content-Type: application/json

  • 请求参数

参数名称参数类型是否必填参数描述
appIdint否应用ID
  • 响应示例
{
  "code": 0,
  "data": {
    "list": [
      {
        "appId": 502300,
        "appName": "这是一个测试应用2026",
        "appType": 1201,
        "osType": 5001,
        "appStore": "1401",
        "downloadUrl": "https://www.test.com",
        "package": "com.test.www",
        "category": "1001",
        "appStatus": 1102,
        "coStatus": 1301,
        "sha1": "AA:BB:CC:11:22:33:44:55:66:77:88:99:AA:BB:CC:DD:EE:FF:00:11"
      }
    ],
    "total": 19
  },
  "msg": "获取成功"
}

8、代码位模块

8.1、新建代码位

  • 域名 (请联系对接人确认域名)

  • URL: /adnSlot/createSlot

  • 方法: POST

  • Content-Type: application/json

  • 请求参数

参数名称参数类型是否必填参数描述
platAppIdint是应用ID(所属应用)
slotNamestring是代码位名称
slotTypeint是广告类型 2001: 开屏广告, 2002: 插屏广告, 2003: 激励视频, 2004: 原生广告
drawTypeint是渲染方式 2301: 模板渲染, 2302: 自渲染
screenTypeintslotType=2002,2003 必填屏幕方向 2801: 竖屏, 2802: 横屏
slotShowTypeintslotType=2002 必填广告铺开大小 2901: 半屏, 2902: 全屏
materialTypeint(slotType=2004 且 drawType=2301) 或 slotType=2002 必填素材类型 21001: 视频+图片, 21002: 仅视频, 21003: 仅图片
templateTypestringslotType=2004 且 drawType=2301 必填模板样式 21101: 左图右文, 21102: 左文右图, 21103: 上文下图, 21104: 上图下文
selfDrawTypestringslotType == 2004 且 drawType == 2302 必填自渲染素材类型 21201: 横版视频, 21202: 竖版视频, 21203: 横版图片, 21204: 竖版图片, 21205: 多图
bidTypeint是竞价类型 2201: 目标价, 2202: 实时竞价
expectCpmfloat否期望CPM价格
bidFloorfloat否竞价底价
rewardSettingintslotType=2003 必填奖励发放设置 0: 不设置奖励, 1: 设置奖励
rewardNamestringrewardSetting=1 必填奖励物品名称
rewardCountintrewardSetting=1 必填奖励数量
serverVerifyintslotType=2003 必填服务端验证 0: 不验证, 1: 验证
callbackUrlstringserverVerify=1 必填回调URL
securityKeystringserverVerify=1 必填安全密钥
  • 响应参数
参数名称参数类型参数描述
slotIdint代码位ID
slotNamestring代码位名称
slotTypeint广告类型 2001: 开屏广告, 2002: 插屏广告, 2003: 激励视频, 2004: 原生广告
drawTypeint渲染方式 2301: 模板渲染, 2302: 自渲染
screenTypeint屏幕方向 2801: 竖屏, 2802: 横屏
slotShowTypeint广告铺开大小 2901: 半屏, 2902: 全屏
materialTypeint素材类型 21001: 视频+图片, 21002: 仅视频, 21003: 仅图片
templateTypestring模板样式 21101: 左图右文, 21102: 左文右图, 21103: 上文下图, 21104: 上图下文
selfDrawTypestring自渲染素材类型 21201: 横版视频, 21202: 竖版视频, 21203: 横版图片, 21204: 竖版图片, 21205: 多图
slotStatusint代码位状态 2101: 测试, 2102: 运行中, 2103: 异常停止, 2104: 停止
coStatusint合作状态 1301: 开启, 1302: 关闭
bidTypeint竞价类型 2201: 目标价, 2202: 实时竞价
expectCpmfloat期望CPM价格
bidFloorfloat竞价底价
platAppIdint应用ID(所属应用)
rewardSettingint奖励发放设置 0: 不设置奖励, 1: 设置奖励
rewardNamestring奖励物品名称
rewardCountint奖励数量
serverVerifyint服务端验证 0: 不验证, 1: 验证
callbackUrlstring回调URL
securityKeystring安全密钥
  • 响应示例
{
  "code": 0,
  "data": {
    "slotId": 40676836,
    "slotName": "这是一个测试应用2026_Android_激励视频_2026-01-07_10:52:31",
    "slotType": 2003,
    "drawType": 2301,
    "screenType": 2801,
    "slotShowType": 2901,
    "materialType": 21001,
    "templateType": "21101,21102,21103,21104",
    "selfDrawType": "21201,21202,21203,21204,21205",
    "slotStatus": 2102,
    "coStatus": 1301,
    "bidType": 2201,
    "expectCpm": 0,
    "bidFloor": 0,
    "platAppId": 502300,
    "rewardSetting": 0,
    "serverVerify": 1,
    "callbackUrl": "http://www.test.com",
    "securityKey": "be26382c132310ecb4b8a044edf17fc6"
  },
  "msg": "创建成功"
}

8.2、修改代码位

  • 域名 (请联系对接人确认域名)

  • URL: /adnSlot/updateSlot

  • 方法: PUT

  • Content-Type: application/json

  • 请求参数

参数名称参数类型是否必填参数描述
slotIdint是代码位ID
platAppIdint是应用ID(所属应用)
slotNamestring是代码位名称
slotTypeint是广告类型 2001: 开屏广告, 2002: 插屏广告, 2003: 激励视频, 2004: 原生广告
drawTypeint否渲染方式 2301: 模板渲染, 2302: 自渲染
screenTypeint否屏幕方向 2801: 竖屏, 2802: 横屏
slotShowTypeint否广告铺开大小 2901: 半屏, 2902: 全屏
materialTypeint否素材类型 21001: 视频+图片, 21002: 仅视频, 21003: 仅图片
templateTypestring否模板样式 21101: 左图右文, 21102: 左文右图, 21103: 上文下图, 21104: 上图下文
selfDrawTypestring否自渲染素材类型 21201: 横版视频, 21202: 竖版视频, 21203: 横版图片, 21204: 竖版图片, 21205: 多图
bidTypeint否竞价类型 2201: 目标价, 2202: 实时竞价
coStatusint否合作状态 1301: 开启, 1302: 关闭
expectCpmfloat否期望CPM价格
bidFloorfloat否竞价底价
rewardSettingintslotType=2003 必填奖励发放设置 0: 不设置奖励, 1: 设置奖励
rewardNamestringrewardSetting=1 必填奖励物品名称
rewardCountintrewardSetting=1 必填奖励数量
serverVerifyintslotType=2003 必填服务端验证 0: 不验证, 1: 验证
callbackUrlstringserverVerify=1 必填回调URL
securityKeystringserverVerify=1 必填安全密钥
  • 响应参数
参数名称参数类型参数描述
slotIdint代码位ID
slotNamestring代码位名称
slotTypeint广告类型 2001: 开屏广告, 2002: 插屏广告, 2003: 激励视频, 2004: 原生广告
drawTypeint渲染方式 2301: 模板渲染, 2302: 自渲染
screenTypeint屏幕方向 2801: 竖屏, 2802: 横屏
slotShowTypeint广告铺开大小 2901: 半屏, 2902: 全屏
materialTypeint素材类型 21001: 视频+图片, 21002: 仅视频, 21003: 仅图片
templateTypestring模板样式 21101: 左图右文, 21102: 左文右图, 21103: 上文下图, 21104: 上图下文
selfDrawTypestring自渲染素材类型 21201: 横版视频, 21202: 竖版视频, 21203: 横版图片, 21204: 竖版图片, 21205: 多图
slotStatusint代码位状态 2101: 测试, 2102: 运行中, 2103: 异常停止, 2104: 停止
coStatusint合作状态 1301: 开启, 1302: 关闭
bidTypeint竞价类型 2201: 目标价, 2202: 实时竞价
expectCpmfloat期望CPM价格
bidFloorfloat竞价底价
platAppIdint应用ID(所属应用)
rewardSettingint奖励发放设置 0: 不设置奖励, 1: 设置奖励
rewardNamestring奖励物品名称
rewardCountint奖励数量
serverVerifyint服务端验证 0: 不验证, 1: 验证
callbackUrlstring回调URL
securityKeystring安全密钥
  • 响应示例
{
  "code": 0,
  "data": {
    "slotId": 40676836,
    "slotName": "这是一个测试应用2026_Android_激励视频_2026-01-07_10:52:31",
    "slotType": 2003,
    "drawType": 2301,
    "screenType": 2801,
    "slotShowType": 2901,
    "materialType": 21001,
    "templateType": "21101,21102,21103,21104",
    "selfDrawType": "21201,21202,21203,21204,21205",
    "slotStatus": 2102,
    "coStatus": 1301,
    "bidType": 2201,
    "expectCpm": 0,
    "bidFloor": 0,
    "platAppId": 502300,
    "rewardSetting": 0,
    "serverVerify": 1,
    "callbackUrl": "http://www.test.com",
    "securityKey": "be26382c132310ecb4b8a044edf17fc6"
  },
  "msg": "创建成功"
}

8.3、查询代码位列表

  • 域名 (请联系对接人确认域名)

  • URL: /adnSlot/getSlotList

  • 方法: POST

  • Content-Type: application/json

  • 请求参数

参数名称参数类型是否必填参数描述
platAppIdint否应用ID
slotNamestring否代码位名称
slotIdint否代码位ID
  • 响应示例
{
  "code": 0,
  "data": {
    "list": [
      {
        "slotId": 40676836,
        "slotName": "这是一个测试应用2026_Android_激励视频_2026-01-07_10:52:31",
        "slotType": 2003,
        "drawType": 2301,
        "screenType": 2801,
        "slotShowType": 2901,
        "materialType": 21001,
        "templateType": "21101,21102,21103,21104",
        "selfDrawType": "21201,21202,21203,21204,21205",
        "slotStatus": 2102,
        "coStatus": 1301,
        "bidType": 2201,
        "expectCpm": 0,
        "bidFloor": 0,
        "platAppId": 502300,
        "rewardSetting": 0,
        "serverVerify": 1,
        "callbackUrl": "http://www.test.com",
        "securityKey": "be26382c132310ecb4b8a044edf17fc6"
      }
    ],
    "total": 19
  },
  "msg": "获取成功"
}

附录:应用品类

应用品类category应用品类category
游戏1001娱乐1002
手机1003影音1004
工具1005金融理财1006
房产1007工作1008
网赚1009健康1010
阅读1011网购1012
教育1013家居1014
房产1015母婴1016
汽车1017社交1018
生活1019资讯1020
通讯1021商旅出行1022
短视频1023个护美容1024
其他1025

附录:应用商店

应用商店appStore应用商店appStore
应用宝14013601402
百度1403豌豆荚1404
苹果商店1405华为1406
小米1407oppo1408
vivo1409魅族1410
搜狗1411今日头条1412
快手1413爱奇艺1414
9游1415好游快爆1416
TikTok141743991418
美图1419PP助手1420
TapTap1421乐商店1422
应用汇1423安智1424
金立1425努比亚1426
摸摸鱼142723451428
其他1429
上次更新:
贡献者: KangYe, haibo.du
Prev
iOS 集成手册