You can call this operation to restart one or more ECS instances that are in the Running state. After this operation is called, the ECS instances enter the Stopping state and then the Running state.
Description
- The ECS instances to be restarted must be in the Running (
Running
) state. - Batch operations are supported. You can use the
BatchOptimization
parameter to specify the batch operation mode. - Instances can be forcibly restarted. A forced restart (
ForceStop
) is equivalent to powering off traditional servers to restart them. This operation can cause data loss if data in the instance is not written to Elastic Block Storage devices. - If the response contains
{"OperationLocks": {"LockReason" : "security"}}
when you query information of an instance, the instance is locked for security reasons and all operations are prohibited on the instance.
Debugging
Request parameters
Parameter | Type | Required | Example | Description |
---|---|---|---|---|
Action | String | Yes | RebootInstances |
The operation that you want to perform. Set the value to RebootInstances. |
InstanceId.N | RepeatList | Yes | i-bp67acfmxazb4p**** |
The ID of instance N that you want to restart. Valid values of N: 1 to 100. |
RegionId | String | Yes | cn-hangzhou |
The region ID of the instance. You can call the DescribeRegions operation to query the most recent region list. |
DryRun | Boolean | No | false |
Specifies whether to check the validity of the request without actually making the request. Valid values:
Default value: false. |
ForceReboot | Boolean | No | false |
Specifies whether to forcibly restart the instance. Valid values:
Default value: false. |
BatchOptimization | String | No | AllTogether |
The batch operation mode. Valid values:
Default value: AllTogether. |
Response parameters
Parameter | Type | Example | Description |
---|---|---|---|
InstanceResponses | Array of InstanceResponse |
Details about the instance responses, which contain the status of each instance before and after the operation is called and the result of the operation. |
|
InstanceResponse | |||
Code | String | 200 |
The error code of the operation result. The return value 200 indicates success. For more information, see the "Error codes" section in this topic. |
CurrentStatus | String | Stopping |
The current status of the instance. |
InstanceId | String | i-bp1g6zv0ce8oghu7**** |
The ID of the instance. |
Message | String | success |
The error message for an instance operation. The return value Success indicates operation success. For more information, see the "Error codes" section in this topic. |
PreviousStatus | String | Running |
The status of the instance before the operation is called. |
RequestId | String | 473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E |
The ID of the request. |
Examples
Sample requests
https://ecs.aliyuncs.com/?Action=RebootInstances
&InstanceId.1=i-bp1g6zv0ce8oghu7****
&InstanceId.2=i-bp1g6zv0ce8oghu7****
&InstanceId.3=i-TestID
&RegionId=cn-hangzhou
&ForceReboot=false
$BatchOptimization=SuccessFirst
&<Common request parameters>
Sample success responses
XML
format
<RebootInstancesResponse>
<RequestId>FF53E96D-3F1A-42F0-8373-1C2B39D72D44</RequestId>
<InstanceResponses>
<InstanceResponse>
<Message>success</Message>
<InstanceId>i-bp1g6zv0ce8oghu7****</InstanceId>
<PreviousStatus>Running</PreviousStatus>
<CurrentStatus>Stopping</CurrentStatus>
<Code>200</Code>
</InstanceResponse>
<InstanceResponse>
<Message>success</Message>
<InstanceId>i-bp1g6zv0ce8oghu7****</InstanceId>
<PreviousStatus>Running</PreviousStatus>
<CurrentStatus>Stopping</CurrentStatus>
<Code>200</Code>
</InstanceResponse>
<InstanceResponse>
<Message>The specified InstanceId does not exist. </Message>
<InstanceId>i-TestID</InstanceId>
<PreviousStatus></PreviousStatus>
<CurrentStatus></CurrentStatus>
<Code>InvalidInstanceId.NotFound</Code>
</InstanceResponse>
</InstanceResponses>
</RebootInstancesResponse>
JSON
format
{
"RequestId": "FF53E96D-3F1A-42F0-8373-1C2B39D72D44",
"InstanceResponses": {
"InstanceResponse": [
{
"Message": "success",
"InstanceId": "i-bp1g6zv0ce8oghu7****",
"PreviousStatus": "Running",
"CurrentStatus": "Stopping",
"Code": "200"
},
{
"Message": "success",
"InstanceId": "i-bp1g6zv0ce8oghu7****",
"PreviousStatus": "Running",
"CurrentStatus": "Stopping",
"Code": "200"
},
{
"Message": "The specified InstanceId does not exist.",
"InstanceId": "i-TestID",
"PreviousStatus": "",
"CurrentStatus": "",
"Code": "InvalidInstanceId.NotFound"
}
]
}
}
Error codes
HTTP status code | Error code | Error message | Description |
---|---|---|---|
404 | InvalidInstanceId.NotFound | %s | The error message returned because the specified instance ID does not exist. |
403 | IncorrectInstanceStatus | %s | The error message returned because the operation is not supported while the instance is in the current state. |
500 | InternalError | The request processing has failed due to some unknown error. | The error message returned because an internal error has occurred. Try again later. If the problem persists, submit a ticket. |
404 | InvalidInstanceId.NotFound | The specified InstanceId does not exist. | The error message returned because the specified instance ID does not exist. |
403 | InsufficientBalance | Your account does not have enough balance. | The error message returned because your account balance is insufficient. Add funds to your account and try again. |
403 | InstanceNotReady | The specified instance is not ready for use. | The error message returned because the operation is not supported while the resource is in the current state. Try again later. |
For a list of error codes, visit the API Error Center.