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

使用Shopify API批量更新商品标签遇400错误:参数缺失或无效

解决Shopify API批量更新商品标签的400错误问题

核心问题原因

Shopify商品更新API要求请求体必须将所有参数嵌套在**product**顶级键下,你当前的payload直接传入id和tags,不符合API格式要求,这是导致400错误的根本原因。

正确的请求体格式

无论简化还是完整payload,都需要包裹在product对象内,示例如下:

{
  "product": {
    "id": 123456789,
    "tags": "促销, 夏季新品"
  }
}

Python代码修改示例

以requests库为例,调整请求体结构:

import requests

# 替换为你的店铺信息和凭证
shop_domain = "your-shop-name.myshopify.com"
api_version = "2024-07"
access_token = "your-shopify-access-token"

# 待更新的商品ID和标签
product_id = 123456789
new_tags = "促销, 夏季新品"

# 构造符合要求的请求体
payload = {
    "product": {
        "id": product_id,
        "tags": new_tags
    }
}

headers = {
    "Content-Type": "application/json",
    "X-Shopify-Access-Token": access_token
}

# 发送PUT请求
api_url = f"https://{shop_domain}/admin/api/{api_version}/products/{product_id}.json"
response = requests.put(api_url, json=payload, headers=headers)

# 打印响应结果
print(response.status_code)
print(response.json())

额外检查项

  • 确认请求头包含Content-Type: application/json,确保payload以JSON格式发送
  • 检查你的Access Token拥有write_products权限(在Shopify后台的应用设置中可查看)
  • 批量更新时注意Shopify API的速率限制,避免短时间内发送过多请求导致限流

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.31 09:30:59