文档首页/ 弹性云服务器 ECS/ API参考/ API/ 状态管理/ 更换云服务器计费模式
更新时间:2025-07-23 GMT+08:00
分享

更换云服务器计费模式

功能介绍

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

接口约束

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

调试

您可以在API Explorer中调试该接口。

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

参数解释:

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

约束限制:

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

取值范围:

  • true:支持按需数据盘(包括非共享云硬盘)转包年/包月。
  • false:不支持按需数据盘转包年/包月。

默认取值:

false

include_publicips

Boolean

参数解释:

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

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

约束限制:

不涉及

取值范围:

  • true:连同弹性公网IP一起转包年/包月。
  • false:不连同弹性公网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"
}

返回值

请参考通用请求返回值

错误码

请参考错误码

相关文档