Detach an elastic network interface (ENI) from an Elastic Compute Service (ECS) instance.
Description
When you call this operation, take note of the following items:
- Primary ENIs cannot be detached from ECS instances.
- The ENI must be in the Detaching (Detaching) or InUse (InUse) state.
- The instance must be in the Running (Running) or Stopped (Stopped) state.
- This operation is an asynchronous operation. After this operation is called to detach an ENI, you can check the state or events of the ENI to determine whether the ENI is detached. The following figure shows the transitions between the states of the ENI.

- If the ENI is in the Detaching state, the ENI detachment request is sent and the ENI is being detached from its associated instance.
- If the ENI is in the Available state, the ENI is detached from its associated instance.
- If the ENI is stuck in the Detaching state, the ENI may fail to be detached from the associated instance due to specific reasons. For example, the ENI may fail to be detached because the operating system did not respond to the ENI detachment request. If this occurs, you can re-initiate the request to detach the ENI. If the problem persists, restart the instance.
For information about examples on how to call this operation, see Detach an ENI.
Debugging
Request parameters
| Parameter | Type | Required | Example | Description |
|---|---|---|---|---|
| Action | String | Yes | DetachNetworkInterface | The operation that you want to perform. Set the value to DetachNetworkInterface. |
| RegionId | String | Yes | cn-hangzhou | The region ID of the ENI. You can call the DescribeRegions operation to query the most recent region list. |
| NetworkInterfaceId | String | Yes | eni-bp67acfmxazb4p**** | The ID of the ENI. |
| InstanceId | String | Yes | i-bp67acfmxazb4p**** | The ID of the instance |
| TrunkNetworkInstanceId | String | No | eni-f8zapqwj1v1j4ia3**** | The ID of the trunk ENI. Note This parameter is unavailable for use. |
Response parameters
| Parameter | Type | Example | Description |
|---|---|---|---|
| RequestId | String | 473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E | The ID of the request. |
Examples
Sample requests
https://ecs.aliyuncs.com/?Action=DetachNetworkInterface
&InstanceId=i-bp67acfmxazb4p****
&NetworkInterfaceId=eni-bp67acfmxazb4p****
&RegionId=cn-hangzhou
&<Common request parameters>Sample success response
XML format
HTTP/1.1 200 OK
Content-Type:application/xml
<DetachNetworkInterfaceResponse>
<RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>
</DetachNetworkInterfaceResponse>JSON format
HTTP/1.1 200 OK
Content-Type:application/json
{
"RequestId" : "473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E"
}Error codes
| HTTP status code | Error code | Error message | Description |
|---|---|---|---|
| 400 | MissingParameter | %s | The error message returned because a required parameter is not specified. |
| 400 | UnsupportedParameter | %s | The error message returned because a specified parameter is not supported. |
| 400 | InvalidParameter | %s | The error message returned because a specified parameter is invalid. |
| 400 | InvalidInstanceID.Malformed | %s | The error message returned because the specified InstanceId parameter is invalid. |
| 400 | InvalidOperation.InvalidRegion | %s | The error message returned because the specified RegionId parameter is invalid. |
| 400 | InvalidOperation.InvalidEcsState | %s | The error message returned because the operation is not supported while the instance is in the current state. |
| 400 | InvalidOperation.InvalidEniState | %s | The error message returned because the operation is not supported while the ENI is in the current state. |
| 400 | InvalidOperation.DetachPrimaryEniNotAllowed | %s | The error message returned because the primary ENI cannot be detached from the instance. |
| 400 | Forbidden.RegionId | %s | The error message returned because the service is unavailable in the current region. |
| 400 | InvalidParams.EniId | %s | The error message returned because the specified NetworkInterfaceId parameter is invalid. |
| 400 | InvalidParameter.EniNotBelongEcs | %s | The error message returned because the specified ENI is not attached to the specified ECS instance. For more information, see the return value of the %s placeholder in the error message. You can call the DescribeInstances operation to query the IDs of the ENIs attached to the specified ECS instance. |
| 403 | InvalidUserType.NotSupported | %s | The error message returned because your account does not support this operation. |
| 403 | Abs.InvalidAccount.NotFound | %s | The error message returned because your Alibaba Cloud account does not exist or because your AccessKey pair has expired. |
| 403 | Forbidden.NotSupportRAM | %s | The error message returned because Resource Access Management (RAM) users are not authorized to perform this operation. |
| 403 | Forbidden.SubUser | %s | The error message returned because you are not authorized to manage this resource. Contact the owner of the Alibaba Cloud account for authorization. |
| 403 | MaxEniCountExceeded | %s | The error message returned because the maximum number of ENIs that can be managed has been reached. |
| 403 | EniPerInstanceLimitExceeded | %s | The error message returned because the maximum number of ENIs that can be attached to the specified instance has been reached. |
| 403 | InvalidOperation.AvailabilityZoneMismatch | %s | The error message returned because the operation is invalid. |
| 403 | InvalidOperation.VpcMismatch | %s | The error message returned because the operation is invalid. Check whether the virtual private cloud (VPC) in the operation corresponds to other parameters. |
| 403 | SecurityGroupInstanceLimitExceed | %s | The error message returned because the maximum number of instances in the security group has been reached. |
| 403 | InvalidSecurityGroupId.NotVpc | %s | The error message returned because the specified security group ID is invalid and the network type of the security group is not VPC. |
| 403 | InvalidOperation.InvalidEniType | %s | The error message returned because the operation is not supported while the ENI is of the current type. |
| 403 | InvalidOperation.EniServiceManaged | %s | The error message returned because the operation is invalid. |
| 403 | InvalidOperation.EniLinked | %s | The error message returned because the operation is not supported while the ENI of the instance is associated with other ENIs. You must disassociate the ENI from the other ENIs before you can detach the ENI from the instance. |
| 403 | InvalidInstanceId.NotFound | %s | The error message returned because the specified InstanceId parameter does not exist. |
| 403 | InvalidOperation.HotPlugNotSupport | %s | The error message returned because the operation is not supported while the specified resource is running. For more information, see the return value of the %s placeholder in the error message. |
| 403 | InvalidOperation.InvalidTrunkEniStatus | %s | The error message returned because the operation is not supported while the specified ENI in trunk mode is in the current state. For more information, see the return value of the %s placeholder in the error message. |
| 403 | InvalidOperation.InstanceTypeNotSupportEniTrunking | %s | The error message returned because the operation is not supported. For more information, see the return value of the %s placeholder in the error message. |
| 403 | InvalidParameter.EniNotBelongTrunk | %s | The error message returned because the specified ENI is not in trunk mode. For more information, see the return value of the %s placeholder in the error message. |
| 403 | InvalidOperation.EniTypeNotSupportTrunking | %s | The error message returned because operations related to the trunk mode are not supported while the ENI is of the current type. For more information, see the return value of the %s placeholder in the error message. |
| 403 | InvalidOperation.HasMemberEniAttached | %s | The error message returned because other ENIs are attached to the ENI that works in trunk mode. For more information, see the return value of the %s placeholder in the error message. |
| 404 | InvalidEcsId.NotFound | %s | The error message returned because the specified instance ID does not exist. |
| 404 | InvalidEniId.NotFound | %s | The error message returned because the specified ENI ID does not exist. |
| 404 | InvalidVSwitchId.NotFound | %s | The error message returned because the specified vSwitch does not exist. |
| 404 | InvalidSecurityGroupId.NotFound | %s | The error message returned because the specified security group ID does not exist. |
For a list of error codes, see Service error codes.