定向设置前需要了解每个定向的类型,可通过以下对照表获取,也可以通过接口获取。
taobao.zuanshi.banner.cpm.targeting.find
taobao.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) //添加第一个智能定向 结束 //添加第二个智能定向,类似第一个过程