更新时间:2023-07-17 GMT+08:00

更换云服务器计费模式

功能介绍

更换云服务器的计费模式。

接口约束

  • 仅支持更换按需计费模式为包年/包月计费模式。
  • 最大支持批量更换10个弹性云服务器计费模式。
  • 更换计费模式的云服务器绑定的弹性公网IP类型必须是“独享”,“按带宽计费”。
  • 挂载了共享云硬盘、DSS硬盘以及DESS硬盘的服务器不支持更改计费模式。
  • 若想使用优惠券,请将prepaid_options中的字段auto_pay设置为false,参考“支付包年/包月产品订单”进行支付,或者在华为云控制台使用优惠券进行支付。
  • 不支持专属主机、专属云以及边缘云下的云服务器更换计费模式。
  • 不支持竞价实例更换计费模式。

URI

POST /v1/{project_id}/cloudservers/actions/change-charge-mode

参数说明请参见表1
表1 参数说明

参数

是否必选

描述

project_id

项目ID。

获取方法请参见获取项目ID

请求消息

表2 请求参数

参数

是否必选

参数类型

描述

server_ids

Array of String

按需转包年/包月的云服务器ID列表。

charge_mode

String

更换后的计费模式。

prePaid: 将当前虚拟机计费方式改为包年/包月计费

prepaid_options

Object

包年/包月选项,当charge_mode为prePaid时必选。

详情请参见表3

dry_run

Boolean

是否只预检此次请求。

  • true:发送检查请求,不更改计费模式。检查项包括是否填写了必需参数、请求格式等。
    • 如果检查不通过,则返回对应错误。
    • 如果检查通过,则返回202状态码。
  • false:发送正常请求,通过检查后并且执行更改云服务器计费模式操作。

默认值:false

表3 prepaid_options数据结构说明

参数

是否必选

参数类型

描述

include_data_disks

Boolean

是否连同所有的按需计费的数据盘一起转为包年/包月。

当参数为true时,包括按需非共享云硬盘。

挂载了共享云硬盘、DSS硬盘以及DESS硬盘的的服务器不支持更改计费模式。

默认值:false

include_publicips

Boolean

是否连同“独享”、“按带宽计费”的弹性公网IP一起转包年/包月。

转包年/包月计费模式后,弹性公网IP转包年/包月之后可以单独解绑,删除等,与云服务器不是一个整体。

默认值:false

period_type

String

订购周期类型。

取值范围:

  • month:月
  • year:年

period_num

String

订购周期的周期数。

取值范围:

  • period_type=month时,取值为[1,9]。
  • period_type=year,取值为[1,3]。

auto_pay

Boolean

是否自动支付。

取值范围:

  • true: 自动支付,需要确保账户余额充足,如果余额不足则会生成异常订单,只能作废此订单。
  • false: 只生成订单不扣费。

默认值:false

auto_renew

Boolean

是否自动续费。

取值范围:

  • true: 自动续费
  • false: 不开启自动续费

默认值:false

响应消息

表4 参数说明

参数

参数类型

描述

order_id

String

转包年/包月的订单ID。

请求示例

更换云服务器及其绑定的“独享”、“按带宽计费”的弹性公网IP的计费模式为包年/包月,订购周期1个月。

POST https://{endpoint}/v1/{project_id}/cloudservers/actions/change-charge-mode

{
    "server_ids": [
        "f631ee2c-1caf-4c4f-9cee-f3181b8e44ad"
    ],
    "charge_mode": "prePaid",
    "prepaid_options": {
        "include_publicips": true,
        "include_data_disks": false,
        "period_type": "month",
        "period_num": "1",
        "auto_pay": false,
        "auto_renew": false
    },
    "dry_run": false
}

响应示例

{
    order_id: "CS2102041657OL0EY"
}

返回值

请参考通用请求返回值

错误码

请参考错误码