Sir Goose Bot
Sir Goose Bot is a Discord bot built for UWaterloo Discord servers. Its main functionality is to allow Discord users to authenticate with their UWaterloo identity, and get roles assigned based on their program.
Sir Goose Bot is the only1 bot that integrates with the UW's Office365 OAuth. This allows us to read program info, entrance year (for students entering in 2020 or later), and provides a smoother/simpler experience overall.
- Link a Discord account with a UWaterloo identity and verify the connection via Office365 OAuth
- Very customizable role assignment: assign roles based on the UWaterloo program the user is in, and/or the user's year
- Web interface for building role assignment rules
- Easily configurable settings on a per-server basis via bot commands
- Automatically verify users who have previously verified with the bot on a different Discord server
These commands assume the default prefix of
$ (tilde), which can change depending on the server's settings.
Verify your Waterloo identity for server access. The bot will DM you a verification link where you can login with your UW account and get verified!
Server Configuration Commands
Managing settings requires the user to have the MANAGE_GUILD or ADMINISTRATOR permissions.
List all of the server's settings
Get information about a specific setting
$config (setting) (new value)
Update the value of a specific setting
$settings verificationEnabled true
Set the role assignment rules to use when assigning roles after a user verifies
Create rules here.
Update the prefix the bot will respond to. The default prefix is
Get a help message with a list of all of the commands
$help (command name)
Get specific information on a specific command
If you'd like to add this bot to your own server, you can message me (Dark#4321) on Discord for an invite link, or by email at email@example.com
Self hosting is also possible, but you'll need to first get O365 app registration for OAuth access.
- prefix: The prefix that the bot responds to (
- verificationEnabled: Enable or disable verification (
- verificationProgram: The UWaterloo program users must be in to get the verified role (
- verifiedRole: The name of the role that users part of the verificationProgram get assigned (
- guestRole: The role to assign guests, which are defined as users who have verified but are part of a different program (
- autoGuest: Whether or not to automatically assign guest roles (
1 As of time of writing, that I am aware of.