定向设置前需要了解每个定向的类型,可通过以下对照表获取,也可以通过接口获取。
taobao.zuanshi.banner.cpm.targeting.findtaobao.zuanshi.banner.cpc.targeting.find由于定向设置比较复杂,每种定向设置方法不同,请严格按照此表进行定向设置。
查上表,DMP定向需设置crowd.crowdValue为DMP人群ID,crowd.crowdName为DMP人群名称;
至多添加8个DMP定向;
过期的DMP定向不能更新
DMP定向(crowdType:128)
TaobaoClient client = new DefaultTaobaoClient(url, appkey, secret);
ZuanshiBannerCrowdAddRequest request = new ZuanshiBannerCrowdAddRequest();
// 计划ID
request.setCampaignId(227248027L);
// 单元ID
request.setAdgroupId(227248028L);
List<ZuanshiBannerCrowdAddRequest.Crowd> crowds = new ArrayList<>();
// 添加DMP定向示例
ZuanshiBannerCrowdAddRequest.Crowd dmpCrowd = new ZuanshiBannerCrowdAddRequest.Crowd();
// DMP人群名称
dmpCrowd.setCrowdName("15天叶子类目点击偏好人群");
// DMP人群ID
dmpCrowd.setCrowdValue("437294");
// DMP定向的crowdType
dmpCrowd.setCrowdType(128L);
// 设置交叉出价,需先查询出已绑定的所有资源位ID,全部都要设置出价
List<ZuanshiBannerCrowdAddRequest.MatrixPrice> matrixPrices = new ArrayList<>();
ZuanshiBannerCrowdAddRequest.MatrixPrice matrixPrice1 = new ZuanshiBannerCrowdAddRequest.MatrixPrice();
// 单元上绑定的资源位ID
matrixPrice1.setAdzoneId(21038031L);
// 出价,单位:分
matrixPrice1.setPrice(567L);
ZuanshiBannerCrowdAddRequest.MatrixPrice matrixPrice2 = new ZuanshiBannerCrowdAddRequest.MatrixPrice();
matrixPrice2.setAdzoneId(21104041L);
matrixPrice2.setPrice(789L);
matrixPrices.add(matrixPrice1);
matrixPrices.add(matrixPrice2);
dmpCrowd.setMatrixPrices(matrixPrices);
crowds.add(dmpCrowd);
request.setCrowds(crowds);
ZuanshiBannerCrowdAddResponse response = client.execute(request, sessionKey);
if (!response.isSuccess()) {
return response.getSubMsg();
}
相似宝贝定向-喜欢相似宝贝的人群(crowdType:131072)
相似宝贝定向-喜欢我的宝贝的人群(crowdType:262144)
// 添加 相似宝贝定向-喜欢相似宝贝的人群 示例
List<ZuanshiBannerCrowdAddRequest.Crowds> crowds = new ArrayList<>();
ZuanshiBannerCrowdAddRequest.Crowds crowd = new ZuanshiBannerCrowdAddRequest.Crowds();
// 相似宝贝定向的crowdType
crowd.setCrowdType(131072L);
// 指定宝贝
List<ZuanshiBannerCrowdAddRequest.SubCrowds> subCrowds = new ArrayList<>();
ZuanshiBannerCrowdAddRequest.SubCrowds subCrowds1 = new ZuanshiBannerCrowdAddRequest.SubCrowds();
// 宝贝名称
subCrowds1.setSubCrowdName("淘宝热卖连衣裙");
// 宝贝ID
subCrowds1.setSubCrowdValue("2200798687168");
subCrowds.add(subCrowds1);
crowd.setSubCrowds(subCrowds);
// 交叉出价等设置类似
...
// 添加访客定向示例
List<ZuanshiBannerCrowdAddRequest.Crowds> crowds = new ArrayList<>();
// 自主店铺
ZuanshiBannerCrowdAddRequest.Crowds anyCrowd = new ZuanshiBannerCrowdAddRequest.Crowds();
// 访客定向的crowdType
anyCrowd.setCrowdType(16L);
// 自主店铺标识,常量,固定为1
anyCrowd.setCrowdValue("1");
// 指定店铺名称
List<ZuanshiBannerCrowdAddRequest.SubCrowds> anySubCrowds = new ArrayList<>();
ZuanshiBannerCrowdAddRequest.SubCrowds subCrowd1 = new ZuanshiBannerCrowdAddRequest.SubCrowds();
// 店铺名称1
subCrowd1.setSubCrowdName("店铺名称1");
ZuanshiBannerCrowdAddRequest.SubCrowds subCrowd2 = new ZuanshiBannerCrowdAddRequest.SubCrowds();
// 店铺名称2
subCrowd2.setSubCrowdName("店铺名称2");
anySubCrowds.add(subCrowd1);
anySubCrowds.add(subCrowd2);
anyCrowd.setSubCrowds(anySubCrowds);
// 种子店铺
ZuanshiBannerCrowdAddRequest.Crowds seedCrowd = new ZuanshiBannerCrowdAddRequest.Crowds();
// 访客定向的crowdType
seedCrowd.setCrowdType(16L);
// 种子店铺标识,常量,固定为2
seedCrowd.setCrowdValue("2");
// 指定店铺名称
List<ZuanshiBannerCrowdAddRequest.SubCrowds> seedSubCrowds = new ArrayList<>();
ZuanshiBannerCrowdAddRequest.SubCrowds subCrowd3 = new ZuanshiBannerCrowdAddRequest.SubCrowds();
// 店铺名称1
subCrowd3.setSubCrowdName("店铺名称3");
ZuanshiBannerCrowdAddRequest.SubCrowds subCrowd4 = new ZuanshiBannerCrowdAddRequest.SubCrowds();
// 店铺名称2
subCrowd4.setSubCrowdName("店铺名称4");
seedSubCrowds.add(subCrowd3);
seedSubCrowds.add(subCrowd4);
seedCrowd.setSubCrowds(seedSubCrowds);
// 设置交叉出价,需先查询出已绑定的所有资源位ID,全部都要设置出价
List<ZuanshiBannerCrowdAddRequest.MatrixPrice> matrixPrices = new ArrayList<>();
ZuanshiBannerCrowdAddRequest.MatrixPrice matrixPrice1 = new ZuanshiBannerCrowdAddRequest.MatrixPrice();
// 单元上绑定的资源位ID
matrixPrice1.setAdzoneId(20722019L);
// 出价,单位:分
matrixPrice1.setPrice(567L);
ZuanshiBannerCrowdAddRequest.MatrixPrice matrixPrice2 = new ZuanshiBannerCrowdAddRequest.MatrixPrice();
matrixPrice2.setAdzoneId(21020037L);
matrixPrice2.setPrice(789L);
matrixPrices.add(matrixPrice1);
matrixPrices.add(matrixPrice2);
anyCrowd.setMatrixPrice(matrixPrices);
seedCrowd.setMatrixPrice(matrixPrices);
crowds.add(anyCrowd);
crowds.add(seedCrowd);
搜索接口,根据兴趣点搜索相关的兴趣点
ZuanshiBannerCatFindRequest request = new ZuanshiBannerCatFindRequest();
ZuanshiBannerCatFindResponse response = null;
//计划类型,cpm:2,cpc:8
request.setCampaignType(2l);
//搜索兴趣点
request.setInterestName("电脑");
try {
response = client.execute(request, sessionKey);
} catch (ApiException e) {
e.printStackTrace();
}
if (response.isSuccess()) {
return JSONUtils.toJsonPrettyPrinting(response.getResult());
}
类目定向——高级兴趣点(crowdType:524288)
一个兴趣点对应一个Crowd,如果多个兴趣点传入Crowd集合
可用兴趣点标签查询
| 字段 | 含义 | 获取方式 |
|---|---|---|
| catId | 类目id | taobao.zuanshi.banner.seniorinterest.find |
| catName | 类目名称 | taobao.zuanshi.banner.seniorinterest.find |
| interestId | 兴趣点id | taobao.zuanshi.banner.seniorinterest.find |
| interestName | 兴趣点名称 | taobao.zuanshi.banner.seniorinterest.find |
支持类目名称和兴趣点名称查询
// 添加 类目定向——高级兴趣点 示例
List<ZuanshiBannerCrowdAddRequest.Crowds> crowds = new ArrayList<>();
//添加第一个兴趣点 开始
ZuanshiBannerCrowdAddRequest.Crowds crowd1 = new ZuanshiBannerCrowdAddRequest.Crowds();
// 类目定向——高级兴趣点的crowdType
crowd1.setCrowdType(524288L);
crowd1.setCrowdName("电脑");
crowd1.setCrowdValue("150708_322448393060");
crowds.add(crowd1);
// 交叉出价等设置类似
...
crowds.add(crowd1)
//添加第一个兴趣点 结束
//添加第二个兴趣点,类似第一个过程
行业店铺定向 (crowdType:2048)
一个行业店铺对应一个Crowd结构,如果需要传入多个行业店铺,则需要构造多个Crowd结构
// 添加 行业店铺定向 示例
List<ZuanshiBannerCrowdAddRequest.Crowds> crowds = new ArrayList<>();
// 添加第一个行业店铺 开始
ZuanshiBannerCrowdAddRequest.Crowds crowd1 = new ZuanshiBannerCrowdAddRequest.Crowds();
// 行业店铺定向的crowdType
crowd1.setCrowdType(2048L);
crowd1.setCrowdName("户外/登山/野营/旅行用品");
crowd1.setCrowdValue("50013886");
crowds.add(crowd1);
// 交叉出价等设置类似
...
crowds.add(crowd1)
//添加第一个行业店铺 结束
//添加第二个行业店铺,类似第一个过程
店铺型定向 (crowdType:2097152)
一个店铺包对应一个Crowd结构,仅允许一个店铺包
店铺包查询条件,设置到Crowd结构中的
| 字段 | 含义 | 获取方式 |
|---|---|---|
| catIdList | 需要筛选的主营类目ID列表 | taobao.zuanshi.banner.relationShop.package.condition.find |
| shopScaleIdList | 需要筛选的成交规模ID列表 | taobao.zuanshi.banner.relationShop.package.condition.find |
| minPerSale | 需要筛选的最小客单价 | taobao.zuanshi.banner.relationShop.package.condition.find |
| maxPerSale | 需要筛选的最大客单价 | taobao.zuanshi.banner.relationShop.package.condition.find |
| shopPreferenceValue | 人群优选逻辑 | taobao.zuanshi.banner.relationShop.package.condition.find |
//添加 店铺型定向-店铺包 示例
List<ZuanshiBannerCrowdAddRequest.Crowds> crowds = new ArrayList<>();
ZuanshiBannerCrowdAddRequest.Crowds crowd1 = new ZuanshiBannerCrowdAddRequest.Crowds();
// 店铺型定向的crowdType
crowd1.setCrowdType(2097152L);
// 店铺包名称
// 获取方式:taobao.zuanshi.banner.relationShop.package.find
crowd1.setCrowdName("买家人群同质店铺");
// 店铺包ID
// 获取方式:taobao.zuanshi.banner.relationShop.package.find
crowd1.setCrowdValue("102");
// 主营类目ID列表
crowd1.setCatIdList(Arrays.asList("30","16"));
// 成交规模ID列表
crowd1.setShopScaleIdList(Arrays.asList("101","103","105"));
// 最小客单价
crowd1.setMinPerSale("500");
// 最大客单价
crowd1.setMaxPerSale("5000");
// 人群优选逻辑
crowd1.setShopPreferenceValue("1");
crowds.add(crowd1);
// 交叉出价等设置类似
...
crowds.add(crowd1)
// 添加 店铺型定向-店铺包 结束
店铺型定向 (crowdType:2097152)
可以仅选择我的店铺作为当前投放人群,此时,是一个Crowd结构,不需要SubCrowd
也可以针对我的店铺进行行为时间窗的细分,此时,行为是一个Crowd结构,时间窗是一个SubCrowd结构
//添加 店铺型定向-我的店铺(非行为) 示例
List<ZuanshiBannerCrowdAddRequest.Crowds> crowds = new ArrayList<>();
ZuanshiBannerCrowdAddRequest.Crowds crowd1 = new ZuanshiBannerCrowdAddRequest.Crowds();
// 店铺型定向的crowdType
crowd1.setCrowdType(2097152L);
// 我的店铺名称
// 获取方式:taobao.zuanshi.banner.relationShop.mine.find
crowd1.setCrowdName("我的店铺");
// 我的店铺值
// 获取方式:taobao.zuanshi.banner.relationShop.mine.find
crowd1.setCrowdValue("106");
crowds.add(crowd1);
// 交叉出价等设置类似
...
crowds.add(crowd1)
//添加 店铺型定向-我的店铺(非行为) 结束
// 添加 店铺型定向-我的店铺(行为细分) 示例
List<ZuanshiBannerCrowdAddRequest.Crowds> crowd_of_mine = new ArrayList<>();
ZuanshiBannerCrowdAddRequest.Crowds crowd2 = new ZuanshiBannerCrowdAddRequest.Crowds();
// 店铺型定向的crowdType
crowd2.setCrowdType(2097152L);
// 行为细分 名称
// 获取方式:taobao.zuanshi.banner.relationShop.mine.find
crowd2.setCrowdName("有过成交");
// 行为细分 ID
// 获取方式:taobao.zuanshi.banner.relationShop.mine.find
crowd2.setCrowdValue("04");
// 设置行为时间窗
List<ZuanshiBannerCrowdAddRequest.SubCrowds> anySubCrowds = new ArrayList<>();
ZuanshiBannerCrowdAddRequest.SubCrowds subCrowd1 = new ZuanshiBannerCrowdAddRequest.SubCrowds();
// 时间窗 名称
// 获取方式:taobao.zuanshi.banner.relationShop.mine.find
subCrowd1.setSubCrowdName("最近30天");
// 时间窗 ID
// 获取方式:taobao.zuanshi.banner.relationShop.mine.find
subCrowd1.setSubCrowdValue("01");
// 时间窗加入Crowd结构
anySubCrowds.add(subCrowd1);
crowd2.setSubCrowds(anySubCrowds);
crowds.add(crowd1);
// 交叉出价等设置类似
...
crowds.add(crowd1)
//添加 店铺型定向-我的店铺(行为细分) 结束
智能定向 (crowdType:32768)
一个锦囊人群对应一个Crowd结构,仅允许一个锦囊人群
智能定向店铺优质人群规模查询
| 字段 | 含义 | 获取方式 |
|---|---|---|
| scaleLevel | 人群规模 | taobao.zuanshi.banner.intelligence.shop.scale.find |
| scaleDesc | 人群规模描述 | taobao.zuanshi.banner.intelligence.shop.scale.find |
// 添加 智能定向 示例
List<ZuanshiBannerCrowdAddRequest.Crowds> crowds = new ArrayList<>();
// 添加第一个店铺智能定向 开始
ZuanshiBannerCrowdAddRequest.Crowds crowd1 = new ZuanshiBannerCrowdAddRequest.Crowds();
// 智能定向的crowdType
crowd1.setCrowdType(32768L);
// 智能定向人群细分值
// 获取方式:taobao.zuanshi.banner.intelligence.shop.scale.find
crowd1.setCrowdValue("10");
crowds.add(crowd1);
// 交叉出价等设置类似
...
crowds.add(crowd1)
//添加第一个智能定向 结束
//添加第二个智能定向,类似第一个过程