---
title: "patch roles"
method: PATCH
path: "/v1/roles"
tags: ["v1", "roles"]
---

# patch roles

`PATCH /v1/roles`

#### Controller: 

`github.com/ubccr/grendel/internal/api.(*Handler).PatchRoles`

#### Middlewares:

- `github.com/go-fuego/fuego.defaultLogger.middleware`
- `github.com/ubccr/grendel/internal/api.(*Handler).authMiddleware`

---

Edit role permissions

## Headers

- `Accept` string

## Request body

- PatchRolesRequest — PatchRolesRequest schema
  - `permission_list` object[]
    - `method` string
    - `path` string
  - `role` string

## Response `200`

OK

- GenericResponse — GenericResponse schema
  - `changed` integer
  - `detail` string
  - `title` string

## Other responses

- `default` — Default Error

## Changes

- **2025-04-25** `26459b338dbb` — 1 info
  - endpoint added
- **2024-12-03** `29c6a9c3f49b` — 1 breaking
  - api path removed without deprecation

[Change history](https://skmtc.dev/ubccr/apis/grendel-api/changes/v1/roles/patch.md)

---

[API](https://skmtc.dev/ubccr/apis/grendel-api.md) · [All operations](https://skmtc.dev/ubccr/apis/grendel-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/ubccr/grendel-api/revisions/62eb4acab992/schema)
