一、百度信息流
线索API接入指南,参考百度官方文档:百度营销-商业开发者中心
1、背景
业务需要获取向精准的用户流量,比如我们是卖保险的,就需要买保险相关标签的用户流量进来,卖车的就需要买车的用户流量进来。所以需要在一大流量平台进行引流,常用就是广告投放,百度信息流就是专做这块流量的,进而获取用户资源。
2、业务流程
由于上述行为发生在我们的平台页面内,百度无法监测到用户发生的一系列转化行为,因此需要我们完成百度广告点击信息和后续转化行为的归因匹配,并将匹配成功的转化信息通过线索API接口回传至百度,百度利用机器学习和大数据分析,以便在后续投放中更准确地预估用户转化,并且自动调整每次点击的成本(CPC)或每次展示的成本(CPM),以最大化广告的转化效果。
所以通过百度信息流广告过来的用户,如果做了注册、登录、提交表单、咨询等事件,我们需要回传转化事件(用户行为)给百度,以便百度进行用户数据分析来推送更符合我们业务的用户流量。
3、开发使用流程
step 1:在百度营销广告投放平台,转化-事件管理内新建【自建站】资产,并添加需要回传的转化事件,接入方式选择线索API
如果您的账户内已经创建过自建站资产,无需重复创建资产,在列表页找到对应资产-【添加事件】即可
step 2:完成转化数据匹配归因与回传的开发
step 3:完成联调,验证数据是否可以正确回传
step 4:在百度营销广告投放平台,设置目标转化(事件)进行oCPX投放
一、操作流程(平台、开发)
1、登录百度营销平台
地址:百度推广
需要注册账号、新增推广账户
2、进入信息流推广或者搜索推广
以信息流推广为例,进入点击资产中心,选择事假管理,操作新建资产和资产绑定事件
点击事件管理,点击页面新建资产
3、新建资产、绑定事件
3.1 添加资产
点击新建资产,选择自建站,以跳转自己公司的推广页面为例
选择信息流,为资产命名即可
3.2 添加事件
回传事件:登录、注册、表单、咨询、点击操作等等.....;用于百度分析后推广精准的客户群体,所以一定要回传转化成功的用户。
以用户提交表单为例,添加表单回传事件:
选择线索API对接
token需要保存
此时事件添加成功,下一步需要进行联调测试。
4 、联调测试(开发介入)
4.1 可以看到刚才创建的资产及里面绑定的表单事件
点击联调
4.2 输入对应的推广链接
此推广链接URL就是百度引流广告跳转的我们自己的URL地址(此处测试随便填写的url);
确保跳转到此url服务前端能够拿到bd_vid传到后端,后端根据接口操作传递对应newTye转化事件和bd_vid等参数回传到百度API用于数据分析,获取精准推送用户
测试可以随便填写,也可以写自己的域名地址。只要把对应的bd_vid参数和newT转化事件的l回传给百度API即可。
此时点击下一步,就等待我们的后端接口回传提交表单事件给百度
4.3 后端接口联调测试(Java对接)
调用百度API接口,对应的bd_vid参数和newT转化事件的l回传给百度API
百度回传API接口为:https://ocpc.baidu.com/ocpcapi/api/uploadConvertData
流程:
当有用户提交表单就调用百度回传API回传事件接口,参数参考接口文档。
接口文档地址:百度营销-商业开发者中心
后端代码调用回传示例如下:
@Data
public class BaiduFlowDto {
// 事件类型
private String eventType;
// 回传地址
private String logidUrl;
}
@Slf4j
@Service
public class BaiduInformationFlowService {
public static String token = "对应上面创建事件的token";
public static String url = "https://ocpc.baidu.com/ocpcapi/api/uploadConvertData";
@Test
public void sendBaiDuFlowMsg(BaiduFlowDto baiduFlowDto){
try {
String logidUrl = baiduFlowDto.getLogidUrl();
String eventType = baiduFlowDto.getEventType();
HashMap<String, Object> map = new HashMap<>();
map.put("token",token);
HashMap<String, Object> inMap = new HashMap<>();
inMap.put("logidUrl",logidUrl); // http://www.baidu.com?bd_vid=uANBIY。。。。。
inMap.put("newType",eventType); // 3
map.put("conversionTypes",inMap);
String jsonStr = JSONUtil.toJsonStr(map);
String resultBody = HttpRequest.post(url)
.method(Method.POST)
.header(Header.CONTENT_TYPE, ContentType.JSON.getValue())
.setConnectionTimeout(RequestTimeOut.connectionTimeout)
.setReadTimeout(RequestTimeOut.readTimeout)
.body(jsonStr)
.execute().body();
JSONObject result = JSONUtil.parseObj(resultBody);
log.info("百度信息流,回传结果:{}",result);
} catch (Exception e) {
log.error("baidu api error",e);
}
}
}
4.4 测试完成查看页面联调结果
查看回传事件统计
5、联调完成,就可以进行oCPX投放了
投放就在信息流推广进去,新建投放计划,设置竞价、投放URL等设置。