如何在Bigcommerce中通过sku id更新产品的“inventory_level”?

时间:2013-10-09 13:14:14

标签: api bigcommerce

我正在尝试更新产品的库存水平,但遗憾的是没有成功。这是我的代码。 我想更新产品的“inventory_level”,但是可以这样做..

<?php

require "bigcommerce.php";
use Bigcommerce\Api\Client as Bigcommerce;


Bigcommerce::configure(array(
    'store_url' => 'https://store-nos85a.mybigcommerce.com/',
    'username' => 'admin',
    'api_key' => '4b7c4bba19f290a728e00be6ae7133cda71f477b'
    ));

Bigcommerce::setCipher('RC4-SHA');
Bigcommerce::verifyPeer(false);
            $product = Bigcommerce::getProduct(76); 
            print_r($product->skus);
                       foreach($product->skus as $sku)
                        {

                            if($sku->id==5)
                                {
                              $fields = array("inventory_level"=>112);
                              Bigcommerce::updateProduct(76,$fields);
                                }
                            echo "id :  ".$sku->id;
                            echo " Invntory Level: ".$sku->inventory_level."<br/>";
                            echo " SKU : ".$sku->sku."<br/>";

                        }


?>

Here " Bigcommerce::updateProduct(76,$field); " is not working..
Please Help me..
Thanks..

2 个答案:

答案 0 :(得分:8)

无需下载所有产品,为什么不检索具有您需要的sku的产品?

GET: /api/v2/products?sku=sku-that-I'm-interested-in

解析id的响应(该SKU产品的产品ID)

然后使用该产品ID进行PUT。

答案 1 :(得分:4)

我正在尝试做同样的事情(不同的编程语言)。我打电话给他们支持。看来你仍然必须引用product_id。

您无法仅通过SKU更新。您必须知道product_id。我通过请求所有产品并将响应加载到数组(product_id,sku等)来解决这个问题。然后我通过数组读取,使用SKU从我们的系统获取数量,并使用关联的product_id发布(PUT)inventory_level。

恕我直言,这对他们来说是一个巨大的疏忽。谁在乎网站上的product_id是什么?

我已经要求增强功能,允许SKU更新。