Skip to main content
This page documents all permission nodes used by the Maintenance plugin, their default access levels, and their purposes.

Permission Structure

All permissions follow the format maintenance.<category>.<action> where:
  • maintenance is the base namespace
  • <category> groups related permissions (e.g., whitelist, timer)
  • <action> specifies the specific operation (e.g., add, remove)

Base Permission

maintenance.command

Required to use any /maintenance command. Default: Operators only Usage: This is the base permission checked before any command executes. Players without this permission cannot use any maintenance commands.

Command Permissions

Maintenance Toggle

maintenance.toggle

Allows enabling/disabling global maintenance mode. Default: Operators only Commands:
  • /maintenance on
  • /maintenance off
Example:
permissions:
  maintenance.toggle:
    description: Toggle maintenance mode
    default: op

maintenance.singleserver.toggle

Allows enabling/disabling maintenance mode on specific backend servers. Proxy only. Default: Operators only Commands:
  • /maintenance on <server>
  • /maintenance off <server>
Example:
permissions:
  maintenance.singleserver.toggle:
    description: Toggle maintenance on specific servers
    default: op

maintenance.singleserver.status

Allows viewing which backend servers have maintenance enabled. Proxy only. Default: Operators only Commands:
  • /maintenance status
Example:
permissions:
  maintenance.singleserver.status:
    description: View maintenance status of servers
    default: op

Timer Permissions

maintenance.timer

Allows managing maintenance timers (start, end, schedule, abort). Default: Operators only Commands:
  • /maintenance starttimer <duration> [server]
  • /maintenance endtimer <duration> [server]
  • /maintenance scheduletimer <enable-in> <duration> [server]
  • /maintenance aborttimer [server]
Example:
permissions:
  maintenance.timer:
    description: Manage maintenance timers
    default: op

Whitelist Permissions

maintenance.whitelist.add

Allows adding players to the maintenance whitelist. Default: Operators only Commands:
  • /maintenance add <player>
  • /maintenance add <uuid> [name]
Example:
permissions:
  maintenance.whitelist.add:
    description: Add players to maintenance whitelist
    default: op

maintenance.whitelist.remove

Allows removing players from the maintenance whitelist. Default: Operators only Commands:
  • /maintenance remove <player>
  • /maintenance remove <uuid>
Example:
permissions:
  maintenance.whitelist.remove:
    description: Remove players from maintenance whitelist
    default: op

maintenance.whitelist.list

Allows viewing the maintenance whitelist. Default: Operators only Commands:
  • /maintenance whitelist
Example:
permissions:
  maintenance.whitelist.list:
    description: View maintenance whitelist
    default: op

MOTD Permissions

maintenance.motd

Allows viewing configured maintenance MOTDs. Default: Operators only Commands:
  • /maintenance motd [timer]
Example:
permissions:
  maintenance.motd:
    description: View maintenance MOTDs
    default: op

maintenance.setmotd

Allows setting and removing maintenance MOTD entries. Default: Operators only Commands:
  • /maintenance setmotd [timer] <index> <line> <message>
  • /maintenance removemotd [timer] <index>
Example:
permissions:
  maintenance.setmotd:
    description: Edit maintenance MOTDs
    default: op

Administrative Permissions

maintenance.reload

Allows reloading plugin configuration files. Default: Operators only Commands:
  • /maintenance reload
Example:
permissions:
  maintenance.reload:
    description: Reload plugin configuration
    default: op

maintenance.dump

Allows generating debug dumps. Default: Operators only Commands:
  • /maintenance dump
Example:
permissions:
  maintenance.dump:
    description: Generate debug information
    default: op

maintenance.update

Allows checking for and installing plugin updates. Default: Operators only Commands:
  • /maintenance update
  • /maintenance forceupdate
Example:
permissions:
  maintenance.update:
    description: Manage plugin updates
    default: op

maintenance.debug

Allows toggling debug logging mode. Default: Operators only Commands:
  • /maintenance debug
Example:
permissions:
  maintenance.debug:
    description: Toggle debug logging
    default: op

Gameplay Permissions

maintenance.joinnotification

