2016-06-13 45 views
0
更新库存

我使用下面的代码,以更新的产品与我们的亚马逊上市的新库存数据的Bigcommerce - 它完全适用于不具备的选项设置的任何产品(特别是手套和衬衫,这显然每个S,M,L都有单独的库存水平)。使用卷曲在的Bigcommerce

$api_url = 'https://store-558hrkjw.mybigcommerce.com/api/v2/products/'.$nearrow['ProductID'].'.json';//put inventory 
    $StockdataRAW = array('inventory_level' => 500);//$nearrow['CurrentStockLevel'] 
    $Stockdata = json_encode($StockdataRAW); 
    $ch = curl_init(); 
    curl_setopt($ch, CURLOPT_URL, $api_url); 
    curl_setopt($ch, CURLOPT_HTTPHEADER, array ('Content-type: application/json', 'Accept: application/json')); 
    curl_setopt($ch, CURLOPT_VERBOSE, 0); 
    curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT'); 
    curl_setopt($ch, CURLOPT_SSL_CIPHER_LIST, 'TLSv1'); 
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); 
    curl_setopt($ch, CURLOPT_POSTFIELDS,  $Stockdata); 
    curl_setopt($ch, CURLOPT_USERPWD, "UID:PW"); 
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
    // Switch on verbose information and display it on the web page. 
    curl_setopt($ch, CURLOPT_VERBOSE, true); 
    curl_setopt($ch, CURLOPT_STDERR, fopen('php://output', 'w+')); 
    $response = curl_exec($ch); 
    $result = json_decode($response); 
    print_r($result); 
    $info = curl_getinfo($ch); 
    curl_close($ch); 

当我使用此代码的选项我得到一个404每个产品ID - 任何想法?

回答

2

你的代码工作产品时没有选项设置,因为你打的products endpoint,它用于单品,没有选项设置/变化。

如果您有带选项/变体(例如手套和衬衫)的产品,这些将会是SKU,并且您可以使用SKUs endpoint更新这些产品 - 确保您具有与每个SKU相关的正确ID。

Here are the API docs,而如果您遇到任何更多的问题,你可以参考一下。注意ProductSKU对象之间的差异。

0

我可能失去了一些东西,但它看起来像你不告诉你指的是哪个选项的API,所以它不能正确地回复,并给你一个404的结果。