[TOC] ## 给用户开通套餐 ~~~[api] post:/v1/user-packages *integer:package#在售套餐ID name#自定义套餐名称,留空则使用在售套餐名称 *duration#购买的时长,可选值为month、quarter、year *end_at#自定义套餐过期时间,duration和end_at二选一,格式为2022-01-01 12:00:00 *uid#用户ID <<< 返回结果 { "code":0, "data": "1", "msg": "套餐添加成功" } <<< 提交内容 { "package": 384, "duration": "month", "name": "ff" } ~~~ ## 升降级用户套餐 ~~~[api] put:/v1/user-packages/<用户套餐ID> *integer:package#基础套餐ID <<< 返回结果 { "code":0, "data": "1", "msg": "套餐修改成功" } <<< 提交内容 { "package": 384 } ~~~ ## 编辑用户套餐 ~~~[api] put:/v1/user-packages/<用户套餐ID> integer:region_id#区域ID integer:node_group_id#线路组ID backup_node_group#备用线路组 cname_domain#cname主域名,留空时,使用dns设置的主域名 cname_hostname2#cname主机名 cname_mode#默认为site,可选site,package。当为site时,每个网站单独一个cname地址,当为package时,每一个用户套餐分配一个cname地址 integer:traffic=0#限制的流量数,单位为G,默认0,当为-1时,表示不限制 integer:connection#连接数限制,当为-1时,表示不限制 integer:domain=0#限制添加的域名数,默认为0,当为-1时,表示不限制 integer:http_port=0#网站监听的非标端口数量,即除80和443之外的端口数,默认为0,当为-1时,表示不限制 integer:stream_port=0#四层转发端口数,默认为0,当为-1时,表示不限制 boolean:custom_cc_rule#是否可以自定义cc规则,默认为False boolean:websocket#是否支持websocket,默认为False end_at#套餐过期时间,格式为2021-12-01 12:00:00 month_price#月付价格,单元为元 quarter_price#季付价格,单元为元 year_price#年付价格,单元为元 <<< 返回结果 { "code":0, "data": "1", "msg": "套餐修改成功" } <<< 提交内容 { "end_at": "2023-01-01 12:00:00" } ~~~ ## 给用户套餐增加升级包 ~~~[api] post:/v1/user-package/<用户套餐ID>/upgrades *package_up#升级包ID *amount#升级包数量 <<< 返回结果 { "code":0, "data": "", "msg": "升级包添加成功" } <<< 提交内容 { "package_up": 384, "amount": 1, } ~~~ ## 从用户套餐删除升级包 ~~~[api] delete:/v1/user-package/<用户套餐ID>/upgrades/<升级包ID> <<< 返回结果 { "code":0, "data": "", "msg": "升级包删除成功" } ~~~ ## 删除套餐 ~~~[api] delete:/v1/user-packages/<套餐ID,多个以逗号分隔> <<< 返回结果 { "code": 0, "data": "", "msg": "用户套餐删除成功" } ~~~