oppo-callback.txt 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621
  1. ===== PAGE 1 =====
  2. OPPO⼴告主APP数据回传接⼝⽂档v3.23
  3. 版本 内容
  4. v3.2 ⽀持⼴告主回传oaid-md5,type 新增值 type = 2 oadi md5加密
  5. v3.3 dataType 新增值 21:⻓留⾼质量⼈群
  6. v3.4 dataType 新增值 22:应⽤付费次数,新增字段payId
  7. v3.5 dataType 新增值 23:⻓留⾃定义⼈群
  8. v3.6 dataType 新增值 24:快应⽤付费次数
  9. v3.7 dataType 新增值 25:付费流⽔
  10. v3.8 dataType 新增值 26:质量分
  11. v3.9 ascribeType值优化
  12. v3.10 dataType 新增值 27:完件
  13. v3.11 payId、payAmount是否必填信息补充
  14. v3.12 dataType 新增值 28:应⽤关键⾏为,dataType已有值20从游戏/
  15. 应⽤关键⾏为变更为游戏关键⾏为
  16. v3.13 新增字段⾦融授信⾦额、通⽤后端效果质量分
  17. dataType 新增⾏业质量策略使⽤值,201到224
  18. v3.14 新增【通⽤后端效果质量分】对部分⾏业的回传建议说明
  19. v3.15 dataType新增值200:特殊回传(⽤于⾏业客户回传历史数据的短
  20. 期处理)
  21. v3.16 新增dataCategory枚举值
  22. v3.17 新增dataCategory枚举值
  23. V3.18 更新⽇期:2025-08-27
  24. 更新⼈:章丹阳
  25. 更新内容:新增2.2 请求体两个参数userIdType和keyTrackInfo的回传说
  26. 明,补充了2.3响应参数说明,以⽀持智能分包归因结果的回传
  27. v3.19 更新⽇期:2025-12-02更新⼈:卿婷
  28. 更新内容:补充2.2 请求体参数userIdType回传说明,当使⽤智能分包
  29. 回传时userIdType必填;补充了2.3响应参数说明,ret 1007:使⽤了智能
  30. 分包回传但未提供userIdType
  31. v3.20 新增dataType枚举值231
  32. v3.21 新增dataType枚举值 232-浏览岗位,233-B端认证
  33. 增加channel字段⽤于助攻的枚举
  34. 更新⼈:宋乐怡
  35. ===== PAGE 2 =====
  36. 公共部分
  37. 1.1请求头(本⽂档接⼝均需要添加如下请求头)
  38. 编码⽅式统⼀使⽤UTF-8
  39. 1.2 Signature签名
  40. (1) 计算⽅式
  41. 使⽤md5对数据进⾏签名: md5( postData + timestamp + salt),md5后转⼩写
  42. 2. 签名示例
  43. 数据准备:
  44. postData数据(示例):
  45. {"payAmount":100,"adId":101097648,"appType":1,"clientIp":"127.0.0.1","dataType":1,
  46. "ascribeType":1,"channel":1,"imei":"XJMyaLt8fDlv4a9b8/0RNQ==","type":1,"pkg":"co
  47. m.oppo.test","mac":"TEViR6jSgD/lECBl3Ah70eNy2gUQrQlekHkWqEGkZsU=","timesta
  48. mp":1571995483916}
  49. 注意:postData为请求的body json字符串,组成签名的json与body中的json必须完全⼀
  50. 致,不可对该json进⾏添加任何空格和转义符。
  51. timestamp:1571995483916,salt:e0u6fnlag06lc3pl
  52. md5加密:
  53. contents = postData + timestamp + salt(中间不加任何字符)=
  54. v3.22 新增dataType枚举值 234-注册次留,235-发消息&对话,
  55. 32-54 第9-31⽇留存
  56. v3.23 更新⽇期:2026-05-28
  57. 更新⼈:⻩辉焱
  58. 更新内容:请求头header新增鉴权参数ownerToken
  59. 字段 类型 说明 是否必
  60. 须
  61. signature string 根据签名算法计算得到的字符串,⻅
  62. 签名算法1.2
  63. 是
  64. timestamp string 时间戳转换为字符串(long毫秒) 是
  65. Content-Type string 固定值:application/json 是
  66. ownerToken string 营销平台⽣成的ominitoken 否
  67. 字段 解释
  68. postData post的json格式数据
  69. timestamp 时间戳(long毫秒)
  70. salt OPPO提供,Salt: e0u6fnlag06lc3pl
  71. ===== PAGE 3 =====
  72. {"payAmount":100,"adId":101097648,"appType":1,"clientIp":"127.0.0.1","dataType
  73. ":1,"ascribeType":1,"channel":1,"imei":"XJMyaLt8fDlv4a9b8/0RNQ==","type":1,"pk
  74. g":"com.oppo.test","mac":"TEViR6jSgD/lECBl3Ah70eNy2gUQrQlekHkWqEGkZsU="
  75. ,"timestamp":1571995483916}1571995483916e0u6fnlag06lc3pl
  76. 使⽤md5加密:md5(contents)= ce14fcc22abd7461e860263a8da983eb
  77. 1.3 加密算法
  78. 请求中的imei与mac字段均需通过AES算法进⾏加密,并且将加密后的⼆进制数据通过
  79. base64编码为字符串。为了⽅便配置,示例中的密钥是经过base64处理后的字符串
  80. (base64Key)。base64Key在接⼊时由OPPO提供。
  81. Base64Key: XGAXicVG5GMBsx5bueOe4w==
  82. (1)java示例
  83. import java.security.GeneralSecurityException;
  84. import java.security.Key;
  85. import javax.crypto.Cipher;
  86. import javax.crypto.spec.SecretKeySpec;
  87. import org.apache.commons.codec.binary.Base64;
  88. public class Demo {
  89. public static String encode(byte[] data, String base64Key) throws GeneralSecurityException {
  90. final Key dataKey = new SecretKeySpec(Base64.decodeBase64(base64Key), "AES");
  91. Cipher cipher = Cipher.getInstance("AES/ECB/PKCS5Padding");
  92. cipher.init(Cipher.ENCRYPT_MODE, dataKey);
  93. byte[] encryptData = cipher.doFinal(data);
  94. return Base64.encodeBase64String(encryptData).replaceAll("\r", "").replaceAll("\n", "");
  95. }
  96. }
  97. (2)php示例(仅供参考)
  98. 1.4 ownerToken鉴权
  99. 鉴权⽬的
  100. ⽤于建⽴平台与⼴告主之间安全可信的数据通道,保障⼴告主的投放权益:
  101. 保护转化数据资产:仅授权⽅可写⼊回传数据,杜绝第三⽅伪造、篡改或恶意刷量;
  102. 降低对账与排查成本:请求来源可追溯、责任可界定,出现数据异议时可快速定位;
  103. 提升投放效果稳定性:确保模型训练样本真实可靠,归因结果更精准
  104. 如何⽣成token
  105. 与OPPO营销平台Omni API权限认证⾥的token保持⼀致:
  106. public function encrypt($input, $base64Key){
  107. return openssl_encrypt($input, ‘AES-128-ECB’,base64_decode($base64Key),0,’’);
  108. }
  109. ===== PAGE 4 =====
  110. https://adsfs.heytapimage.com/mp/static/omniapi/latest/index.html?id=1%20%E9%8
  111. 0%9A%E7%94%A8%E5%A3%B0%E6%98%8E
  112. -----------------------------------------------------------
  113. token=base64(owner_id+“,”+api_id+“,”+time_stamp+“,”+sign)
  114. 所有内容使⽤半⻆逗号(,)按顺序拼接起来,再经过Base64编码。
  115. owner_id:⽤户帐号id,为营销平台的⼴告主ID;
  116. api_id:API授权接⼊⽅唯⼀身份标识,在开通授权邮件中会与app_id⼀块提供;
  117. time_stamp:发起请求时的时间戳,精确到秒,这个值跟接收到请求时的服务器时间戳值偏差
  118. (正或负)超过1200秒(20分钟)时,请求会被拒绝,要求调⽤⽅重新⽣成token(请使⽤
  119. UTC+08:00中国北京时间);
  120. sign:签名字符串,sign=sha1(api_id+api_key+time_stamp),采⽤sha1加密算法⽣成签名串
  121. (此处加号+代表字符串拼接,不是指要包含加号+),time_stamp为上⾯使⽤的时间戳;
  122. -----------------------------------------------------------
  123. token在接⼝协议的位置
  124. 在回传接⼝的请求头部分, 参考1.1
  125. token鉴权失败的返回信息
  126. {
  127. ret:1008
  128. msg: "ownerToken 鉴权失败 "
  129. }
  130. 1.数据回传接⼝
  131. 2.1接⼝地址
  132. POST请求:https://api.ads.heytapmobi.com/api/uploadActiveData
  133. 2.2请求体Body
  134. 1
  135. 2
  136. 3
  137. 4
  138. 字段 类型 说明 是否必须 样例 备注
  139. userIdT
  140. ype
  141. int ⽤户标识类型。
  142. 1:oaid或imei,即点击监测归
  143. 因; 2:智能分包归因信息 。
  144. 注意:
  145. 当userIdType为1时,imei和
  146. ouId必传其⼀,keytrackinfo可
  147. 选回传。
  148. 当userIdType为2时,
  149. keytrackinfo必传。
  150. 当⼴告主申请
  151. 使⽤智能分包
  152. 能⼒回传时必
  153. 填;
  154. 未接⼊智能分
  155. 包能⼒时⾮必
  156. 填
  157. ===== PAGE 5 =====
  158. keyTrac
  159. kInfo
  160. string 智能分包归因信息。
  161. ⼴告主应⽤客户端从OPPO商
  162. 店客户端查询到的智能分包归
  163. 因信息"key_track_info"。只需
  164. 回传查询到的原始的完整的字
  165. 符串内容,不需要额外处理,
  166. 包含原始的下载时间戳、等完
  167. 整信息。
  168. 当此字段为必填时,需确保
  169. keytrackinfo字段有值。
  170. OPPO侧对有值校验通过时将
  171. 返回“ret=0”,表示回传成功。
  172. 同时OPPO侧将对其中的
  173. trackId或adTraceId字段进⾏
  174. 是否有值的判断,返回给⼴告
  175. 主参考,但不影响成功回传。
  176. 当
  177. userIdType=2
  178. ,此字段是必
  179. 填
  180. 当
  181. userIdType=1
  182. ,此字段是选
  183. 填。
  184. {
  185.     "key_trac
  186. k_ref": "
  187. {\"adId\":\"
  188. 3700438\",\
  189. "trackId\":\"
  190. 512cf5d5a1
  191. 3e30fd5527
  192. 36cb188e2f
  193. 32\"}",
  194.     "ext": "
  195. {\"download
  196. _start_time\
  197. ":17568152
  198. 62855,\"adT
  199. raceId\":\"1
  200. -
  201. VwdhGy7uR
  202. 2n8H1wM0y
  203. 7xPLFYnn2l
  204. 2HjRhWERM
  205. eA73LXjaYg
  206. Cc0+YqN57
  207. nCLXDsd3A
  208. DEg+hb\\\/
  209. JbufJuqk+nF
  210. 3W5AtD\\\/
  211. kQyvoR3Wyi
  212. XR10oKk=\"
  213. ,\"adSmartC
  214. hannelId\":\
  215. "enforceMo
  216. ckSmartCha
  217. nnelId\"}",
  218.     "status_c
  219. ode": "200"
  220. }
  221. imei string imei原⽂经过AES加密后的
  222. 值,加密算法参考表格下⽅
  223. 当userIdType
  224. = 1时,必传其
  225. ⼀
  226. 当
  227. userIdType=2
  228. ,此字段是选
  229. 填。
  230. 加密前:
  231. 8681230399
  232. 27020
  233. 加密后:
  234. XJMyaLt8fDl
  235. v4a9b8/0RN
  236. Q==
  237. ===== PAGE 6 =====
  238. ouId string oaid原⽂经过AES加密后的
  239. 值,加密算法参考表格下⽅
  240. reques
  241. tId
  242. string 请求id 是
  243. mac string 客户端mac经过AES加密后
  244. 的值,加密说明⻅2.3
  245. 否 加密前:
  246. d7:1b:3e:0
  247. 0:14:b3
  248. 加密后:
  249. TEViR6jSg
  250. D/lECBl3A
  251. h70eNy2gU
  252. QrQlekHkW
  253. qEGkZsU=
  254. clientIp string 事件发⽣时的客户端ip,如
  255. 210.210.210.210
  256. 否 127.0.0.1
  257. timesta
  258. mp
  259. long 事件发⽣的时间戳(毫秒),
  260. 如1522221766623
  261. 是 157199548
  262. 3916
  263. pkg string 包名,如com.xxx
  264. 如果是快应⽤,要填快应⽤
  265. id,如100137
  266. 是 com.oppo.t
  267. est,要填投
  268. 放应⽤的包
  269. 名,不要依
  270. 赖监测链接
  271. 上报的pkg
  272. 字段
  273. ===== PAGE 7 =====
  274. dataTy
  275. pe
  276. int 转化数据类型:
  277. 1、激活,2、注册,3、游
  278. 戏付费,4、次留,5、应⽤
  279. 内授信,6、应⽤内下单
  280. (电商),7、应⽤付费
  281. 8、⾃定义⽬标, 9、第3⽇
  282. 留存 10、第4⽇留存,
  283. 11、第5⽇留存 12、第6⽇
  284. 留存, 13、第7⽇留存,
  285. 14、第8⽇留存,15、拉
  286. 活,16、快应⽤付费,17、
  287. 次留(DP)18、卸载激活
  288. 19、快应⽤关键⾏为 20、
  289. 游戏关键⾏为 21、⻓留⾼
  290. 质量⼈群(废弃) 22、应
  291. ⽤付费次数 23、⻓留⾃定
  292. 义 24、快应⽤付费次数
  293. 25、付费流⽔ 26、质量分
  294. 27、完件 28、应⽤关键⾏
  295. 为
  296. 32、第9⽇留存 33、第10
  297. ⽇留存 34、第11⽇留存
  298. 35、第12⽇留存 36、第13
  299. ⽇留存 37、第14⽇留存
  300. 38、第15⽇留存 39、第16
  301. ⽇留存 40、第17⽇留存
  302. 41、第18⽇留存 42、第19
  303. ⽇留存 43、第20⽇留存
  304. 44、第21⽇留存 45、第22
  305. ⽇留存 46、第23⽇留存
  306. 47、第24⽇留存 48、第25
  307. ⽇留存 49、第26⽇留存
  308. 50、第27题留存、 51、第
  309. 28⽇留存 52、第29⽇留存
  310. 53、第30⽇留存 54、第31
  311. ⽇留存
  312. ---⾏业质量策略使⽤---
  313. 200-特殊回传
  314. 【电商】
  315. 下单(沿⽤已有6-应⽤内下
  316. 单)
  317. 201-商品加购
  318. 202-商品收藏
  319. 203-电商取消订单
  320. 225-商品浏览
  321. 是 1
  322. ===== PAGE 8 =====
  323. 226-商品搜索
  324. 227-跳转结算界⾯
  325. 228-调起⽀付⻚⾯/调起⽀
  326. 付宝⽀付⻚⾯
  327. 222-⾼价值⽤户
  328. 【⾦融】
  329. 27-完件(沿⽤已有27-完
  330. 件)
  331. 5-授信(沿⽤已有5-应⽤内
  332. 授信)
  333. 204-进件
  334. 205-开户
  335. 206-⼊⾦
  336. 207-⽤信/放款
  337. 208-交易(⾦融)
  338. 209-投保
  339. 210-保单升级
  340. 211-退保
  341. 231-⽤信/放款⾦额
  342.  
  343. 【教育】
  344. 212-正价课购买
  345. 213-正价课到课
  346. 214-正价课完课
  347. 215-添加⽼师
  348. 216-低价课购买
  349. 217-低价课到课
  350. 218-低价课完课
  351. 219-退课
  352. 【招聘】
  353. 220-创建简历
  354. 221-投递简历
  355. 232-浏览岗位
  356. 233-B端认证
  357. 【游戏】
  358. 223-游戏注册
  359. 224-游戏付费
  360. 【社交】
  361. 229 app主⻚
  362. ===== PAGE 9 =====
  363. 230 充值⻚
  364. 【AI】
  365. 234 注册次留
  366. 235 发消息&对话
  367. 【⽹服】
  368. 236 特殊标记⼈群
  369. payId string 付费交易Id 否(但
  370. dataType=22
  371. /25 必填)
  372. custom
  373. Type
  374. int ⾃定义⽬标类型:dataType
  375. 填了8之后补充,枚举值与
  376. 客户沟通后补充
  377. 否
  378. channe
  379. l
  380. int 渠道:
  381. 1、OPPO
  382. 2、⼀加
  383. 0、其他
  384. *仅助攻回传时启⽤:
  385. 3、巨量引擎
  386. 4、腾讯⼴告
  387. 5、快⼿磁⼒引擎
  388. 6、百度
  389. 7、⼩红书
  390. 8、穿⼭甲
  391. 9、优量汇
  392. 是 1
  393. type int 0: ⽆md5加密、原值(默
  394. 认为0)
  395. 1:imei md5 加密
  396. 2:oaid md5 加密
  397. 是 1
  398. appTyp
  399. e
  400. int 应用类别: 1 应用 2 游戏 3 快
  401. 应用 0 其他,默认 1 应用
  402. 否 1
  403. ===== PAGE 10 =====
  404. payAm
  405. ount
  406. long 付 费 金 额 ( 单 位:分)
  407. 备注:
  408. 应⽤付费ltv1:客户必须回
  409. 传⾸次应⽤付费
  410. (datatype=7)&⾸⽇内每
  411. ⼀笔付费流⽔
  412. (datatype=25)
  413. 例如:
  414. ⽤户imei1被xx应⽤拉新预
  415. 算触达并在当⽇产⽣2笔付
  416. 费流⽔,分别为6元和38元,
  417. 需要回传3条数据明细,分
  418. 别为:
  419. 1.datatype=7
  420. payAmount=''
  421. (回传⽤户⾸次付费6元的
  422. ⾏为数据,告知平台该⽤户
  423. 产⽣了付费转化)
  424. 2.datatype=25
  425. payAmount=600
  426. (回传该⽤户当⽇⾸次付费
  427. ⾦额)
  428. 3.datatype=25
  429. payAmount=3800
  430. (回传该⽤户当⽇第⼆次付
  431. 费⾦额)
  432. 应⽤付费ltv7:客户必须回
  433. 传⾸次应⽤付费
  434. (datatype=7)&7⽇内每
  435. ⼀笔付费流⽔
  436. (datatype=25)
  437. (回传示例同上,除回传⾸
  438. 次付费事件datatype=7外,
  439. 7⽇内每笔付费数据均需按
  440. 标准回传)
  441. 否 100 该字段
  442. 传值
  443. 时。
  444. datatyp
  445. e填25
  446. ascribe
  447. Type
  448. int 归因类型:1:⼴告主归
  449. 因,0:OPPO归因(默认或
  450. 者不填即为0)
  451. 是 1
  452. 快应⽤必须
  453. 选1⼴告主
  454. 归因
  455. adId long ⼴告主回传转化数据时,附
  456. 带已经归因好的⼴告id。对
  457. 应营销平台上的⼴告创意id
  458. 是 679063897
  459. ===== PAGE 11 =====
  460. reques
  461. tId
  462. string 请求id 否
  463. quality
  464. Score
  465. float 质量分 否 0-1 最多回
  466. 传两位⼩数
  467. 淘宝专
  468. ⽤
  469. creditL
  470. ine
  471. long ⾦融授信⾦额(单位:分) 否 100
  472. ===== PAGE 12 =====
  473. commo
  474. nQualit
  475. yScore
  476. float 通⽤后端效果质量分
  477. 备注:
  478. 1.⾦融⾏业回传规范:
  479. 【⽅式1】:授信⾦额区间-
  480. ->回传质量分
  481. 0-3k(含3k)-->0.15
  482. 3-5k(含5k)-->0.30
  483. 5-8k(含8k)-->0.45
  484. 8-10k(含10k)--
  485. >0.60
  486. 10-12k(含12k)--
  487. >0.75
  488. 12k+以上-->0.90
  489. 【⽅式2】:若上述分档不
  490. 适⽤业务情况,可⾃⾏按照
  491. 业务实际情况映射为0-1之
  492. 间的⼩数回传,确保
  493. ①质量分分布与授信⾦额呈
  494. 正相关②⾄少有六个及以上
  495. 的质量区间分档。
  496. 例:
  497. 0,02 | 0.19 | 0.24| 0.28|
  498. 0.54| 0.62| 0.83| 0.91| 0.97
  499. 【操作备注】:
  500. 回传质量分时,dataType转
  501. 化数据类型选择26-质量
  502. 分,与转化⾏为事件区分,
  503. 分两条分别回传
  504. 2.社交⾏业回传规范:
  505. 【⽅式】:付费⾦额区间--
  506. >回传质量分
  507. 0-6元(含6元)-->0.1
  508. 6-15元(含15元)--
  509. >0.2
  510. 15-30元(含30元)--
  511. >0.3
  512. 30-50元(含50元)--
  513. >0.4
  514. 50-100元(含100元)-
  515. ->0.5
  516. 100-200元(含200
  517. 元)-->0.6
  518. 200-300元(含300
  519. 元)-->0.7
  520. 否 0-1 最多回
  521. 传两位⼩数
  522. 该字段
  523. 传值
  524. 时。
  525. datatyp
  526. e填26
  527. ===== PAGE 13 =====
  528. 2.3返回值Response
  529. 300-400元(含400
  530. 元)-->0.8
  531. 400-500元(含500
  532. 元)-->0.9
  533. 500元以上-->1.0
  534. 3.旅游⾏业回传规范:(⽤户
  535. 后效质量-->回传质量分)
  536. 【⽅式】根据业务⾃定义⽤
  537. 户质量综合指标,映射为0-
  538. 1之间的⼩数回传,确保
  539. ①质量分分布与授信⾦额呈
  540. 正相关②⾄少有六个及以上
  541. 的质量区间分档。
  542. 例:
  543. 0,02 | 0.19 | 0.24| 0.28|
  544. 0.54| 0.62| 0.83| 0.91| 0.97
  545. dataCa
  546. tegory
  547. int 0:常规回传,1:⾏业优化
  548. 模型,2:助攻,3:品牌(默
  549. 认或者不填即为0)
  550. 是
  551. 字段 类型 说明 是否必须
  552. ret int 返回码,0正常,1001参数校验失败,
  553. 1002未知错误,1007使⽤智能分包回传
  554. 但未提供userIdType, 1008ownerToken
  555. 鉴权失败
  556. 注意:如果是签名错误的话会返回http
  557. status 403
  558. 是
  559. msg string 如果有错误,则返回错误信息 否
  560. 传参情况 响应码 提示语
  561. 当userIdType = 1时,imei和
  562. ouId同时为空。
  563. 1001 imei/ouId/androidId/requestId
  564. cannot be all empty!
  565. 当userIdType = 2时,
  566. keyTrackInfo为空
  567. 1001 keyTrackInfo is null!
  568. 当userIdType = 2时,
  569. keyTrackInfo不为空。
  570. keyTrackInfo中解析出来的
  571. trackId和adTraceId同时为空
  572. 0 traceId & trackId are all
  573. empty!
  574. ===== PAGE 14 =====
  575. 2.4请求示例
  576. (1)Header
  577. (2)Body
  578. (3)Postman截图:
  579. 应⽤已经在智能分包⽩名单
  580. 中,但userIdType未填写
  581. 1007 ⽩名单客户必须提供
  582. userIdType
  583. 当ownerToken不为空,且鉴
  584. 权失败
  585. 1008 ownerToken鉴权失败
  586. signature ce14fcc22abd7461e860263a8da983eb
  587. Content-Type application/json
  588. timestamp 1571995483916
  589. {"payAmount":100,"adId":101097648,"appType":1,"clientIp":"127.0.0.1","dataTyp
  590. e":1,"ascribeType":1,"channel":1,"imei":"XJMyaLt8fDlv4a9b8/0RNQ==","type":1,"
  591. pkg":"com.oppo.test","mac":"TEViR6jSgD/lECBl3Ah70eNy2gUQrQlekHkWqEGkZ
  592. sU=","timestamp":1571995483916}