Receive notifications when players attempt to join during maintenance. Default: Operators only Usage: Players with this permission receive a message whenever someone tries to join the server while maintenance is enabled. Example:
permissions:
  maintenance.joinnotification:
    description: Receive join attempt notifications
    default: op

maintenance.bypass

Bypass maintenance mode and join the server even when maintenance is enabled. Default: Operators only Usage: Players with this permission can join the server during maintenance without being on the whitelist. Example:
permissions:
  maintenance.bypass:
    description: Bypass maintenance mode
    default: op
Note: This is separate from the maintenance whitelist. Players can have bypass permission OR be on the whitelist.

Example Permission Configurations

LuckPerms Examples

Grant full maintenance access to admins

lp group admin permission set maintenance.command true
lp group admin permission set maintenance.* true

Allow moderators to manage whitelist only

lp group moderator permission set maintenance.command true
lp group moderator permission set maintenance.whitelist.* true

Grant bypass permission to VIP players

lp group vip permission set maintenance.bypass true

Allow staff to receive join notifications

lp group staff permission set maintenance.joinnotification true

permissions.yml Examples (Bukkit/Spigot)

Admin permission setup

permissions:
  maintenance.admin:
    description: Full maintenance control
    default: op
    children:
      maintenance.command: true
      maintenance.toggle: true
      maintenance.timer: true
      maintenance.whitelist.add: true
      maintenance.whitelist.remove: true
      maintenance.whitelist.list: true
      maintenance.motd: true
      maintenance.setmotd: true
      maintenance.reload: true
      maintenance.dump: true
      maintenance.update: true
      maintenance.joinnotification: true

Moderator permission setup

permissions:
  maintenance.moderator:
    description: Maintenance whitelist management
    default: false
    children:
      maintenance.command: true
      maintenance.whitelist.add: true
      maintenance.whitelist.remove: true
      maintenance.whitelist.list: true

VIP bypass setup

permissions:
  maintenance.vip:
    description: VIP maintenance bypass
    default: false
    children:
      maintenance.bypass: true

BungeeCord config.yml Example

groups:
  admin:
    permissions:
    - maintenance.command
    - maintenance.toggle
    - maintenance.singleserver.toggle
    - maintenance.singleserver.status
    - maintenance.timer
    - maintenance.whitelist.add
    - maintenance.whitelist.remove
    - maintenance.whitelist.list
    - maintenance.reload
    - maintenance.dump
    - maintenance.update
  
  moderator:
    permissions:
    - maintenance.command
    - maintenance.whitelist.add
    - maintenance.whitelist.remove
    - maintenance.whitelist.list
    - maintenance.singleserver.status
  
  vip:
    permissions:
    - maintenance.bypass

Wildcard Permissions

You can use wildcards to grant groups of permissions:
  • maintenance.* - All maintenance permissions
  • maintenance.whitelist.* - All whitelist permissions (add, remove, list)
  • maintenance.singleserver.* - All single server permissions (toggle, status)
Example:
# Grant all whitelist permissions
lp group moderator permission set maintenance.whitelist.* true

# Grant all maintenance permissions
lp group admin permission set maintenance.* true

Default Permission Levels

By default, all command permissions require operator status. The following permissions are available to all players:
  • None (all permissions require explicit grant)
Recommended Setup:
  • Operators: All permissions (maintenance.*)
  • Admins: Command permissions, toggle, timer, whitelist, MOTD, reload
  • Moderators: Whitelist management, status viewing
  • VIP/Donors: maintenance.bypass to join during maintenance
  • Staff: maintenance.joinnotification to monitor join attempts

Permission Hierarchy

For optimal permission structure, consider this hierarchy:
maintenance.command (required for all commands)
├── maintenance.toggle
│   └── maintenance.singleserver.toggle
├── maintenance.timer
├── maintenance.whitelist.add
├── maintenance.whitelist.remove
├── maintenance.whitelist.list
├── maintenance.motd
├── maintenance.setmotd
├── maintenance.reload
├── maintenance.dump
├── maintenance.update
├── maintenance.debug
└── maintenance.singleserver.status

maintenance.bypass (gameplay permission)
maintenance.joinnotification (notification permission)

Build docs developers (and LLMs) love