# Modifying the Specifications of an ECS

#### Function

ECS specifications can be modified, for example, upgrading the vCPUs and memory, to meet service requirements. This API is used to modify ECS specifications.

An ECS flavor cannot be changed to certain flavors. For details, see Querying the Target Flavors to Which an ECS Flavor Can Be Changed.

#### Constraints

- You can modify the ECS specifications only when the ECS is stopped.

#### URI

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

Table 1 describes the parameters in the URI.

Table 1 Parameter description
Parameter | Mandatory | Description
--- | --- | ---
project_id | Yes | Specifies the project ID.
server_id | Yes | Specifies the ECS ID.

#### Request

Table 2 describes the request parameters.

Table 2 Request parameters
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.

#### Response

See Responses (Task).

#### Example Request

    POST https://{endpoint}/v1/{project_id}/cloudservers/{server_id}/resize

    {
    "resize": {
            "flavorRef": "c3.15xlarge.2"
        }
    }

#### Example Response

None

#### Returned Values

See Returned Values for General Requests.

#### Error Codes

See Error Codes.

Parent topic: Status Management