# Create ACL

Creates a single ACL rule on a virtual cluster. If an identical ACL rule already exists, it will be deduplicated and only one copy will be stored.

Requires admin permissions.

## Request

{% code overflow="wrap" %}

```bash
curl https://api.warpstream.com/api/v1/virtual_clusters/acls/create \
-H 'warpstream-api-key: XXXXXXXXXX' \
-H 'Content-Type: application/json' \
-d '{
  "virtual_cluster_id": "vci_1d4930d7_8e6d_4ad9_b27a_654ed4aaa3ee",
  "acl": {
    "resource_type": "TOPIC",
    "resource_name": "orders",
    "pattern_type": "LITERAL",
    "principal": "User:alice",
    "host": "*",
    "operation": "READ",
    "permission_type": "ALLOW"
  }
}'
```

{% endcode %}

All fields in the `acl` object are required.

## Response

```json
{
  "acl": {
    "resource_type": "TOPIC",
    "resource_name": "orders",
    "pattern_type": "LITERAL",
    "principal": "User:alice",
    "host": "*",
    "operation": "READ",
    "permission_type": "ALLOW"
  }
}
```
