go-unifi
ReferenceOfficial APIOpenAPI SpecAccess control (acl rules)

List ACL Rules

Retrieve a paginated list of all ACL rules on a site. <details> <summary>Filterable properties (click to expand)</summary> |Name|Type|Allowed functions| |-|-|-| |`type`|`STRING`|`eq` `ne` `in` `notIn`| |`id`|`UUID`|`eq` `ne` `in` `notIn`| |`enabled`|`BOOLEAN`|`eq` `ne`| |`name`|`STRING`|`eq` `ne` `in` `notIn` `like`| |`description`|`STRING`|`isNull` `isNotNull` `eq` `ne` `in` `notIn` `like`| |`action`|`STRING`|`eq` `ne` `in` `notIn`| |`index`|`INTEGER`|`eq` `ne` `gt` `ge` `lt` `le` `in` `notIn`| |`protocolFilter`|`SET(STRING)`|`isNull` `isNotNull` `contains` `containsAny` `containsAll` `containsExactly`| |`networkId`|`UUID`|`isNull` `isNotNull` `eq` `ne` `in` `notIn`| |`enforcingDeviceFilter.deviceIds`|`SET(UUID)`|`isNull` `isNotNull` `contains` `containsAny` `containsAll` `containsExactly`| |`metadata.origin`|`STRING`|`eq` `ne` `in` `notIn`| |`sourceFilter.type`|`STRING`|`isNull` `isNotNull` `eq` `ne` `in` `notIn`| |`sourceFilter.ipAddressesOrSubnets`|`SET(STRING)`|`contains` `containsAny` `containsAll` `containsExactly`| |`sourceFilter.portFilter`|`SET(INTEGER)`|`isNull` `isNotNull` `contains` `containsAny` `containsAll` `containsExactly`| |`sourceFilter.networkIds`|`SET(UUID)`|`contains` `containsAny` `containsAll` `containsExactly`| |`sourceFilter.macAddresses`|`SET(STRING)`|`contains` `containsAny` `containsAll` `containsExactly`| |`sourceFilter.prefixLength`|`INTEGER`|`isNull` `isNotNull` `eq` `ne` `gt` `ge` `lt` `le` `in` `notIn`| |`destinationFilter.type`|`STRING`|`isNull` `isNotNull` `eq` `ne` `in` `notIn`| |`destinationFilter.ipAddressesOrSubnets`|`SET(STRING)`|`contains` `containsAny` `containsAll` `containsExactly`| |`destinationFilter.portFilter`|`SET(INTEGER)`|`isNull` `isNotNull` `contains` `containsAny` `containsAll` `containsExactly`| |`destinationFilter.networkIds`|`SET(UUID)`|`contains` `containsAny` `containsAll` `containsExactly`| |`destinationFilter.macAddresses`|`SET(STRING)`|`contains` `containsAny` `containsAll` `containsExactly`| |`destinationFilter.prefixLength`|`INTEGER`|`isNull` `isNotNull` `eq` `ne` `gt` `ge` `lt` `le` `in` `notIn`| </details>

GET
/v1/sites/{siteId}/acl-rules

Retrieve a paginated list of all ACL rules on a site.

NameTypeAllowed functions
typeSTRINGeq ne in notIn
idUUIDeq ne in notIn
enabledBOOLEANeq ne
nameSTRINGeq ne in notIn like
descriptionSTRINGisNull isNotNull eq ne in notIn like
actionSTRINGeq ne in notIn
indexINTEGEReq ne gt ge lt le in notIn
protocolFilterSET(STRING)isNull isNotNull contains containsAny containsAll containsExactly
networkIdUUIDisNull isNotNull eq ne in notIn
enforcingDeviceFilter.deviceIdsSET(UUID)isNull isNotNull contains containsAny containsAll containsExactly
metadata.originSTRINGeq ne in notIn
sourceFilter.typeSTRINGisNull isNotNull eq ne in notIn
sourceFilter.ipAddressesOrSubnetsSET(STRING)contains containsAny containsAll containsExactly
sourceFilter.portFilterSET(INTEGER)isNull isNotNull contains containsAny containsAll containsExactly
sourceFilter.networkIdsSET(UUID)contains containsAny containsAll containsExactly
sourceFilter.macAddressesSET(STRING)contains containsAny containsAll containsExactly
sourceFilter.prefixLengthINTEGERisNull isNotNull eq ne gt ge lt le in notIn
destinationFilter.typeSTRINGisNull isNotNull eq ne in notIn
destinationFilter.ipAddressesOrSubnetsSET(STRING)contains containsAny containsAll containsExactly
destinationFilter.portFilterSET(INTEGER)isNull isNotNull contains containsAny containsAll containsExactly
destinationFilter.networkIdsSET(UUID)contains containsAny containsAll containsExactly
destinationFilter.macAddressesSET(STRING)contains containsAny containsAll containsExactly
destinationFilter.prefixLengthINTEGERisNull isNotNull eq ne gt ge lt le in notIn
X-Api-Key<token>

UniFi API key. Create one under Control Plane → Admins & Users → your admin → Create API Key (requires controller 9.0.114+).

In: header

Path Parameters

siteId*string

Query Parameters

offset?integer
limit?integer
filter?string

Response Body

application/json

curl -X GET "https://example.com/v1/sites/497f6eca-6276-4993-bfeb-53cbbbba6f08/acl-rules"
{  "offset": 0,  "limit": 25,  "count": 10,  "totalCount": 1000,  "data": [    {      "type": "string",      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",      "enabled": true,      "name": "string",      "description": "string",      "action": "ALLOW|BLOCK",      "enforcingDeviceFilter": {        "type": "string"      },      "index": 0,      "sourceFilter": null,      "destinationFilter": null,      "metadata": {        "origin": "string"      }    }  ]}