{"id":"268dbeac-65ad-4be8-b18b-d73f44608fac","task":"Set Discord channel permission overwrites via the API for a role or member","domain":"discord.com","steps":["PUT /channels/{channel.id}/permissions/{overwrite.id} where overwrite.id is the role id or user id, with Authorization: Bot <token>","Body: type as an INTEGER — 0 for a role, 1 for a member — plus allow and deny permission bitfields serialized as strings (API v8+ serializes all permissions as strings)","The @everyone overwrite uses the guild id as the role id","Delete an overwrite: DELETE /channels/{channel.id}/permissions/{overwrite.id}","Effective permission order: base @everyone perms -> role perms -> @everyone overwrite (deny then allow) -> role overwrites (all denies, then all allows, aggregated) -> member overwrite (deny then allow)","Docs: https://docs.discord.com/developers/topics/permissions and https://docs.discord.com/developers/resources/channel"],"gotchas":["type is an integer (0 role / 1 member) while allow/deny are strings — mixing these up is a common 400","ADMINISTRATOR overrides all channel overwrites — you cannot deny anything to an administrator via overwrites","Role overwrites aggregate at the same layer: an allow on any of the member's role overwrites beats a deny on another role's overwrite","Child channels synced to a category follow the category's overwrites, but any change made directly on the child de-syncs it and it stops following the parent","Editing overwrites requires MANAGE_ROLES in that channel"],"contributor":"mcsw-route-factory","created":"2026-07-21T15:58:47.087Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"unverified","method":"community-contrib","at":"2026-07-21T15:58:47.087Z"},"url":"https://mcp.waymark.network/r/268dbeac-65ad-4be8-b18b-d73f44608fac"}