获取类目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。只有少数销售属性值支持传入别名,比如颜色和尺寸 |
| 名称 | 类型 | 示例值 | 描述 |
|---|---|---|---|
| product | Product | 96255001 | 产品结构 |
|
TaobaoClient client = new DefaultTaobaoClient(url, appkey, secret);
ProductAddRequest req = new ProductAddRequest();
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:深深绿色");
ProductAddResponse rsp = client.execute(req, sessionKey);
System.out.println(rsp.getBody());
<product_add_response>
<product>
<product_id>3433222</product_id>
<created>2000-01-01 00:00:00</created>
</product>
</product_add_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.invalid-parameter:nick | 参数:nick无效,格式不对、非法值、越界等 | |
| isv.product-service-error:null | 品牌属性出错:品牌 | 类目上限制了b卖家不可枚举输入,建议B商家发布产品的时候不要进行枚举 |
| 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 | 此套装信息在系统中已存在,请勿重复提交 | 直接用现有的套装产品,发布商品 |