---
title: "Update a Redis Software role"
method: PUT
path: "/v1/roles/{uid}"
tags: ["Roles"]
---

# Update a Redis Software role

`PUT /v1/roles/{uid}`

Update a role configuration by unique ID.

## Path parameters

- `uid` integer, required

## Query parameters

- `dry_run` boolean

## Request body

- RoleUpdateRequest — Role update request payload.
  - `account_id` integer — Account ID. Only applicable to account-scoped roles.
  - `management` 'none' | 'db_viewer' | 'cluster_viewer' | 'db_member' | 'cluster_member' | 'user_manager' | 'admin' — Name of the management role.
  - `name` string — Role's name.
  - `resources` Resource[] — Resources that restrict this role's access to specific resources.
    - `type` 'db' — Type of resource for scoping role access.
    - `uids` string[] — List of resource UIDs this role has access to.

## Response `200`

Role updated successfully.

- Role — An API object that represents a Redis Software role.
  - `account_id` integer — Account ID. Only applicable to account-scoped roles.
  - `management` 'none' | 'db_viewer' | 'cluster_viewer' | 'db_member' | 'cluster_member' | 'user_manager' | 'admin', required — Name of the management role.
  - `name` string, required — Role's name.
  - `resources` Resource[] — Resources that restrict this role's access to specific resources.
    - `type` 'db' — Type of resource for scoping role access.
    - `uids` string[] — List of resource UIDs this role has access to.
  - `uid` integer, required — Role's unique uid.

## Other responses

- `400` — Bad Request
- `403` — Forbidden
- `404` — Not Found
- `406` — Not Acceptable
- `409` — Conflict

## Changes

- **2026-03-09** `75fcb952f0c6` — 2 warning
  - removed the request property `allOf[#/components/schemas/RoleBody]/permissions`
  - removed the optional property `allOf[#/components/schemas/RoleBody]/permissions` from the response with the `200` status
- **2026-02-25** `a19324f2815b` — 1 breaking, 1 warning, 2 info
  - removed the enum value `bdb` of the request property `allOf[#/components/schemas/RoleBody]/resources/items/type`
  - added the new `db` enum value to the `allOf[#/components/schemas/RoleBody]/resources/items/type` response property for the response status `200`
  - added the new `db` enum value to the request property `allOf[#/components/schemas/RoleBody]/resources/items/type`
  - removed the `bdb` enum value from the `allOf[#/components/schemas/RoleBody]/resources/items/type` response property for the response status `200`
- **2026-02-20** `5ef2083f32fc` — 4 info
  - added the new optional request property `allOf[#/components/schemas/RoleBody]/permissions`
  - added the new optional request property `allOf[#/components/schemas/RoleBody]/resources`
  - added the optional property `allOf[#/components/schemas/RoleBody]/permissions` to the response with the `200` status
  - added the optional property `allOf[#/components/schemas/RoleBody]/resources` to the response with the `200` status
- **2026-02-09** `17b61f8beeda` — 1 info
  - endpoint added
- **2026-01-23** `9fdf3bc7ad77` — 1 breaking
  - api path removed without deprecation

[Change history](https://skmtc.dev/redis/apis/redis-software-rest-api/changes/v1/roles/:uid/put.md)

---

[API](https://skmtc.dev/redis/apis/redis-software-rest-api.md) · [All operations](https://skmtc.dev/redis/apis/redis-software-rest-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/redis/redis-software-rest-api/revisions/caec2005b95b/schema)
