基础 qianmi.cloudshop.skus.quantity.batch.update(批量更新sku库存(性能高))

批量修改sku库存,最多同时修改100个SKU的库存,批量同步商品库存请调用此接口
 用户授权类型
 公共参数
请求地址:
环境 HTTP请求地址 HTTPS请求地址
正式环境 http://gw.api.qianmi.com/api https://api.qianmi.com/api
系统级请求参数:
名称 类型 是否必须 描述
methodString 必须 API接口名称
access_tokenString 可选 用户登录授权以后,QMOP颁发给应用的授权信息,详细介绍请点击这里,当前API的用户授权类型标明:"需要授权",则此参数必传,"不需要授权",则此参数不需要传。
formatString 必须 指定响应格式,目前支持格式为json
appKeyString 必须 分配给应用的AppKey
vString 必须 API协议版本,当前可选值:1.1
signString 必须 API输入参数签名结果
timestampString 必须 请求时间戳,时区为GMT+8(北京时间),格式:"yyyy-MM-dd HH:mm:ss",例如"2012-12-20 10:20:35",开放平台允许客户端请求的最大时间误差为10分钟
 业务参数
名称 类型 是否必须 示例值 默认值 描述
typeString 可选 11 库存更新方式,1全量更新 2增量更新,不填的话默认为全量更新
skuid_quantityString 必须 p12131:20;p212312:39;p1212423:-20 sku库存批量修改入参,用于指定一批sku和每个sku的库存修改值,sku数量最多100个。格式为skuId:quantity;skuId:quantity。当全量更新库存时,quantity必须为大于等于0的正整数;当增量更新库存时,quantity为整数,可小于等于0。若增量更新时传入的库存为负数,则负数与实际库存之和不能小于0。比如当前实际库存为10,传入增量更新quantity=-10,库存改为0
 请求示例
OpenClient client = new DefaultOpenClient(url, appKey, appSecret);
SkusQuantityBatchUpdateRequest req = new SkusQuantityBatchUpdateRequest();
req.setSkuidQuantity("p12131:20;p212312:39;p1212423:20");
req.setType("1");
SkusQuantityBatchUpdateResponse response = client.execute(req, accessToken);
$client = new OpenClient;
$client->appKey = appKey;
$client->appSecret = appSecret;
$req = new SkusQuantityBatchUpdateRequest;
$req->setSkuidQuantity("p12131:20;p212312:39;p1212423:20");
$req->setType("1");
$res = $client->execute($req, $accessToken);
IOpenClient client = new DefaultOpenClient(url, appKey, appSecret);
SkusQuantityBatchUpdateRequest req = new SkusQuantityBatchUpdateRequest();
req.SkuidQuantity = "p12131:20;p212312:39;p1212423:20";
req.Type = "1";
SkusQuantityBatchUpdateResponse response = client.Execute(req, accessToken);
 响应参数
名称 类型 示例值 描述
skus Sku[] SKU集合中只返回sku_id,num_iid,quantity,modified 字段
 响应示例

JSON数据格式:

 异常示例

JSON数据格式:

 {
    "errorToken": "@@$-ERROR_TOKEN$-@@",
    "code": "33",
    "message": "非法的参数",
    "solution": "请查看根据服务接口对参数格式的要求",
    "subErrors": {
      "subError": [{
          "code": "isv.invalid-paramete:XXXX",
          "message": "参数XXXX无效,格式不对、非法值、越界等"
        }]
  }
 错误码
错误码 错误描述 解决方案
isv.qianmi-cloudshop-skus-quantity-batch-update-service-error:01039001sku数量在1到100之间确保sku数量在1到100之间
isv.qianmi-cloudshop-skus-quantity-batch-update-service-error:01030002货品不存在请检查参数中的sku_id
 FAQ
Q:如果批量传入的sku中有一部分更新成功,一部分失败怎么办?
A:批量修改之前会对sku进行校验,如果sku本身被删除或者不属于当前的商品则该sku的修改请求会被抛弃,其他的修改请求继续下去。校验通过之后批量修改库存是一个事务操作,成功就代表全部成功,反之则是全部失败。如果调用返回成功,则包含在返回结果中的sku就是库存成功更新的sku,未包含进去的就是库存未被更新的,即校验未通过的sku。