# ModifyNetworkInterfaceAttribute

## 1. API Description

This API (ModifyNetworkInterfaceAttribute) is used to modify the attributes of the vNIC.

{% hint style="info" %} <mark style="color:blue;">**Note**</mark>

<mark style="color:blue;">If the vNIC is already bound to the specified security group, the request will succeed without an error.</mark>
{% endhint %}

## 2. Input Parameters

The following request parameter list only provides API request parameters.

| Parameter Name  | Required | Type   | Description                                                                                                                                                                                                   |
| --------------- | -------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| nicId           | Yes      | String | ID of the vNIC.                                                                                                                                                                                               |
| name            | No       | String | <p>vNIC name.</p><p>The length is 2 to 63 characters. Only letters, numbers, -/\_ and periods (.) are supported. The name must start and end with a number or a letter.</p>                                   |
| securityGroupId | No       | String | <p>Target security group ID bound to the vNIC.</p><p>Currently, a vNIC can be associated with only one security group.</p><p>Specifying this field will unbind the original security group from the vNIC.</p> |

## 3. Output Parameters

| Parameter Name | Type   | Description                                                                                                           |
| -------------- | ------ | --------------------------------------------------------------------------------------------------------------------- |
| requestId      | String | <p>The unique request ID, which is returned for each request.</p><p>RequestId is required for locating a problem.</p> |

## 4. Code Example

{% tabs %}
{% tab title="Example" %}
**Modify the vNIC name and associated security group.**

```json
POST /api/v2/zec HTTP/1.1
Host: console.zenlayer.com
Content-Type: application/json
X-ZC-Action: ModifyNetworkInterfaceAttribute
<Common Request Params>

Request：
{
  "nicId": "<nicId>",
  "name": "Test-vNIC",
  "securityGroupId": "<securityGroupId>"
}

Response：
{
  "requestId": "T05992D0C-7E8B-4047-B0C0-780F2CD549D3",
  "response": {
    "requestId": "T05992D0C-7E8B-4047-B0C0-780F2CD549D3"
  }
}
```

{% endtab %}
{% endtabs %}

## 5. Developer Resources

Zenlayer Cloud API 2.0 integrates [SDKs](/api-reference/api-introduction/toolkit/api-sdk.md)，to make it easier for you to call APIs. More programming languages will be supported.

## 6. Error Codes

The following only lists the error codes related to the API business logic. For other error codes, see [Common Error Codes](/api-reference/api-introduction/instruction/commonerrorcode.md).

| HTTP Status Code | Error Code                           | Description                                       |
| ---------------- | ------------------------------------ | ------------------------------------------------- |
| 404              | INVALID\_NIC\_NOT\_FOUND             | vNIC does not exist.                              |
| 404              | INVALID\_SECURITY\_GROUP\_NOT\_FOUND | The specified security group does not exist.      |
| 400              | INVALID\_NIC\_STATUS                 | Current vNIC state does not allow this operation. |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.console.zenlayer.com/api-reference/compute/zec/vnic/modifynetworkinterfaceattribute.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
