更新折扣码活动规则
PUT https://{handle}.myshopline.com/admin/openapi/v20260301/sales/price_rules/:price_rule_id.json
handle :店铺的唯一标识符,值为店铺域名的前缀。例如,域名为 open001.myshopline.com 的店铺,其 handle 是 open001 。更新折扣码的活动规则信息。支持更新的活动类型包括:固定金额、百分比、买 X 送 Y、免运费。
路径参数
- price_rule_id string required折扣码活动规则的唯一标识符 ID。
请求头
- Content-Type string required字段值固定为
application/json; charset=utf-8。 - Authorization string required资源的访问令牌。参考 应用授权 获取访问令牌,然后将获取到的访问令牌以 Bearer 格式传入。例子:
Bearer eyJhbGciOiJIUzUxMiJ9.eyJhcHBLZXkiOiJmMjM3OWQyMTYyOGMzM2QxMWRiMWZkYjY5N2EzZjdjMjZlNGMwYTA5Iiwic2VsbGVySWQiOiIyMDAwMjM0ODgwIiwic3RvcmVJZCI6IjE2NzIzNjk3Mjk2MDYiLCJ2ZXJzaW9uIjoiVjIiLCJkb21haW4iOiJodHRwczovL3NsLW9wZW4tc2cubXlzaG9wbGluZS5jb20iLCJ0aW1lc3RhbXAiOjE2NzUzMTk0OTI0MzksImlzcyI6Inlzb3VsIiwiZXhwIjoxNzY5OTI3NDkyfQ.UwQzomM2veGCUaOZ0paUxq5dpc7DXuhHYFvsQ_uIAKduzWcb_j2E4q_36El83sp145D4cKbpcE5KCeeIz-JNQw
请求体
price_ruleobject
折扣码活动规则的信息。allocation_limit integer每个订单的最大使用次数。仅适用于买 X 送 Y 活动。 例子:有一个买 1 顶帽子送 1 顶帽子的活动,若allocation_limit为3,当购物车内有超过 6 顶帽子时,该活动仅可被应用 3 次;不传表示不限制使用次数。
取值范围:0-99,999,999allocation_method string折扣活动规则的分配方法。有效枚举值包含:each:折扣金额应用于每个参与活动的商品。例如,活动规则为优惠 20 美元,则结账时每个适用的商品都将各自优惠 20 美元。across:折扣金额在所有参与活动的商品之间分摊。例如,活动规则为优惠 20 美元,折扣将分摊至每个适用的商品上,使得优惠总额等于 20 美元。
当target_type为shipping_line时,allocation_method必须为each。entitled_collection_ids array折扣码活动规则适用的指定商品分类 ID 列表。活动为买 X 送 Y 时,表示 Y 商品的适用分类 ID 列表。 当target_selection为entitled时,entitled_product_ids、entitled_collection_ids、entitled_variant_ids必须有且仅有一个字段有值。当target_selection为all时,则entitled_product_ids、entitled_collection_ids、entitled_variant_ids必须都不传值,表示活动适用于所有商品。
最大个数限制:500entitled_country_ids array折扣码活动规则适用的国家或地区 ID 列表。仅适用于免运费活动。不传表示不限制适用国家或地区。
最大个数限制:500entitled_product_ids array折扣码活动规则适用的商品 ID 列表。活动为买 X 送 Y 时,表示 Y 商品的适用商品 ID 列表。 当target_selection为entitled时,则entitled_product_ids、entitled_collection_ids、entitled_variant_ids必须有且仅有一个字段有值。当target_selection为all时,entitled_product_ids、entitled_collection_ids、entitled_variant_ids必须都不传值,表示活动适用于所有商品。
最大个数限制:500entitled_variant_idsobject[]
折扣码活动规则适用的商品款式 ID 列表。活动为买 X 送 Y 时,表示 Y 商品的适用商品款式 ID 列表。
当target_selection为entitled时,则entitled_product_ids、entitled_collection_ids、entitled_variant_ids必须有且仅有一个字段有值。 当target_selection为all时,则entitled_product_ids、entitled_collection_ids、entitled_variant_ids必须都不传值,表示活动适用于所有商品。
最大个数限制:500product_id string商品 ID。variant_id string商品款式 ID。id string折扣码活动规则的唯一标识符 ID。joint_discount boolean该活动规则是否叠加所有自动折扣活动。true:叠加所有自动折扣活动false:不叠加自动折扣活动
默认值:falsejoint_discount_order boolean该活动规则是否叠加订单维度的自动折扣。true:叠加订单维度的自动折扣false:不叠加订单维度的自动折扣
默认值:取joint_discount设置的值joint_discount_product boolean该活动规则是否叠加商品维度的自动折扣。true:叠加商品维度的自动折扣false:不叠加商品维度的自动折扣
默认值:取joint_discount设置的值joint_discount_shipping boolean该活动规则是否叠加运费自动折扣。true:叠加运费自动折扣false:不叠加运费自动折扣
默认值:取joint_discount设置的值overlay_discount_code boolean该活动规则是否叠加所有折扣码活动。true:叠加所有折扣码活动false:不叠加折扣码活动
默认值:falseoverlay_discount_code_order boolean该活动规则是否叠加订单维度的折扣码活动。true:叠加订单维度的折扣码活动false:不叠加订单维度的折扣码活动
默认值:取overlay_discount_code设置的值overlay_discount_code_product boolean该活动规则是否叠加商品维度的折扣码活动。true:叠加商品维度的折扣码活动false:不叠加商品维度的折扣码活动
默认值:取overlay_discount_code设置的值overlay_discount_code_shipping boolean该活动规则是否叠加免运费折扣码活动。true:叠加免运费的折扣码活动false:不叠加免运费的折扣码活动
默认值:取overlay_discount_code设置的值prerequisite_collection_ids array若该活动规则为买 X 送 Y,表示 X 商品的分类 ID 列表。prerequisite_collection_ids、prerequisite_product_ids、prerequisite_variant_ids必须有且仅有一个字段有值。
最大个数限制:500prerequisite_customer_ids array该活动规则适用客户的 ID 列表。与prerequisite_saved_search_ids不能同时使用。 如果prerequisite_saved_search_ids和prerequisite_customer_ids均未传值,则该活动规则适用于所有客户。
最大个数限制:500prerequisite_product_ids array若该活动规则为买 X 送 Y,表示 X 商品的商品 ID 列表。prerequisite_collection_ids、prerequisite_product_ids、prerequisite_variant_ids必须有且仅有一个字段有值。
最大个数限制:500prerequisite_quantity_rangeobject
该活动规则应用的商品数量门槛。与prerequisite_subtotal_range必须有且仅有一个字段有值。greater_than_or_equal_to integer商品数量门槛。不传表示活动没有商品数量门槛。
取值范围:1-999prerequisite_saved_search_ids array该活动规则适用客户分组的 ID 列表。和prerequisite_customer_ids不能同时使用。 如果prerequisite_saved_search_ids和prerequisite_customer_ids均未传值,则该活动规则适用于所有客户。
最大个数限制:500prerequisite_shipping_price_rangeobject
若该活动规则为免运费,表示免运费金额的上限。运费金额超过该上限时,不可应用免运费活动。仅当target_type为shipping_line时支持。less_than_or_equal_to string可应用免运费的最高运费金额。精度与店铺币种保持一致,多出的位数将被截尾。不传表示活动没有免运费金额的上限。
取值范围:1-99,999,999,999prerequisite_subtotal_rangeobject
该活动规则应用的商品金额门槛。与prerequisite_quantity_range必须有且仅有一个字段有值。greater_than_or_equal_to string商品金额门槛。精度与店铺币种保持一致,多出的位数将被截尾。不传表示没有商品金额门槛。
取值范围:1-99,999,999,999prerequisite_to_entitlement_purchaseobject
若该活动规则为买 X 送 Y,表示活动应用所至少要购买的 X 商品的金额。与prerequisite_to_entitlement_quantity_ratio中的prerequisite_quantity必须有且仅有一个字段有值。prerequisite_amount stringX 商品的金额门槛,不传表示无金额限制。精度与店铺币种保持一致,多出的位数将被截尾。
取值范围:1-99,999,999,999prerequisite_to_entitlement_quantity_ratioobject
买 X 送 Y 折扣的买送比例。prerequisite_quantity定义所需购买的 X 商品数量,entitled_quantity定义赠送的 Y 商品数量。entitled_quantity integer满足门槛时可获得 Y 商品的数量。
取值范围:1-999prerequisite_quantity integerX 商品的数量门槛。与prerequisite_to_entitlement_purchase中的prerequisite_amount必须有且仅有一个字段有值。
取值范围:1-999prerequisite_variant_idsobject[]
若该活动规则为买 X 送 Y,表示 X 商品的商品款式 ID 列表。prerequisite_collection_ids、prerequisite_product_ids、prerequisite_variant_ids必须有且只有一个字段有值。
最大个数限制:500product_id string商品 ID。variant_id string商品款式 ID。recurring_cycle_limit integer可应用折扣的订阅期数。此字段仅适用于以下类型的优惠活动:订单折扣码、商品折扣码、免运费折扣码。仅支持填写-1或正整数。
例如:若设置为3,则折扣将应用于订 阅的前三个周期;若设置为1,则仅应用于订阅的第一期;若设置为-1,则表示折扣将应用于该订阅的所有后续定期付款。例子:-1target_selection string活动规则的指定生效范围。有效枚举值包含:all: 所有商品均可参与entitled: 仅指定商品参与
如果target_selection为entitled,则entitled_product_ids、entitled_collection_ids、entitled_variant_ids必须有且仅有一个字段有值。当target_type为shipping_line时,target_selection必须为all。例子:alltarget_type string活动规则适用的目标类型。有效枚举值包含:line_item:商品项shipping_line:运费项
更新免运费的折扣码活动,请传入shipping_line,其他类型的折扣码活动请传入line_item。title string required活动规则的名称,用于展示给客户。
最大长度限制:100例子:20$ OFF for new customersusage_limit integer该活动规则的折扣码总共可使用的最大次数。不传表示不限制。
取值范围:1-99,999,999usage_per_customer integer对于该活动规则的每个折扣码,每位客户可使用的最大次数。不传表示不限制。
取值范围:1-99,999,999value string required该活动规则的优惠值。- 如果
value_type是percentage,value表示百分比的数值。必须为正数,取值范围为 0-100。 - 如果
value_type是fixed_amount,value表示优惠的金额数值。必须为负数,取值范围为 -99,999,999,999-0。精度与店铺币种保持一致,多出的位数将被截尾。
例子:优惠 10%,则value传入10;优惠金额为 20,则value传入-20。例子:-20value_type string required该活动规则的优惠类型。有效枚举值包含:percentage:百分比fixed_amount:固定金额
当target_type为shipping_line或 活动为买 X 送 Y 活动,value_type必须为percentage。例子:fixed_amount
状态码
- 200
- 401
- 429
更多状态码信息,参考 HTTP 状态码。
响应头
traceId
请求的全局唯一标识符。用于追踪请求在系统中的流转,以便于问题发生时进行定位和调试。
响应体
price_ruleobject
折扣码活动规则的信息。allocation_limit integer每个订单的最大使用次数。仅适用于买 X 送 Y 活动。 例子:有一个买 1 顶帽子送 1 顶帽子的活动,若allocation_limit为3,当购物车内有超过 6 顶帽子时,该活动仅可被应用 3 次;若为null,活动每笔订单不限制使用次数。allocation_method string折扣活动规则的分配方法。有效枚举值包含:each:折扣金额应用于每个参与活动的商品。例如,活动规则为优惠 20 美元,则结账时每个适用的商品都将各自优惠 20 美元。across:折扣金额在所有参与活动的商品之间分摊。例如,活动规则为优惠 20 美元,折扣将分摊至每个适用的商品上,使得优惠总额等于 20 美元。
entitled_collection_ids array折扣码活动规则适用的指定商品分类 ID 列表。活动为买 X 送 Y 时,表示 Y 商品的适用分类 ID 列表。
最大个数限制:500entitled_country_ids array折扣码活动规则适用的国家或地区 ID 列表。
最大个数限制:500entitled_product_ids array折扣码活动规则适用的指定商品 ID 列表。活动为买 X 送 Y 时,表示 Y 商品的适用商品 ID 列表。
最大个数限制:500entitled_variant_idsobject[]
折扣码活动规则适用的商品款式 ID 列表。活动为买 X 送 Y 时,表示 Y 商品的适用商品款式 ID 列表。
最大个数限制:500product_id string商品 ID。variant_id string商品款式 ID。id string折扣码活动规则的唯一标识符 ID。joint_discount boolean该活动规则是否叠加所有自动折扣。true:叠加所有自动折扣false:不叠加自动折扣
joint_discount_order boolean该活动规则是否叠加订单维度的自动折扣。true:叠加订单维度的自动折扣false:不叠加订单维度的自动折扣
joint_discount_product boolean该活动规则是否叠加商品维度的自动折扣。true:叠加商品维度的自动折扣false:不叠加商品维度的自动折扣
joint_discount_shipping boolean该活动规则是否叠加免运费自动折扣。true:叠加免运费自动折扣false:不叠加免运费自动折扣
overlay_discount_code boolean该活动规则是否叠加所有折扣码。true:叠加所有折扣码false:不叠加折扣码
overlay_discount_code_order boolean该活动规则是否叠加订单维度的折扣码活动。true:叠加订单维度的折扣码活动false:不叠加订单维度的折扣码活动
overlay_discount_code_product boolean该活动规则是否叠加商品维度的折扣码活动。true:叠加商品维度的折扣码活动false:不叠加商品维度的折扣码活动
overlay_discount_code_shipping boolean该活动规则是否叠加运费折扣码。true:叠加运费折扣码false:不叠加运费折扣码
prerequisite_collection_ids array若该活动规则为买 X 送 Y,表示 X 商品的分类 ID 列表。
最大个数限制:500prerequisite_customer_ids array该活动规则适用客户的 ID 列表。
最大个数限制:500prerequisite_product_ids array若该活动规则为买 X 送 Y,表示 X 商品的商品 ID 列表。
最大个数限制:500prerequisite_quantity_rangeobject
该活动规则应用的商品数量门槛。greater_than_or_equal_to integer商品数量门槛。prerequisite_saved_search_ids array该活动规则适用客户分组的 ID 列表。
最大个数限制:500prerequisite_shipping_price_rangeobject
若该活动规则为免运费,表示免运费金额的上限。运费金额超过该上限时,不可应用免运费活动。less_than_or_equal_to string可应用免运费的最高运费金额。prerequisite_subtotal_rangeobject
该活动规则应用的商品金额门槛。greater_than_or_equal_to string商品金额门槛。prerequisite_to_entitlement_purchaseobject
若该活动规则为买 X 送 Y,表示活动应用所至少要购买的 X 商品的金额。prerequisite_amount stringX 商品的金额门槛。prerequisite_to_entitlement_quantity_ratioobject
若该活动规则为买 X 送 Y,表示活动应用所需要购买的 X 商品的数量门槛及可获得 Y 商品的数量。entitled_quantity integer满足门槛时可获得 Y 商品的数量。prerequisite_quantity integerX 商品的数量门槛。prerequisite_variant_idsobject[]
若该活动规则为买 X 送 Y,表示 X 商品的商品款式 ID 列表。
最大个数限制:500product_id string商品 ID。variant_id string商品款式 ID。recurring_cycle_limit integer可应用折扣的订阅期数。此字段仅适用于以下类型的优惠活动:订单折扣码、商品折扣码、免运费折扣码。 例如:若为3,则折扣将应用于订阅的前三个周期;若为1,则仅应用于订阅的首笔订单;若为-1,则表示折扣将应用于该订阅的所有后续定期付款。例子:-1sales_channels array例子:["web"]starts_at string活动规则开始的日期和时间。
格式:ISO 8601。target_selection string活动规则的指定生效范围。有效枚举值包含:all: 所有商品均可参与entitled: 仅指定商品参与
target_type string活动规则适用的目标类型。有效枚举值包含:line_item:商品项shipping_line:运费项
target_user_feature_valuesobject[]
活动规则适用的客户,包括活动可以适用的客户范围类型及其列表。target_value string可参与活动的客户。value=all时,target_value为null。value=Specific Customer Groups时,target_value返回客户分组 ID。value=Specific Customer时,target_value返回客户 ID。value=prerequisite时,target_value返回会员等级 ID。
value string活动规则适用的客户范围。all:所有客户Specific Customer Groups:指定客户分组Specific Customers:指定客户prerequisite:指定会员等级
title string活动规则的名称,用于展示给用户。usage_limit integer该活动规则的折扣码总共可使用的最大次数。为null时该活动总共可使用次数无上限。usage_per_customer integer对于该活动规则的每个折扣码,每位客户可使用的最大次数。为null表示不限制。value string该活动规则的优惠值。 如果value_type是percentage,value表示百分比的数值; 如果value_type是fixed_amount,value表示优惠的金额数值。value_type string该活动规则的优惠类型。有效枚举值包含:percentage:百分比优惠,指客户可以享受百分 比折扣。fixed_amount:固定金额优惠,指客户可以享受满减折扣。
API Explorer
调试台
示例代码
这篇文章对你有帮助吗?