You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Shopify 2022-07 REST API编辑商品选项名报错问题咨询

Shopify 2022-07 REST API 修改商品选项名称报错解决方案

核心结论

Shopify 2022-07版本REST API完全支持编辑商品选项名称,你遇到的报错是请求参数结构错误导致的,不是接口权限或功能限制问题。

报错原因

你当前代码的options字段传参不符合接口规则:

  • Shopify商品接口的product.options字段要求传入商品全量选项的索引数组,更新时必须带上该商品所有原有选项的完整信息,仅修改你需要调整的字段即可。
  • 你当前的写法只传入了单个目标选项对象,接口解析时会判定你要将商品的所有选项替换为仅传入的这1项,等同于触发删除其余所有原有选项的逻辑;当被判定待删除的选项下关联了超过1个变体值时,就会返回could not delete option because it has more than 1 value错误,和你遇到的报错完全一致。
  • 后台手动重命名能成功,是因为后台前端提交请求时自动拼接了全量选项参数,不会触发删除选项的判定逻辑。

修复方法

  1. 先调用GET /admin/api/2022-07/products/{product_id}.json接口拉取目标商品的完整信息,拿到当前所有选项的id、position、values全量数据
  2. 在拉取到的options数组中,找到你要修改的目标选项,仅修改它的name字段值
  3. 将修改后的完整options数组随PUT请求提交即可

修正后的PHP cURL代码示例

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, testurl.'products/4383793250431.json');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'PUT');

$product = array(
    "product" => array(
        "id" => 4383793250431, // 建议明确传入商品ID,避免路由解析异常
        "options" => array(
            // 注意:必须传入商品所有选项,按原有position顺序排列,不能只传要修改的单个选项
            array(
                "id" => 5688792809599,
                "name" => "Material1", // 仅修改此处的选项名称
                "position" => 1,
                // values必须和原有选项值完全一致,不要随意增删,否则会触发变体重建
                "values" => array("Cotton", "Polyester") 
            )
            // 如果商品存在第2、第3个选项,必须按原有顺序全部补全到该数组中,不得遗漏
        )
    )
);

curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($product));

$headers = array();
$headers[] = 'Content-Type: application/json';
$headers[] = 'X-Shopify-Access-Token: '.TEST_ADMIN_API_TOKEN;
curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

$result = curl_exec($ch);
if (curl_errno($ch)) {
    echo 'Error:' . curl_error($ch);
}
curl_close($ch);

注意事项

  • 禁止仅传入需要修改的单个选项到options字段,未传入的原有选项会被接口判定为需要删除
  • 多选项商品必须保持所有选项的position顺序和原有顺序一致,不要随意调整
  • 选项下的values字段必须和原有值保持一致,随意增删值会触发商品变体重建逻辑,可能导致原有变体关联关系丢失

内容的提问来源于stack exchange,提问作者freshITmeat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 18:27:34