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

Magento产品全局特价的HTTP请求:端点及数据格式咨询

问题

我希望通过HTTP POST或PUT请求更新Magento中产品的全局特价。

产品特价

我在官方文档中看到了/V1/products/special-price端点,但它是针对单店铺而非全局的。

我应该发送请求到哪个端点,需要携带什么数据?

使用场景:

  • 创建全新产品时,初始设置特价
  • 为现有产品更新新的特价
  • 移除产品的特价
解决方案

针对全局特价的操作,你需要使用产品通用的REST端点,通过在请求体中指定special_price、special_from_date、special_to_date这些属性来实现,以下是分场景的具体操作:

1. 创建全新产品时设置全局特价

使用POST /V1/products端点,请求体中包含产品基础信息的同时,加入特价相关属性:

{
  "product": {
    "sku": "your-product-sku",
    "name": "产品名称",
    "price": 100.00,
    "special_price": 80.00,
    "special_from_date": "2024-01-01 00:00:00",
    "special_to_date": "2024-12-31 23:59:59",
    "attribute_set_id": 4, // 根据你的属性集ID调整
    "status": 1,
    "visibility": 4,
    "type_id": "simple",
    "weight": 1.0
  }
}

注:special_from_date和special_to_date可选,如果不设置则特价长期有效。

2. 更新现有产品的全局特价

使用PUT /V1/products/{sku}端点,仅传入需要更新的特价属性即可:

{
  "product": {
    "special_price": 75.00,
    "special_from_date": "2024-06-01 00:00:00",
    "special_to_date": "2024-06-30 23:59:59"
  }
}

路径参数{sku}替换为目标产品的SKU。

3. 移除产品的全局特价

同样使用PUT /V1/products/{sku}端点,将special_price设为null,同时清空日期属性:

{
  "product": {
    "special_price": null,
    "special_from_date": null,
    "special_to_date": null
  }
}

这样会彻底清除产品的全局特价设置,恢复原价展示。

注意事项

  • 全局特价会覆盖所有店铺视图的特价设置(除非店铺视图单独配置了专属特价)
  • 请求需要携带有效的Magento API授权令牌(在请求头中加入Authorization: Bearer <your-token>)
  • 确保传入的日期格式符合Magento要求(YYYY-MM-DD HH:MM:SS)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 19:30:37