Langage :
Permissions
Les permissions sont stockées en bitmask entier — chaque bit représente une capacité distincte.
Table des permissions
1SEND_MESSAGESEnvoyer des messages dans les salons2READ_MESSAGESLire l'historique des salons4MANAGE_MESSAGESSupprimer ou modifier des messages d'autres membres8KICK_MEMBERSExclure des membres du serveur16BAN_MEMBERSBannir définitivement des membres32MANAGE_CHANNELSCréer, modifier et supprimer des salons64ADMINISTRATORToutes les permissions — bypass complet du bitmaskVérifier les permissions
Vérifier si le bot possède une permission
js
const PERMISSIONS = {
SEND_MESSAGES: 1 << 0, // 1
READ_MESSAGES: 1 << 1, // 2
MANAGE_MESSAGES: 1 << 2, // 4
KICK_MEMBERS: 1 << 3, // 8
BAN_MEMBERS: 1 << 4, // 16
MANAGE_CHANNELS: 1 << 5, // 32
ADMINISTRATOR: 1 << 6, // 64
};
function hasPermission(botPerms, permission) {
return (botPerms & PERMISSIONS.ADMINISTRATOR) !== 0 ||
(botPerms & permission) !== 0;
}
// Combiner des permissions
const readWrite = PERMISSIONS.SEND_MESSAGES | PERMISSIONS.READ_MESSAGES; // 3
if (hasPermission(readWrite, PERMISSIONS.SEND_MESSAGES)) {
console.log('Le bot peut envoyer des messages');
}Endpoints
GET
/api/bots/me/serversListe les serveurs où le bot est présent avec les permissions associées
GET
/api/bots/me/servers/:serverIdPermissions du bot sur un serveur spécifique
PATCH
/api/bots/me/servers/:serverIdModifier les permissions (nécessite les droits admin du serveur)
ADMINISTRATOR (64)
Si ce bit est activé, le bot contourne toutes les vérifications de permissions. Équivalent d'un accès complet. À accorder uniquement en pleine confiance.