{
  "schema_version": 2,
  "id": "commands/acl-cat",
  "title": "ACL CAT",
  "url": "https://redis.io/docs/latest/commands/acl-cat/",
  "summary": "Lists the ACL categories, or the commands inside a category.",
  "since": "6.0.0",
  "tags": [
    "docs",
    "develop",
    "stack",
    "oss",
    "rs",
    "rc",
    "oss",
    "kubernetes",
    "clients"
  ],
  "last_updated": "2026-09-18T09:48:09+01:00",
  "page_type": "content",
  "content_hash": "acece495be8cdffe999b16aa2866ce4a2616c2a5d3e5a0aeaac3af982619f3eb",
  "sections": [
    {
      "id": "overview",
      "title": "Overview",
      "role": "overview",
      "text": "The command shows the available ACL categories if called without arguments.\nIf a category name is given, the command shows all the Redis commands in\nthe specified category.\n\nACL categories are very useful in order to create ACL rules that include or\nexclude a large set of commands at once, without specifying every single\ncommand. For instance, the following rule will let the user `karin` perform\neverything but the most dangerous operations that may affect the server\nstability:\n\n    ACL SETUSER karin on +@all -@dangerous\n\nWe first add all the commands to the set of commands that `karin` is able\nto execute, but then we remove all the dangerous commands.\n\nChecking for all the available categories is as simple as:\n\n[code example]\n\nThen we may want to know what commands are part of a given category:\n\n[code example]"
    },
    {
      "id": "optional-arguments",
      "title": "Optional arguments",
      "role": "parameters",
      "text": "<details open><summary><code>category</code></summary>\n\nList only the commands in the given ACL category. If omitted, all categories are listed.\n\n</details>"
    },
    {
      "id": "redis-software-and-redis-cloud-compatibility",
      "title": "Redis Software and Redis Cloud compatibility",
      "role": "content",
      "text": "| Redis<br />Software | Redis<br />Cloud | <span style=\"min-width: 9em; display: table-cell\">Notes</span> |\n|:----------------------|:-----------------|:------|\n| <span title=\"Supported\">&#x2705; Standard</span><br /><span title=\"Supported\"><nobr>&#x2705; Active-Active</nobr></span> | <span title=\"Supported\">&#x2705; Standard</span><br /><span title=\"Supported\"><nobr>&#x2705; Active-Active</nobr></span> | Not supported for [scripts](https://redis.io/docs/latest/develop/programmability). |"
    },
    {
      "id": "return-information",
      "title": "Return information",
      "role": "returns",
      "text": "**RESP2:**\n\nOne of the following:\n* [Array reply](../../develop/reference/protocol-spec#arrays): an array of [Bulk string reply](../../develop/reference/protocol-spec#bulk-strings) elements representing ACL categories or commands in a given category.\n* [Simple error reply](../../develop/reference/protocol-spec#simple-errors): the command returns an error if an invalid category name is given.\n\n**RESP3:**\n\nOne of the following:\n* [Array reply](../../develop/reference/protocol-spec#arrays): an array of [Bulk string reply](../../develop/reference/protocol-spec#bulk-strings) elements representing ACL categories or commands in a given category.\n* [Simple error reply](../../develop/reference/protocol-spec#simple-errors): the command returns an error if an invalid category name is given."
    }
  ],
  "examples": [
    {
      "id": "overview-ex0",
      "language": "plaintext",
      "code": "> ACL CAT\n 1) \"keyspace\"\n 2) \"read\"\n 3) \"write\"\n 4) \"set\"\n 5) \"sortedset\"\n 6) \"list\"\n 7) \"hash\"\n 8) \"string\"\n 9) \"bitmap\"\n10) \"hyperloglog\"\n11) \"geo\"\n12) \"stream\"\n13) \"pubsub\"\n14) \"admin\"\n15) \"fast\"\n16) \"slow\"\n17) \"blocking\"\n18) \"dangerous\"\n19) \"connection\"\n20) \"transaction\"\n21) \"scripting\"\n22) \"json\"\n23) \"search\"\n24) \"tdigest\"\n25) \"cms\"\n26) \"bloom\"\n27) \"cuckoo\"\n28) \"topk\"\n29) \"timeseries\"",
      "section_id": "overview"
    },
    {
      "id": "overview-ex1",
      "language": "plaintext",
      "code": "> ACL CAT dangerous\n 1) \"flushdb\"\n 2) \"acl\"\n 3) \"slowlog\"\n 4) \"debug\"\n 5) \"role\"\n 6) \"keys\"\n 7) \"pfselftest\"\n 8) \"client\"\n 9) \"bgrewriteaof\"\n10) \"replicaof\"\n11) \"monitor\"\n12) \"restore-asking\"\n13) \"latency\"\n14) \"replconf\"\n15) \"pfdebug\"\n16) \"bgsave\"\n17) \"sync\"\n18) \"config\"\n19) \"flushall\"\n20) \"cluster\"\n21) \"info\"\n22) \"lastsave\"\n23) \"slaveof\"\n24) \"swapdb\"\n25) \"module\"\n26) \"restore\"\n27) \"migrate\"\n28) \"save\"\n29) \"shutdown\"\n30) \"psync\"\n31) \"sort\"",
      "section_id": "overview"
    }
  ]
}
