获取类目ID,必需是叶子类目ID;调用taobao.itemcats.get.v2获取 传入关键属性,结构:pid:vid;pid:vid.调用taobao.itemprops.get.v2获取pid, 调用taobao.itempropvalues.get获取vid;如果碰到用户自定义属性,请用customer_props. 新增:套装产品发布,目前支持单件多个即 A*2 形式的套装
名称 | 类型 | 是否必须 | 示例值 | 更多限制 | 描述 |
---|---|---|---|---|---|
cid | Number | 必须 | 5300012 | 商品类目ID.调用taobao.itemcats.get获取;注意:必须是叶子类目 id. | |
name | String | 可选 | 笔记本 | 产品名称,最大30个字符. | |
price | String | 可选 | 200.07 | 产品市场价.精确到2位小数;单位为元.如:200.07 | |
image | byte[] | 必须 | 我是被上传的文件内容 |
|
产品主图片.最大1M,目前仅支持GIF,JPG. |
outer_id | String | 可选 | 96330012 | 外部产品ID | |
props | String | 可选 | pid:vid;pid:vid | 关键属性 结构:pid:vid;pid:vid.调用taobao.itemprops.get获取pid,调用taobao.itempropvalues.get获取vid;如果碰到用户自定义属性,请用customer_props. | |
binds | String | 可选 | pid:vid;pid:vid |
|
非关键属性结构:pid:vid;pid:vid. 非关键属性不包含关键属性、销售属性、用户自定义属性、商品属性; 调用taobao.itemprops.get获取pid,调用taobao.itempropvalues.get获取vid. 注:支持最大长度为512字节 |
sale_props | String | 可选 | pid:vid;pid:vid | 销售属性结构:pid:vid;pid:vid.调用taobao.itemprops.get获取is_sale_prop=true的pid,调用taobao.itempropvalues.get获取vid. | |
customer_props | String | 可选 | 20000:优衣库:型号:001:632501:1234 |
用户自定义属性,结构:pid1:value1;pid2:value2,如果有型号,系列等子属性用: 隔开 例如:“20000:优衣库:型号:001;632501:1234”,表示“品牌:优衣库:型号:001;货号:1234”
注:包含所有自定义属性的传入 |
|
desc | String | 可选 | 这是产品描述 | 产品描述.最大不超过25000个字符 | |
major | Boolean | 可选 | true |
|
是不是主图 |
native_unkeyprops | String | 可选 | native_unkeyprops | native_unkeyprops | |
market_time | Date | 可选 | 2000-01-01 00:00:00 | 上市时间。目前只支持鞋城类目传入此参数 | |
property_alias | String | 可选 | 1627207:3232483:深深绿色 | 销售属性值别名。格式为pid1:vid1:alias1;pid1:vid2:alia2。只有少数销售属性值支持传入别名,比如颜色和尺寸 | |
packing_list | String | 可选 | 说明书:1;耳机:1;充电器:1 | 包装清单。注意,在管控类目下,包装清单不能为空,同时保证清单的格式为: 名称:数字;名称:数字; 其中,名称不能违禁、不能超过60字符,数字不能超过999 | |
extra_info | String | 可选 | [{"field_key":"description","field_name":"内容简介","field_value":"我是内容简介"},{"field_name":"目录","field_value":"我是目录"}] | 存放产品扩展信息,由List(ProductExtraInfo)转化成jsonArray存入. | |
market_id | String | 可选 | 2 | 市场ID,1为新增C2C市场的产品信息, 2为新增B2C市场的产品信息。 不填写此值则C用户新增B2C市场的产品信息,B用户新增B2C市场的产品信息。 | |
sell_pt | String | 可选 | 明星同款 | 商品卖点描述,长度限制为20个汉字 | |
template_id | Number | 可选 | 1 | 在天猫,无关键属性发布产品,必须指定模板ID,模板ID通过tmall.product.template.get获取 | |
is_pub_suite | Boolean | 可选 | false | 是否发布套装产品,和suite_items_str配合使用,is_pub_suite=true走套装SPU发布逻辑,达尔文体系下不需要再走tmall.product.spec.add发布产品规格 | |
suite_items_str | String | 可选 | 1000000062318020:1;1000000062318020:2; | 发布套装产品时,套装关联的产品规格+数量的字符串,格式:specsId:number。 |
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
product | Product | 96255001 | 产品结构 |
|
TaobaoClient client = new DefaultTaobaoClient(url, appkey, secret); ProductAddTmallRequest req = new ProductAddTmallRequest(); req.setCid(5300012L); req.setName("笔记本"); req.setPrice("200.07"); req.setImage(new FileItem("/tmp/file.txt")); req.setOuterId("96330012"); req.setProps("pid:vid;pid:vid"); req.setBinds("pid:vid;pid:vid"); req.setSaleProps("pid:vid;pid:vid"); req.setCustomerProps("20000:优衣库:型号:001:632501:1234"); req.setDesc("这是产品描述"); req.setMajor(true); req.setNativeUnkeyprops("native_unkeyprops"); req.setVerticalMarket(4L); req.setMarketTime(StringUtils.parseDateTime("2000-01-01 00:00:00")); req.setPropertyAlias("1627207:3232483:深深绿色"); req.setPackingList("说明书:1;耳机:1;充电器:1"); req.setExtraInfo("[{\"field_key\":\"description\",\"field_name\":\"内容简介\",\"field_value\":\"我是内容简介\"},{\"field_name\":\"目录\",\"field_value\":\"我是目录\"}]"); req.setMarketId("2"); req.setSellPt("明星同款"); req.setTemplateId(1L); req.setIsPubSuite(false); req.setSuiteItemsStr("1000000062318020:1;1000000062318020:2;"); ProductAddTmallResponse rsp = client.execute(req, sessionKey); System.out.println(rsp.getBody());
<product_add_tmall_response> <product> <product_id>3433222</product_id> <created>2000-01-01 00:00:00</created> </product> </product_add_tmall_response>
<error_response> <code>50</code> <msg>Remote service error</msg> <sub_code>isv.invalid-parameter</sub_code> <sub_msg>非法参数</sub_msg> </error_response>
错误码 | 错误描述 | 解决方案 |
---|---|---|
isv.product-service-error:null | 1,未授权此品牌的发布 2,货号,品牌属性出错:货号,品牌 3,本类目此关键属性的产品已存在, 不可重复添加 | 1,通过taobao.itemcats.authorize.get查看B商家有没有授权此品牌,再发布产品 2,传入货号以及正确的品牌(通过taobao.itempropvalues.get确定是否是自定义品牌)3,该关键属性的产品已经发布,可以直接搜索该产品,在其产品下发布商品 |
isv.invalid-parameter:c-seller | 无效的参数:C卖家 | C卖家没有权限发布产品,请在发布产品之前先通过接口taobao.user.get判断该卖家是否是B卖家 |
isv.invalid-parameter:property_alias | 1.销售属性值别名格式错误 2.销售属性值别名包含不合法的pid或vid | 1.传入正确的销售属性值别名格式 2.传入正确的pid和vid |
isv.error-spu-packinglisg-null | 包装清单不能为空值 | 包装清单不能为空值 |
isv.error-spu-packinglisg-error | 包装清单信息格式不正确 | 请参看说明文档 |
isv.error-spu-packinglisg-save-error | 保存失败 | 请检查数据是否使用了特殊信息。然后重新尝试 |
isv.invalid-parameter:suite-not-allow | 没有权限发布套装产品 | 目前只支持特定商家类目发布套装产品。可以通过 tmall.brandcat.suiteconf.get获取那些类目能发布套装 |
isv.invalid-parameter:suite-items-error | 套装关联子规格错误 | 可能是数量,超出限制,类目不对等,按提示修改。限制信息,可以通过tmall.brandcat.suiteconf.get获取 |
isv.invalid-parameter:suite-items-empty | 套装子产品到suite_items_str,不能为空 | 指定有效的套装子产品到suite_items_str中 |
isv.product-is-existed:suite | 此套装信息在系统中已存在,请勿重复提交 | 直接用现有的套装产品,发布商品 |