---
title: "Set permission overwrite for channel"
method: PUT
path: "/channels/{channel_id}/permissions/{overwrite_id}"
tags: ["Channels"]
---

# Set permission overwrite for channel

`PUT /channels/{channel_id}/permissions/{overwrite_id}`

Creates or updates permission overrides for a role or user in the channel. Allows fine-grained control over who can view, send messages, or manage the channel.

## Path parameters

- `channel_id` union, required
  - string, snowflake
  - integer
- `overwrite_id` union, required
  - string, snowflake
  - integer

## Request body

- PermissionOverwriteCreateRequest
  - `type` 0 | 1, required — The type of entity the overwrite applies to
  - `allow` union
    - string, int64
    - integer
  - `deny` union
    - string, int64
    - integer

## Response `204`

No Content

## Other responses

- `400` — Bad Request - The request was malformed or contained invalid data
- `401` — Unauthorized - Authentication is required or the token is invalid
- `403` — Forbidden - You do not have permission to perform this action
- `429` — Too Many Requests - You are being rate limited
- `500` — Internal Server Error - An unexpected error occurred

## Changes

> 19 revisions in range; 1 not diffed.

- **2026-09-06** `a52a2cf49d9b` — 32 warning, 200 info
  - added the new `IP_BAN_DECLINED` enum value to the `code` response property for the response status `400`
  - added the new `IP_BAN_DECLINED` enum value to the `code` response property for the response status `401`
  - added the new `IP_BAN_DECLINED` enum value to the `code` response property for the response status `403`
  - added the new `IP_BAN_DECLINED` enum value to the `code` response property for the response status `500`
  - …228 more
  - …this revision’s changelog is incomplete
- **2026-09-05** `4dbb738a3e22` — 4 info
  - removed the `NSFW_EMOJI_STICKER_BLOCKED` enum value from the `code` response property for the response status `400`
  - removed the `NSFW_EMOJI_STICKER_BLOCKED` enum value from the `code` response property for the response status `401`
  - removed the `NSFW_EMOJI_STICKER_BLOCKED` enum value from the `code` response property for the response status `403`
  - removed the `NSFW_EMOJI_STICKER_BLOCKED` enum value from the `code` response property for the response status `500`
- …earlier changes not shown

[Full history](https://skmtc.dev/fluxer/apis/fluxer-api/changes/channels/:channel_id/permissions/:overwrite_id/put.md)

---

[API](https://skmtc.dev/fluxer/apis/fluxer-api.md) · [All operations](https://skmtc.dev/fluxer/apis/fluxer-api/llms.txt) · [OpenAPI document](https://skmtc.dev/fluxer/apis/fluxer-api/revisions/d15f842dd5f1?raw)
