Schedule Role
Schedule role assignments for specific times. Create one-time or recurring role schedules for events, meetings, or special occasions.
Subcommands
create
Create a new scheduled role assignment or removal
list
List all active scheduled roles with pagination
view
View details of a specific scheduled role
cancel
Cancel a scheduled role (keeps in database)
delete
Permanently delete a scheduled role from database
Parameters
Create Subcommand
action (required)
Action to perform: assign or remove
role (required)
The role to assign or remove
users (required)
Users to target (supports mentions, IDs, role mentions, @everyone)
schedule-type (required)
Type of schedule: one-time, daily, weekly, monthly, or custom
schedule (required)
When to execute (e.g., 'tomorrow 8am', '9am', 'monday 9am', '15 2pm', '60')
reason (optional)
Reason for the scheduled role action
List Subcommand
page (optional)
Page number to display
show-all (optional)
Show all schedules including cancelled ones
View Subcommand
schedule-id (required)
The schedule ID to view
Cancel Subcommand
schedule-id (required)
The schedule ID to cancel
Delete Subcommand
schedule-id (required)
The schedule ID to permanently delete
Schedule Types
- one-time - Execute once at the specified time
- daily - Execute every day at the specified time
- weekly - Execute every week on the specified day and time
- monthly - Execute every month on the specified date and time
- custom - Execute at custom intervals (specified in minutes)
Step-by-Step Example
- Schedule a one-time role assignment:
/schedule-role create action:assign role:@EventRole users:@user1,@RoleName schedule-type:one-time schedule:tomorrow 8amCreate a daily recurring role removal:
/schedule-role create action:remove role:@Mute users:@RoleName schedule-type:daily schedule:9amTarget all members with a role:
/schedule-role list page:1 show-all:falseSchedule Format Examples
tomorrow 8am- Tomorrow at 8:00 AM9am- Today at 9:00 AM (if before 9am) or tomorrowmonday 9am- Next Monday at 9:00 AM15 2pm- 15th of this month at 2:00 PM60- 60 minutes from now (for custom intervals)
User Targeting
- User mentions -
@user1,@user2(target specific users) - Role mentions -
@RoleName(target all members with that role) - User IDs -
123456789,987654321(target by ID) - @everyone - Target all server members
- Mix formats - Combine any of the above
Permissions Required
- Manage Roles: Required to schedule role assignments/removals
Troubleshooting
- Schedule not created: Verify bot permissions and schedule format.
- Role not assigned: Ensure the bot's role is positioned above the target role.
- Invalid time format: Use supported time formats (see examples above).
- Schedule not found: Verify the schedule ID is correct.
Related Commands
Use Cases
- Automated role assignments for events
- Scheduled maintenance windows
- Recurring tasks (daily, weekly, monthly)
- Time-based role management
- Night shift restrictions and daily role changes