---
title: "Update Policy"
method: PUT
path: "/cabinet/admin/rbac/policies/{policy_id}"
tags: ["Admin RBAC Policies"]
---

# Update Policy

`PUT /cabinet/admin/rbac/policies/{policy_id}`

## Request

- The document declares no server URL.
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/bedolagam/apis/remnawave-bot-admin-api/docs/cabinet/admin/rbac/policies/:policy_id/put.ts> (a function with typed inputs; its response is checked against the schema)

Update an existing access policy.

## Path parameters

- `policy_id` integer, required

## Request body

- PolicyUpdateRequest: Update policy fields (all optional).
  - `name` string, nullable
  - `description` string, nullable
  - `role_id` integer, nullable
  - `priority` integer, nullable
  - `effect` string, nullable
  - `conditions` object, nullable
  - `resource` string, nullable
  - `actions` string[], nullable
  - `is_active` boolean, nullable

## Response `200`

Successful Response

- PolicyResponse: Access policy response.
  - `id` integer, required
  - `name` string, required
  - `description` string, nullable
  - `role_id` integer, nullable
  - `role_name` string, nullable
  - `priority` integer, required
  - `effect` string, required
  - `conditions` object
  - `resource` string, required
  - `actions` string[]
  - `is_active` boolean, required
  - `created_by` integer, nullable
  - `created_at` string, date-time, nullable

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/bedolagam/apis/remnawave-bot-admin-api.md) - [All operations](https://skmtc.dev/bedolagam/apis/remnawave-bot-admin-api/llms.txt) - [OpenAPI document](https://skmtc.dev/bedolagam/apis/remnawave-bot-admin-api/revisions/2360876ff9c5?raw)
