> ## Documentation Index > Fetch the complete documentation index at: https://developer.rocket.chat/llms.txt > Use this file to discover all available pages before exploring further. # List ABAC Attribute Keys >
Defense
Lists the attribute keys in the active attribute store, sorted alphabetically. Use the returned keys as the values of the **Attributes required in all ABAC rooms** setting (`ABAC_Required_Attributes`), which applies while **Enforce ABAC across all workspace rooms** is on. Each item has a `key` and a `label`. Both hold the attribute key. Permission required: `manage-abac-admin-settings` ### Changelog | Version | Description | | ------- | ----------- | | 9.0.0 | Added | ## OpenAPI ````json GET /api/v1/abac/attributes.listKeys { "openapi": "3.0.0", "info": { "version": "1.0.0", "title": "Rooms" }, "servers": [ { "url": "https://apiexplorer.support.rocket.chat" } ], "tags": [ { "name": "Channels" }, { "name": "Directory" }, { "name": "Groups" }, { "name": "Rooms" }, { "name": "Teams" }, { "name": "Room Invites" }, { "name": "Subscriptions" }, { "name": "ABAC" } ], "paths": { "/api/v1/abac/attributes.listKeys": { "get": { "tags": [ "ABAC" ], "summary": "List ABAC Attribute Keys", "description": "
\"Defense\"
\n\nLists the attribute keys in the active attribute store, sorted alphabetically. Use the returned keys as the values of the **Attributes required in all ABAC rooms** setting (`ABAC_Required_Attributes`), which applies while **Enforce ABAC across all workspace rooms** is on.\n\nEach item has a `key` and a `label`. Both hold the attribute key.\n\nPermission required: `manage-abac-admin-settings`\n\n### Changelog\n| Version | Description |\n| ------- | ----------- |\n| 9.0.0 | Added |", "operationId": "get-api-v1-abac-attributes.listKeys", "parameters": [ { "$ref": "#/components/parameters/Auth-Token" }, { "$ref": "#/components/parameters/UserId" } ], "responses": { "200": { "description": "OK", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "type": "object", "properties": { "key": { "type": "string" }, "label": { "type": "string" } } } }, "success": { "type": "boolean" } } }, "examples": { "Success Example": { "value": { "data": [ { "key": "clearance", "label": "clearance" }, { "key": "department", "label": "department" } ], "success": true } } } } } }, "401": { "$ref": "#/components/responses/authorizationError" }, "403": { "description": "Forbidden", "content": { "application/json": { "schema": { "type": "object", "properties": { "success": { "type": "boolean" }, "error": { "type": "string" } } }, "examples": { "Permission Error": { "value": { "success": false, "error": "User does not have the permissions required for this action [error-unauthorized]" } } } } } } } } } }, "components": { "parameters": { "Auth-Token": { "name": "X-Auth-Token", "in": "header", "description": "The `authToken` of the authenticated user.", "required": true, "schema": { "type": "string" }, "example": "RScctEHSmLGZGywfIhWyRpyofhKOiMoUIpimhvheU3f" }, "UserId": { "name": "X-User-Id", "in": "header", "description": "The `userId` of the authenticated user.", "required": true, "schema": { "type": "string" }, "example": "rbAXPnMktTFbNpwtJ" } }, "responses": { "authorizationError": { "description": "Unauthorized", "content": { "application/json": { "schema": { "type": "object", "properties": { "success": { "type": "boolean" }, "error": { "type": "string" } } }, "examples": { "Authorization Error": { "value": { "success": false, "error": "You must be logged in to do this." } } } } } } } } } ````