Rollen und Berechtigungen
So werden Berechtigungen berechnet
- Der Servereigentümer darf alles.
- Sonst beginne bei den Standardberechtigungen des Servers (
@everyone). - Addiere die Berechtigungen jeder Rolle des Mitglieds (
allow), dann entferne, was Rollen verweigern, von der niedrigsten zur höchsten Rolle. - Wende in einem Kanal die Standard-Überschreibung des Kanals an, dann die der Rollen, auf dieselbe Art.
- Ein Mitglied im Timeout behält nur „Kanal sehen“ und „Ältere Nachrichten lesen“.
Berechtigungen sind eine 64-Bit-Zahl; jede Berechtigung ist ein Bit. Nimm in JavaScript BigInt: Eine einfache Zahl kann nicht jedes Bit genau halten.
const SEND_MESSAGE = 1n << 22n;
const canSend =
(BigInt(interaction.user_permissions_string) & SEND_MESSAGE) === SEND_MESSAGE;Jede Interaktion nennt dir die Berechtigungen der Person (user_permissions_string) und deines Bots (app_permissions_string) in diesem Kanal, du musst sie also selten selbst berechnen.
Berechtigungsnamen
Endpunkte in dieser Referenz nennen Berechtigungen wie Timeout Members. In einem Fehler steht dieselbe Berechtigung als TimeoutMembers, die erste Spalte der Tabelle unten. Addiere Werte, um mehrere zu senden: Kick Members (64) und Ban Members (128) ergeben 192.
Threads und Foren
CreateThreads, SendMessageInThreads und CreateForumPosts sind für @everyone standardmäßig an. Verbiete sie an einer Rolle oder einem Kanal, dann können diese Personen nur lesen. Sie werden am übergeordneten Kanal gelesen, zusätzlich zu Nachrichten senden.
Rang
Rollen haben einen Rang; eine kleinere Zahl steht höher. Ein Bot kann nur Mitglieder und Rollen unter seiner höchsten Rolle bearbeiten, vergeben, entziehen, kicken, bannen oder mit Timeout belegen. Sonst antwortet der Server NotElevated. Bitte die Admins, die Rolle deines Bots höher zu setzen, wenn er moderiert.
Berechtigungsbits
| Permission | Bit | Value | |
|---|---|---|---|
ManageChannel | 0 | 1 | Den Kanal oder die Kanäle des Servers verwalten |
ManageServer | 1 | 2 | Den Server verwalten |
ManagePermissions | 2 | 4 | Berechtigungen auf Servern oder Kanälen verwalten |
ManageRole | 3 | 8 | Rollen des Servers verwalten |
ManageCustomisation | 4 | 16 | Anpassungen des Servers verwalten, etwa Emojis |
KickMembers | 6 | 64 | Mitglieder kicken |
BanMembers | 7 | 128 | Mitglieder bannen |
TimeoutMembers | 8 | 256 | Mitgliedern ein Timeout geben |
AssignRoles | 9 | 512 | Rangniedrigeren Mitgliedern Rollen geben |
ChangeNickname | 10 | 1024 | Den eigenen Spitznamen ändern |
ManageNicknames | 11 | 2048 | Spitznamen anderer ändern oder entfernen |
ChangeAvatar | 12 | 4096 | Den eigenen Server-Avatar ändern |
RemoveAvatars | 13 | 8192 | Server-Avatare anderer entfernen |
ViewChannel | 20 | 1048576 | Den Kanal sehen |
ReadMessageHistory | 21 | 2097152 | Ältere Nachrichten lesen |
SendMessage | 22 | 4194304 | Nachrichten senden |
ManageMessages | 23 | 8388608 | Nachrichten löschen, anheften und verwalten |
ManageWebhooks | 24 | 16777216 | Webhooks verwalten |
InviteOthers | 25 | 33554432 | Einladungen erstellen |
SendEmbeds | 26 | 67108864 | Embeds senden |
UploadFiles | 27 | 134217728 | Dateien hochladen |
Masquerade | 28 | 268435456 | Namen und Avatar auf Nachrichten ändern |
React | 29 | 536870912 | Reaktionen hinzufügen |
Connect | 30 | 1073741824 | Sprachkanälen beitreten |
Speak | 31 | 2147483648 | In Sprachkanälen sprechen |
Video | 32 | 4294967296 | Video und Bildschirm teilen |
MuteMembers | 33 | 8589934592 | Mitglieder stummschalten |
DeafenMembers | 34 | 17179869184 | Mitgliedern das Hören sperren |
MoveMembers | 35 | 34359738368 | Mitglieder zwischen Sprachkanälen verschieben |
Listen | 36 | 68719476736 | In Sprachkanälen zuhören |
MentionEveryone | 37 | 137438953472 | @everyone und @online erwähnen |
MentionRoles | 38 | 274877906944 | Rollen erwähnen |
BypassSlowmode | 39 | 549755813888 | Den langsamen Modus umgehen |
ViewAuditLogs | 40 | 1099511627776 | Das Audit-Log lesen |
UseExternalEmojis | 41 | 2199023255552 | Emojis anderer Server benutzen |
ManageJoinRequests | 42 | 4398046511104 | Beitrittsanfragen annehmen oder ablehnen |
CreateThreads | 43 | 8796093022208 | Einen Thread in einem Textkanal starten |
SendMessageInThreads | 44 | 17592186044416 | In Threads und Forenbeiträgen schreiben |
CreateForumPosts | 45 | 35184372088832 | Einen Beitrag in einem Forum starten |
Administrator | 46 | 70368744177664 | Alle Rechte in allen Kanälen des Servers, egal was deren Einstellungen sagen |
UseSoundboard | 47 | 140737488355328 | Sounds des Server-Soundboards in einem Sprachanruf abspielen |
ManageSoundboard | 48 | 281474976710656 | Sounds des Server-Soundboards hinzufügen, ändern und entfernen |
Referenz
PUT /channels/{target}/permissions/{role_id}
Set Role Permission. Sets permissions for the specified role in this channel.
Channel must be a TextChannel.
Berechtigungen: Channel:ManagePermissions · Ratenlimit: channels, 15 / 10 s
PUT /channels/{target}/permissions/default
Set Default Permission. Sets permissions for the default role in this channel.
Channel must be a Group or TextChannel. A channel synced with its category stops following it: it keeps a copy of the category's permissions and the change applies on top.
Berechtigungen: Channel:ManagePermissions · Ratenlimit: channels, 15 / 10 s
PUT /channels/{target}/permissions/members/{user_id}
Set Member Permission. Sets one member's permissions in this channel, applied after every role (for example a ticket only its author and the staff can see). An empty override (allow 0, deny 0) removes it.
Channel must be a TextChannel. Needs Manage Permissions in the channel, a higher rank than the member, and only the permissions you hold yourself.
Berechtigungen: Channel:ManagePermissions · Ratenlimit: channels, 15 / 10 s
POST /channels/{target}/permissions/sync
Sync Permissions With Category. The channel follows its category's permissions again; its own default and role overrides are cleared. Per-member overrides stay.
Berechtigungen: Channel:ManagePermissions · Ratenlimit: channels, 15 / 10 s
PUT /servers/{target}/categories/{category_id}/permissions/{role_id}
Set Category Role Permission. Sets a role's permissions for a category. Channels synced with the category use them instead of their own. An empty override removes it.
Ratenlimit: servers, 5 / 10 s
PUT /servers/{target}/categories/{category_id}/permissions/default
Set Category Default Permission. Sets the default permissions for a category. Channels synced with the category use them instead of their own.
Ratenlimit: servers, 5 / 10 s
PUT /servers/{target}/permissions/{role_id}
Set Role Permission. Sets permissions for the specified role in the server.
Berechtigungen: Channel:ManagePermissions · Ratenlimit: servers, 5 / 10 s
PUT /servers/{target}/permissions/default
Set Default Permission. Sets permissions for the default role in this server.
Berechtigungen: Channel:ManagePermissions · Ratenlimit: servers, 5 / 10 s
POST /servers/{target}/roles
Create Role. Creates a new server role.
Berechtigungen: Channel:ManageRole · Ratenlimit: servers, 5 / 10 s
DELETE /servers/{target}/roles/{role_id}
Delete Role. Delete a server role by its id.
Berechtigungen: Channel:ManageRole · Ratenlimit: servers, 5 / 10 s
GET /servers/{target}/roles/{role_id}
Fetch Role. Fetch a role by its id.
Ratenlimit: servers, 5 / 10 s
PATCH /servers/{target}/roles/{role_id}
Edit Role. Edit a role by its id.
Berechtigungen: Channel:ManageRole · Ratenlimit: servers, 5 / 10 s
PATCH /servers/{target}/roles/ranks
Edits server roles ranks. Edit's server role's ranks.
Berechtigungen: Channel:ManageRole · Ratenlimit: servers, 5 / 10 s