Getting Started
Access & Permissions
Sparrow has four levels of access, given by roles. They're listed below from most to least access. Manage them from Discord with /roles, or from the dashboard's settings pages. Both show the same thing.
Who can add Sparrow, and who can manage it
- Adding Sparrow to a server needs Manage Server or Administrator there. That's Discord's rule for adding any bot.
- Full access, on the dashboard and in commands, goes to the server owner and anyone with Administrator or Manage Server. They see the server on their dashboard and can change who else has access.
- Everyone else needs one of the roles below, or to be added by name under Allowed users.
👑 Sparrow Master Roles
Full access to every module on the dashboard, including ones added later. The server owner and anyone with Administrator or Manage Server always have this too. Only they can change who has a Master Role. Master Role holders can't give it to anyone, including themselves.
🛠️ Manager Roles
Can create, edit and delete panels (or giveaways or events) and change settings, but only in one module: Tickets, Applications, Giveaways or Events. A Ticket Manager can't change Application or Giveaway settings, and can't open Reviews, Messages or Server Settings. Manager Roles aren't pinged into tickets or applications. Add the role to Support Roles as well if they should be.
👤 Members without a role
Next to the Master Roles and each Manager Role list on the dashboard, Allowed users gives one person the same access without making a role for them. Search for them by name and pick them. They need to be in your server: if they leave, they lose the access straight away. The same rules apply as for the roles: only a server admin (Administrator or Manage Server) changes Master access, and only an admin or Master changes Manager access./roles shows who is on these lists. Add or remove people on the dashboard.
🛡️ Support Roles
Pinged into every ticket or application in one module, and can claim and close tickets, or approve, deny and connect with applicants. Can't create, edit or delete panels or change settings. For Events, staff roles are set on each event (see the Events guide). For Giveaways, a Support Role can use the /giveaway commands (create, end, cancel, reroll, list). Support Roles only work in Discord. They don't give dashboard access.
🎯 Per-Panel Roles
Staff access for one panel instead of the whole module. Use it when different teams handle different panels, like Billing and General Support, and shouldn't see each other's tickets.
Do these roles need Discord permissions?
No. Master, Manager and Support roles are Sparrow's own lists. A Discord role with every permission turned off works fine. Create the role, then add it on the dashboard or with /roles.
- Don't give staff Administrator or Manage Server. Administrator overrides every channel restriction, and both give full Sparrow access, whatever roles you set up.
- Manage Server counts as admin. It's what Discord asks for to add a bot, so anyone with it gets the same full access as an Administrator, on the dashboard and in commands.
- Only a server admin can change who holds the Master Role, use
/faqpanel, and backfill staff stats. That's the owner, or anyone with Administrator or Manage Server.
Who can run which commands?
Anyone can run any command. Sparrow checks your roles and tells you privately if you don't have access. For example, /ticketpanel (post a new ticket panel) needs a Ticket Manager Role or above, and no Discord permission. The full list is on the commands page.
| Who | Examples | Needs a Discord permission? |
|---|---|---|
| Everyone | /help, /ping, /serverinfo, /botinfo, /premium, /roles (view only) | No |
| Support Role | /ticket claim, /ticket close, /ticket add, /ticket remove, /ticket create, /staffstats, /application, /giveaway | No |
| Manager Role | Everything a Support Role can do in that module, plus /ticketpanel and the module's dashboard pages and settings | No |
| Sparrow Master Role | Everything above, in every module | No |
| Server admin | /faqpanel, /staffstats backfill, changing the Master Role list | Yes, Administrator or Manage Server (the server owner has both) |
What Sparrow itself needs
These are the permissions Sparrow asks for when you add it. Each one is used by a feature, and it never asks for Administrator. If you remove one, the feature next to it stops working, often without an error.
| Permission | Why Sparrow needs it |
|---|---|
| View Channels | See the channels it posts panels and messages into. |
| Send Messages | Post ticket panels, application panels, giveaway announcements and replies. |
| Send Messages in Threads | Reply inside ticket threads and staff discussion threads. |
| Embed Links | Show embeds for panels, reviews and giveaways. |
| Attach Files | Send uploaded images, and let ticket panels allow or block files in a ticket. |
| Use External Emojis | Let ticket panels allow or block emojis from other servers in a ticket. |
| Use External Stickers | Let ticket panels allow or block stickers from other servers in a ticket. |
| Send Voice Messages | Let ticket panels allow or block voice messages in a ticket. |
| Read Message History | Edit or refresh a panel it posted earlier, and build ticket transcripts. |
| Add Reactions | Add the reactions on Reaction Roles panels, Auto Responders, Sticky Messages and boost messages. |
| Manage Channels | Create a private channel for each ticket (Channel mode) and control who can see it. |
| Create Private Threads | Open each ticket as a private thread (Thread mode), and private staff threads. |
| Manage Threads | Add staff to ticket threads, and lock and close them. |
| Manage Roles | Give roles from Reaction Roles, Auto Roles, Server Tag Role, giveaways and applications, and set who can see a ticket channel. |
| Manage Messages | Pin and clean up the messages Sparrow posts. Also used to take members' reactions off Reaction Roles panels and delete the message that set off an Auto Responder. |
| View Audit Log | Show who did something in Logs, like who deleted a channel or banned a member. |
| Manage Webhooks | Let staff reply to a ticket from the dashboard under their own name and avatar. |
| Mention Everyone | Ping a staff role even when that role isn't set to be mentionable. |
How staff get to see tickets
You don't set channel permissions yourself. Sparrow does it when the ticket opens.
- Channel-mode tickets: the panel's Support Roles get access to the ticket's channel (full access or view only, depending on the panel's setting). Server-wide Support Roles and Master Roles always get full access.
- Thread-mode tickets: Discord can't share one private thread with a role, so Sparrow gives Support and Master roles View Channel and Manage Threads on the panel's channel, which makes its private threads visible to them.
- Manager Roles aren't added automatically. Add the role to Support Roles too if managers should see and handle tickets.
- Changes to a panel's roles apply to new tickets; tickets that are already open keep the access they were opened with.
If something doesn't work
- Staff can't see a new ticket: check that their role is in Support Roles (not only Manager Roles), and that Sparrow still has Manage Channels and Manage Threads.
- Sparrow can't give a role: Sparrow's own role has to sit above that role in Server Settings → Roles. Discord doesn't let a bot hand out a role higher than its own.
- A command says you don't have access: ask an admin to add your role on the dashboard or with
/roles.
Everyone else
Everyone else who signs in sees the dashboard in view-only mode. Nothing they do is saved. Opening a page you don't have access to shows an Access Denied screen.
Managing roles from Discord
Run /roles in your server to view or change any of the four levels from Discord. Pick a level from the menu, then a module if needed. If you can't edit that level, you'll see what it does and who has it instead.