Fecify-套餐-更新

接口信息

  • 接口地址: {your-site-url}/api/skill/addons/package-update
  • 基础 URL: {your-site-url} 需替换为你自己的独立站 URL 地址,如 https://your-domain.com/admin
  • 请求方式: POST
  • Content-Type: application/json
  • 说明: 更新套餐信息。参数结构与创建套餐一致,额外需要传入 id 指定要更新的套餐。

认证

请求头中需要携带 skill-access-token

Header
skill-access-token {your-skill-access-token} (请替换为你自己的 token)

请求参数

参数 类型 必填 说明
id Number 套餐 ID,从 Fecify-套餐-列表 获取
title String 套餐名称,JSON 字符串格式,如 {"cn":"旗舰套餐","en":"","tw":""}
shop_type Number 店铺类型:10 B2C,20 B2B
type Number 套餐类型:1 付费套餐,2 体验套餐
status Number 状态:1 开启,2 关闭
tag_status Number 营销标签:1 开启,2 关闭
style_type Number 展示样式:1 系统默认,2 自定义
is_forever Number 是否永久:1 永久,2 非永久
renew_is_forever Number 续费是否永久:1 永久,2 非永久
payment_type Number 支付方式:1 在线支付,2 联系客服
sub_title String 套餐副名称(多语言 JSON)
description String 套餐描述(多语言 JSON,可含 HTML)
weight Number 套餐权重,数字越大商家端展示越靠前。不传默认为 0
tag_content String 条件 标签文字(多语言 JSON)。tag_status=1 时必填
style_color String 条件 颜色值。style_type=2(自定义)时必填
experience_days Number 条件 体验天数。type=2(体验套餐)时必填且必须大于 0
product_max_count Number 店铺产品最大数,0 不限制
addons_info Array 套餐包含的插件 ID 列表,从 Fecify-已上架应用-列表 获取
theme_info Array 套餐包含的模版 ID 列表
language_codes Array 套餐支持的多语言简码列表,从 系统支持的语言列表 获取

type=1(付费套餐)时额外必填

参数 类型 必填 说明
price_info Array 售价详细,必须为非空数组
renew_status Number 套餐续费:1 开启,2 关闭
status_disable_renew Number 下架后续费:1 支持,2 不支持

renew_status=1(续费开启)时额外必填

参数 类型 必填 说明
renew_price_info Array 续费价格详细,必须为非空数组

price_info / renew_price_info 子项

参数 类型 必填 说明
id String 售价方案唯一 ID,不可为空
is_forever Number 是否永久:1 永久,2 非永久
days Number / String 条件 有效天数。is_forever=2 时必填且必须大于 0
day_label String 条件 天数标签,如 1月1年is_forever=2 时必填
price Number 售卖价格
compare_at_price Number 划线价格(原价)

请求示例

cURL

curl --location --request POST '{your-site-url}/api/skill/addons/package-update' \
--header 'skill-access-token: {your-skill-access-token}' \
--header 'Content-Type: application/json' \
--data-raw '{
    "id": 27,
    "shop_type": 10,
    "type": 1,
    "title": "{\"cn\":\"旗舰套餐\",\"en\":\"\",\"tw\":\"\"}",
    "sub_title": "{\"cn\":\"旗舰套餐活动\",\"en\":\"\",\"tw\":\"\"}",
    "description": "{\"cn\":\"<p>旗舰套餐描述部分</p>\",\"en\":\"\",\"tw\":\"\"}",
    "experience_days": 3,
    "status": 1,
    "weight": 32,
    "tag_status": 1,
    "tag_content": "{\"cn\":\"hot\",\"en\":\"\",\"tw\":\"\"}",
    "style_type": 1,
    "style_color": "linear-gradient(107.12deg, rgb(88, 165, 255) 0.9%, rgb(26, 102, 255) 99.34%)",
    "is_forever": 1,
    "price_info": [
        {
            "id": "UHMR0XsL-D",
            "is_forever": 1,
            "days": "",
            "day_label": "",
            "price": 99,
            "compare_at_price": 122
        }
    ],
    "renew_status": 1,
    "renew_is_forever": 2,
    "renew_price_info": [
        {
            "id": "3GFXBtf4BW",
            "is_forever": 1,
            "days": "",
            "day_label": "",
            "price": 999,
            "compare_at_price": 1222
        }
    ],
    "status_disable_renew": 1,
    "payment_type": 1,
    "addons_info": [13, 16, 15, 17, 31, 34],
    "theme_info": [159, 162],
    "language_codes": ["cn", "de", "es", "en", "fr", "it", "vi"]
}'

返回结果

code200 表示调用成功;code 不为 200 表示调用失败。

成功响应

{
    "code": 200,
    "data": {
        "id": 27,
        "title": "{\"cn\":\"旗舰套餐\",\"en\":\"\",\"tw\":\"\"}",
        "shop_type": 10,
        "type": 1,
        "updated_at": "2026-07-25 16:51:56"
    },
    "message": "success"
}

注意事项

  1. id 为必填参数,通过 Fecify-套餐-列表 获取。
  2. 更新前建议先通过 Fecify-套餐-详细 获取当前信息,在此基础上修改后再提交。
  3. titlesub_titledescriptiontag_content 等字段需要传递 JSON 字符串格式。
  4. type 决定付费相关字段是否需要填写:
    • type=1(付费套餐):price_inforenew_statusstatus_disable_renew 必填
    • type=2(体验套餐):experience_days 必填且必须 > 0
  5. is_forever=1 时,price_info 中至少需要有一项 is_forever=1(永久行);renew_is_forever=1 同理。
  6. renew_status=1 时,renew_price_info 必填且必须为非空数组。
  7. addons_info 中的 ID 从 Fecify-已上架应用-列表 获取。
  8. language_codes 中的语言简码从 系统支持的语言列表 获取。

results matching ""

    No results matching ""