通过应用API上报归因后APP转化数据开发指南
1 基本流程
- 用户点击广告,客户端收集用户的点击事件,百度前端把点击事件发送给百度广告服务器,百度推广后台回调监测 URL,即feedback url(由广告主自行开发,或托管给三方监测平台) 具体接口见:监测回调接口
- 当广告主或第三方监测平台接受到推广后台的请求后,根据请求参数中用户的信息(例如用户的 idfa,imei 等),来匹配该用户的转化数据(应用激活、消费等) ,广告主或三方监测平台将匹配成功的转化数据与广告点击数据进行拼接,使用callback_url将数据回传给百度,具体接口见:callback_url接口
- 在推广后台披露效果数据
2 完整范例
接口调用方法及参数说明参考API文档
2.1 第一步
广告主推广账户管理员在百度推广后台填写监测URL、推广后台为广告主生成的固定的签名key,即akey,广告主需在监测平台设置对应akey
例如 URL: http://www.test.com/notice?imei_md5={{IMEI_MD5}}&os={{OS}}&ip={{IP}}&ua={{UA}}&ts={{TS}}&userid={{USER_ID}}&pid={{PLAN_ID}}&uid={{UNIT_ID}}&aid={{IDEA_ID}}&click_id={{CLICK_ID}}&callback_url={{CALLBACK_URL}}
例如 akey: JQV6d3SytFYJvj6p=
2.2 第二步
百度后台替换监测URL中的部分通配符,得到结果:
http://www.test.com/notice?imei_md5=123456&os=2&ip=123.34.221.1&ts=13441231221&userid=12345&pid=12345&uid=45111&aid=12345&click_id={{CLICK_ID}}&callback_url={{CALLBACK_URL}}&sign={{SIGN}}
2.3 第三步
广告在发生点击时,百度广告服务器拿到点击广告的监测地址,在广告主监测地址后追加akey(签名key)和ip_type(IP类型)参数,并替换占位符字段 {{CLICK_ID}}、{{CALLBACK_URL}},移除 &sign={{SIGN}}
例如得到如下地址:
http://www.test.com/notice?imei_md5=123456&os=2&ip=123.34.221.1&ts=13413441231&pid=12345&uid=45111&aid=12345&userid=12345&click_id=61782617822331_13441231221&callback_url=http%3a%2f%2ocpc.baidu.com%2ffc%2factionCb%3fa_type%3d%7b%7bATYPE%7d%7d%26a_value%3d%7b%7bAbAVAL%7d%7d%26s%3d123%26o%3d123%26ext_info%3dT6H2n7u&akey=JQV6d3SytFYJvj6p=&ip_type=v4
计算签名: 使用上面URL,将akey的值直接连接在url 后面,进行md5
sign=md5(http://www.test.com/notice?imei_md5=123456&os=2&ip=123.34.221.1&ts=13413441231&pid=12345&uid=45111&aid=12345&userid=12345&click_id=61782617822331_13441231221&callback_url=http%3a%2f%2ocpc.baidu.com%2ffc%2factionCb%3fa_type%3d%7b%7bATYPE%7d%7d%26a_value%3d%7b%7bAbAVAL%7d%7d%26s%3d123%26o%3d123%26ext_info%3dT6H2n7u&akey=JQV6d3SytFYJvj6p=&ip_type=v4JQV6d3SytFYJvj6p=)
将 sign 参数添加在 URL 后面,得到最终的调用的监测地址:
http://www.test.com/notice?imei_md5=123456&os=2&ip=123.34.221.1&ts=13413441231&pid=12345&uid=45111&aid=12345&userid=12345&click_id=61782617822331_13441231221&callback_url=http%3a%2f%2ocpc.baidu.com%2ffc%2factionCb%3fa_type%3d%7b%7bATYPE%7d%7d%26a_value%3d%7b%7bAbAVAL%7d%7d%26s%3d123%26o%3d123%26ext_info%3dT6H2n7u&akey=JQV6d3SytFYJvj6p=&ip_type=v4&sign=86700c6536fb8f57d307f0c0ba68c1f7
2.4 第四步
百度服务器生成最终的监测地址,请求该监测地址,返回的HTTP状态码小于400则表示调用成功
2.5 第五步
广告主收到监测请求,获取callback_url 参数,如:
http://ocpc.baidu.com/ocpcapi/cb/actionCb?a_type={{ATYPE}}&a_value={{AVALUE}}&s=123&ext_info=T6H2n7u
注意,为避免接口升级导致您回调失败,这里直接获取监测请求中callback_url参数进行urldecode即可,不必存储url host等信息
在APP激活时,替换{{ATYPE}}为 activate, {{AVALUE}}为0 得到新的URL:
http://ocpc.baidu.com/ocpcapi/cb/actionCb?a_type=activate&a_value=0&s=123&ext_info=T6H2n7u
计算签名:使用上面的URL+从百度推广后台拿到的akey(JQV6d3SytFYJvj6p=),连接后进行 md5 得到签名 将&sign=签名值添加在URL后面,得到最终的回调URL:
http://ocpc.baidu.com/ocpcapi/cb/actionCb?a_type=activate&a_value=0&s=123&ext_info=T6H2n7u&sign=04fcaae4357851ff0ebc574e733d33dd
2.6 第六步
广告主请求该url地址,得到的结果如下:
注:返回error_code为0代表接口回调成功- 回调成功:
{
"error_code":0,
"error_msg":"success"
}
- 签名错误:
{
"error_code": 100,
"error_msg":"签名错误"
}
确认akey是否从百度推广后台获取
计算sign前是否拼接akey
要将&sign=签名值添加在回调URL最后
- 数据错误
{
"error_code": 101,
"error_msg":"数据错误"
}
检查是否是从百度调用的监测URL中获取的callback_url参数作为回调url
确认是否是用callback_url,替换{{ATYPE}}为activate, {{AVALUE}}为0