---
title: "Update ABAC attribute definition"
slug: "update-abac-attribute-definition"
updated: 2026-06-01T06:32:04Z
published: 2026-06-01T06:32:04Z
---

> ## 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.

# Update ABAC attribute definition

Put/api/v1/abac/attributes/:_id![Defense](https://raw.githubusercontent.com/RocketChat/Rocket.Chat-Open-API/main/images/Defense.svg)

- Updates an existing ABAC attribute definition.
- Modifies the attribute identified by `_id`, allowing you to rename its key, change its list of allowed values, or both, subject to in-use and validation checks.
- Requires the ABAC license, the `abac-management` and `manage-abac-admin-room-attributes` permissions, and the global setting `ABAC_Enabled` to be turned on.

### Changelog

| Version | Description |
| --- | --- |
| 8.0.0 | Added |
| 8.5.0 | Added the `manage-abac-admin-room-attributes` granular permission requirement. |

Header parametersX-Auth-TokenstringRequired

The `authToken` of the authenticated user.

ExampleRScctEHSmLGZGywfIhWyRpyofhKOiMoUIpimhvheU3f
X-User-IdstringRequired

The `userId` of the authenticated user.

ExamplerbAXPnMktTFbNpwtJ

Body parameters<select class='api-response-data' aria-label='Media type'><option value='babdd46b-7189-4b19-83d0-2e98687cc6c6'>application/json</option>
</select>object  keystring    Required
values Array of string   Requiredstring    

Responses200

OK

<select class='api-response-data' aria-label='Media type'><option value='838bcb0b-66ec-46b6-a6fa-d2129d5c1abb'>application/json</option>
</select><select class='select-example' aria-label='Media type'><option value='82b53ca1-b70e-4b5f-b5f2-4186d2e31434'>Success</option>
</select>Success

```json
{
  "success": true
}
```

object  successboolean    

400

Bad Request

<select class='api-response-data' aria-label='Media type'><option value='366afdaf-395b-4f6c-a136-32fef51b9bed'>application/json</option>
</select><select class='select-example' aria-label='Media type'><option value='daafefae-8a1a-4e97-9a7f-77133a8e5a38'>ABAC disabled</option>
<option value='6fb1e451-d895-4534-b0f6-b83acefd16ef'>Attribute not found</option>
<option value='8c3b5d75-b7cf-4ca4-81e1-40cbdbabccc0'>Attribute in use (cannot rename key / cannot remove use...</option>
<option value='c3512e8a-b723-494c-94cf-b26f35720f3d'>Invalid values (e.g. empty values)</option>
<option value='6c49ed73-82e2-4933-a38a-f58113c01ee9'>Duplicate attribute key (renaming to an existing key)</option>
</select>ABAC disabled

```json
{
  "success": false,
  "error": "error-abac-not-enabled"
}
```

Attribute not found

```json
{
  "success": false,
  "error": "error-attribute-not-found"
}
```

Attribute in use (cannot rename key / cannot remove used values)

```json
{
  "success": false,
  "error": "error-attribute-in-use"
}
```

Invalid values (e.g. empty values)

```json
{
  "success": false,
  "error": "error-invalid-attribute-values"
}
```

Duplicate attribute key (renaming to an existing key)

```json
{
  "success": false,
  "error": "error-duplicate-attribute-key"
}
```

object  successboolean    
errorstring    

401

Unauthorized

<select class='api-response-data' aria-label='Media type'><option value='92deaca3-497f-4e61-a4d3-27e1399b276c'>application/json</option>
</select><select class='select-example' aria-label='Media type'><option value='cbe3e3b2-1539-465c-978f-b733055e7c57'>Unauthorized login attempt</option>
</select>Unauthorized login attempt

```json
{
  "success": false,
  "error": "error-unauthorized"
}
```

object  successboolean    
errorstring    

403

Forbidden

<select class='api-response-data' aria-label='Media type'><option value='22f502fe-703f-4f91-91e7-58182b25ccdc'>application/json</option>
</select><select class='select-example' aria-label='Media type'><option value='ad0ef943-724c-45be-8586-6de5d75a3948'>Missing required ABAC permissions</option>
</select>Missing required ABAC permissions

```json
{
  "success": false,
  "error": "error-not-authorized"
}
```

object  successboolean    
errorstring
