# Attach a List of Security Groups to a Server or NIC

{% hint style="info" %}
**Note:** Updating the list of Security Groups attached to an existing server specified by its ID. Security Groups should already exist as part of the datacenter.
{% endhint %}

{% hint style="info" %}
**Note:** Only contract administrators, owners, and users with permissions to the VDC concerned can create and manage NSGs via API.
{% endhint %}

{% hint style="info" %}
**Prerequisite:** You need an IONOS Cloud account with API credentials configured with the appropriate permissions.
{% endhint %}

To attach a list of NSGs to a server, you need to use the following [<mark style="color:blue;">Cloud API</mark>](https://api.ionos.com/docs/cloud/) `PUT` request providing the `datacenterId`,`serverId` and the IDs of the security groups in the body:

`PUT /datacenters/{datacenterId}/servers/{serverId}/securitygroups`

Similarly for a NIC, provide the `datacenterId`, `nicId` and the IDs of the security groups in the body:

`PUT /datacenters/{datacenterId}/servers/{serverId}/nic/{nicId}/securitygroups`

### Request

```bash
curl --location --request PUT 'https://api.ionos.com/cloudapi/v6/datacenters/5a88aa8b-8aa1-51f6-XXd1-XXXXXe9f31/servers/bxxxx-axXX-0008-8888-99k0444e5555/securitygroups' \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic YYXabCDeFmLMO0c2hyYUBpb25vcy5jb206I1Bha2lzdGFuXzE=' \
--data '{
  "ids": [
    "ac51b8e4-050c-4941-b7cd-43923422fe6e",
    "ea737d87-8754-4a42-b97c-0b1a8f619de5"
  ]
}'
```

### Response

**200 Accepted**

```json
{
  "id": "15f67991-0f51-4efc-a8ad-ef1fb31a480c",
  "type": "collection",
  "href": "<RESOURCE-URI>",
  "items": [
    "string"
  ],
  "offset": 0,
  "limit": 1000,
  "_links": {
    "prev": "<PREVIOUS-PAGE-URI>",
    "self": "<THIS-PAGE-URI>",
    "next": "<NEXT-PAGE-URI>"
  }
}
```
