---
title: "Removes permission from a given role."
method: DELETE
path: "/roles/{role_id}/permissions/{permission_name}"
tags: ["Permissions"]
---

# Removes permission from a given role.

`DELETE /roles/{role_id}/permissions/{permission_name}`

## Request

- Base URL: `https://h2ogpte.genai.h2o.ai/api/v1`
- URL: `https://h2ogpte.genai.h2o.ai/api/v1/roles/{role_id}/permissions/{permission_name}`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/h2o/apis/h2ogpte-rest-api/docs/roles/:role_id/permissions/:permission_name/delete.ts> (a function with typed inputs; its response is checked against the schema)

Removes permission from a given role.

## Path parameters

- `role_id` string, required
- `permission_name` string, required

## Response `204`

Successful operation

## Other responses

- `400`: Bad request
- `401`: Unauthorized - Invalid or missing API key
- `404`: Not found
- `409`: Conflict
- `default`: Unexpected error

## Changes

- **2026-11-06** `a82a117320f4`: 5 info
  - added the non-success response with the status `400`
  - added the non-success response with the status `404`
  - added the optional property `error_type` to the response with the `401` status
  - added the optional property `error_type` to the response with the `409` status
  - …1 more

[Operation history](https://skmtc.dev/h2o/apis/h2ogpte-rest-api/changes/roles/:role_id/permissions/:permission_name/delete.md)

---

[API](https://skmtc.dev/h2o/apis/h2ogpte-rest-api.md) - [All operations](https://skmtc.dev/h2o/apis/h2ogpte-rest-api/llms.txt) - [OpenAPI document](https://skmtc.dev/h2o/apis/h2ogpte-rest-api/revisions/a82a117320f4?raw)
