无法在Shopify中更新产品变体数据

时间:2020-03-01 20:45:51

标签: shopify shopify-api

我正在尝试使用下面的cURL和php更新Shopify中我的产品变体的价格和数量:

$ url = $ api_url。 '/admin/api/2020-01/variants/31941936382042.json';

    $data_json = json_encode(
        array(
            'variants' => array(
                'id' => 4574444978266,
                'sku' => 'TEST-SKU-111',
                'price' => 20,
                'compare_at_price' => 20,
                'cost' => 20, // This price will be coming form database
                'inventory_quantity' => 10))
    );

    var_dump($data_json);


    $ch = curl_init();

    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json; charset=utf-8', 'Content-Length: ' . strlen($data_json)));
    curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT');
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data_json);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    $response = curl_exec($ch);
    var_dump($response);
    curl_close($ch);

我每次测试都说:

{“错误”:{“变量”:“必需的参数缺失或无效”}}

我检查了官方文件https://shopify.dev/docs/admin-api/rest/reference/products/product-variant#update-2020-01,但还是没有运气。有人可以纠正我我在做什么错吗?

预先感谢

1 个答案:

答案 0 :(得分:0)

尝试更改数据数组的键variants => variant

此外,请注意所指页面顶部的警告。您应该使用Inventory APIs来管理商品库存,而不是直接设置inventory_quantity