Updated on 2023-05-29 GMT+08:00

Modifying the Specifications of an ECS

Function

This API is used to modify ECS specifications.

The V1.1 API supports all functions (see Modifying the Specifications of an ECS (Pay-per-Use)) provided by the V1 API. Additionally, the V1.1 API supports the modification of yearly/monthly ECSs.

Constraints

  • You can modify the ECS specifications only when the ECS is stopped.
  • Spot ECSs do not support specifications modification.

URI

POST /v1.1/{project_id}/cloudservers/{server_id}/resize

Table 1 Parameter description

Parameter

Mandatory

Description

project_id

Yes

Specifies the project ID.

For details about how to obtain the ID, see Obtaining a Project ID.

server_id

Yes

Specifies the ECS ID.

You can obtain the ECS ID from the console or by following the instructions provided in "Querying Details About an ECS".

Request

Table 2 Parameter description

Parameter

Mandatory

Type

Description

resize

Yes

Object

Specifies the operation to modify ECS specifications. For details, see Table 3.

dry_run

No

Boolean

Specifies whether to only check the request and not modify the ECS specifications.

true: The request is sent and the ECS specifications will not be modified. Check items include mandatory parameters and request format.

  • If the check fails, the system returns an error.
  • If the check is successful, the system returns status code 202.

false: The request is sent and the ECS specifications will be modified if the check is successful.

Table 3 resize field description

Parameter

Mandatory

Type

Description

flavorRef

Yes

String

Specifies the flavor ID of the ECS after the modification.

You can view Querying the Target ECS Flavors to Which a Flavor Can Be Changed to query the target flavors to which a specified ECS flavor can be changed.

NOTE:
  • Modifications between the same flavor are not supported.

dedicated_host_id

No

String

Specifies the DeH ID after the modification.

This parameter is mandatory only for ECSs deployed on DeHs.

extendparam

No

Object

Specifies the extended information about an ECS after the modification. For details, see Table 4.

Table 4 extendparam field description

Parameter

Mandatory

Type

Description

isAutoPay

No

String

Specifies whether the order is automatically or manually paid.

  • true: The order will be automatically paid.
  • false: The order must be manually paid.
NOTE:

This parameter is valid only for yearly/monthly ECSs. When this parameter is left blank, the order must be manually paid by default.

Response

Table 5 Parameter description

Parameter

Mandatory

Type

Description

job_id

No

String

Specifies the task ID. This parameter is returned when you modify the specifications of a pay-per-use ECS.

For details about task statuses, see Querying Task Execution Status.

order_id

No

String

Specifies the order ID. This parameter is returned when you modify the specifications of a yearly/monthly ECS.

Example Request

POST https://{endpoint}/v1.1/{project_id}/cloudservers/{server_id}/resize
{
    "resize": {
        "flavorRef": "s3.large.2",
        "dedicated_host_id": "459a2b9d-804a-4745-ab19-a113bb1b4ddc",
        "extendparam":{
             "isAutoPay": "true"
        },
       
    }
}

Example Response

{
    "job_id": "70a599e0-31e7-49b7-b260-868f441e862b"
}

Or

{
    "order_id": "CS1711152257C60TL",
    "job_id": "70a599e0-31e7-49b7-b260-868f441e862b"
}

Or

{
    "error": {
        "message": "XXXX", 
        "code": "XXX"
    }
}

Error Codes

See Error Codes.