Skip to main content

Permissions & Roles

Veronica uses a multi-layered permission system that combines Discord’s native permissions, role hierarchy, and custom bot authority to ensure secure and flexible access control.

Permission Layers

1

Server Owner

Highest Authority - Bypasses all permission checks.
Ownership verified.
2

Discord Permissions

Native Discord Permissions - Standard Discord permission system.
Role-based access confirmed.
3

Bot Authority

Custom Permission Layer - Veronica-specific fake permissions.
Virtual authority engaged.
4

Role Hierarchy

Position-Based Checks - Role position in server settings.
Hierarchy audit complete.

Next Steps

Bot Authority

Learn how to grant specific bot permissions without Discord roles.

Moderation

See how permissions apply to the full suite of moderation commands.

Permission Mapping

Veronica maps its commands to Discord permissions:
Command CategoryRequired Permission
Ban, Unban, HardbanBan Members
KickKick Members
Mute, TimeoutModerate Members
Purge, ClearManage Messages
Lock, UnlockManage Channels
Role ManagementManage Roles
Auto-Mod, SettingsAdministrator

Role Hierarchy

How It Works

Example Scenarios

Setup:
  • Moderator has Ban Members permission
  • Moderator role: Position 5
  • Target role: Position 3
  • Bot role: Position 10
Result:Allowed - Moderator is higher than target, bot is higher than both
Setup:
  • Moderator has Ban Members permission
  • Moderator role: Position 5
  • Admin role: Position 8
  • Bot role: Position 10
Result:Denied - Moderator cannot act on higher roles
Setup:
  • Moderator has Ban Members permission
  • Moderator role: Position 5
  • Target role: Position 3
  • Bot role: Position 2
Result:Denied - Bot cannot manage roles above it

Bot Authority System

Fake Permissions

Grant Veronica-specific permissions without Discord permissions:
/fakeperm add user:@Member permission:manage_jail
Available Fake Permissions:
  • manage_jail - Use jail commands
  • manage_automod - Configure Auto-Mod
  • manage_economy - Manage economy settings
  • manage_leveling - Configure leveling system

Active Sessions

Temporary elevated access for specific users:
/session create user:@Member duration:1h permissions:administrator
Use Cases:
  • Temporary moderator access
  • Event management
  • Trial moderator periods
  • Emergency permissions

Bot Accounts

Multi-user bot control system:
/botaccount add user:@Developer
/botaccount permissions user:@Developer level:admin

Permission Best Practices

Principle of Least Privilege

Only grant permissions that are absolutely necessary for a role’s responsibilities.

Role Separation

Create distinct roles for different staff levels (Helper, Moderator, Admin).

Regular Audits

Periodically review role permissions and remove unnecessary access.

Bot Position

Keep Veronica’s role near the top of your role list for maximum functionality.

Troubleshooting

Solutions:
  • Verify you have the required Discord permission
  • Check your role position vs. target role
  • Ensure bot role is above target role
  • Confirm you’re not trying to moderate equal/higher roles
Solutions:
  • Move bot role above the roles it needs to manage
  • Verify bot has Manage Roles permission
  • Check if roles are managed by integrations (cannot be assigned)
Solutions:
  • Check if users have exempt roles
  • Verify users aren’t whitelisted
  • Ensure bot role is above user roles
Critical: Never give untrusted users Administrator permission or access to bot authority commands. These bypass most security checks.