Modules
Tickets
A ticket panel is a message with buttons. Each button opens a ticket, as a private thread or as its own channel, depending on how the panel is set up.
Creating a panel
From Ticket System → Panels, create a panel and choose Thread or Channel mode. In Channel mode you also pick who can see a ticket before it's claimed: your whole support team, view only until claimed, or nobody until someone claims it. You can also start from a template instead.
Questions
Add questions to ask before a ticket opens. Answers can be text, a dropdown, a user, role or channel, or checkboxes. Every question needs its text filled in before the panel saves.
Discord fits 5 questions in one form, so longer forms come in parts. After each part, a private message says where the member is, like "Saved questions 1 to 5 of 12", with a Continue button for the next part. They can also press See My Answers, Start Over, or pick an earlier part from Change earlier answers to fix it. That part opens with their answers already filled in. The same message updates as they go, so their channel doesn't fill up.
Staff roles
Each panel has its own support roles, as well as the server-wide ticket staff set in Ticket Settings. Server-wide staff can see every panel's tickets. A panel's own support roles only see that panel's tickets.
A panel's support roles are pinged when a ticket opens. To stop the ping, turn off Ping them when a ticket opens on the panel's Roles tab. They're still added to every ticket, just not notified.
Turn on Staff reminder on the same tab so tickets don't get forgotten. When a ticket waits longer than the time you pick (30 minutes to 7 days) for a staff reply, Sparrow pings the staff member who claimed it, or the support roles if nobody did. It posts in the ticket's staff thread if there is one, otherwise in the ticket. One reminder per wait; a staff reply resets it.
In Channel mode, staff can start a private Staff Discussion under a ticket (the Staff Discussion button or /ticket private) to talk it over. The member can't see it. It's saved with the transcript when the ticket closes. Staff open it with the Staff Discussion button at the top of the transcript or in Ticket History. The member never sees it, not even on a public transcript link.
What members can do in a ticket
In Channel mode, the panel's General tab chooses what the member who opened a ticket, and anyone added to it, can do there: add reactions, post links with previews, attach files, use emojis and stickers from other servers, and send voice messages. On gives it to them even if their roles don't, off takes it away. Staff aren't affected. Thread mode tickets follow the channel they open in, because Discord doesn't let one thread have its own permissions. Sparrow needs each permission itself to change it.
Support hours
Tell members when your team answers tickets. Turn on Use support hours on a panel's Support Hours tab, then either pick a schedule from Ticket Settings → Support Hours (hours several panels share, up to 50) or give the panel its own custom hours. Each day can have more than one range and can run past midnight, in the time zone you pick, and you can switch between a 12-hour and 24-hour clock. Then choose what happens outside those hours:
- Open the ticket, with a note: the ticket says the team is away and when they're back.
- Don't allow opening: the member is told when they can open one.
Turn on Show the hours on the panel to add "🟢 Open now · closes in 2 hours" or "🔴 Closed · opens in 5 hours" to the posted panel. Sparrow updates it when it opens and closes. The staff reminder also waits while support is closed.
Staff hours (Premium): turn them on in Ticket Settings → Support Hours and share the link with your staff. Each staff member logs in there to set their own weekly hours, in their own time zone, and can check in when they're around (or use /ticket check-in and /ticket check-out). On a panel's Support Hours tab, Open when our staff are available keeps the panel open during its own hours, and also while one of its staff is available by their own hours or checked in.
- Check-ins: pick how long a check-in lasts (1 to 24 hours, 12 by default) and whether Sparrow DMs staff before it ends. From the DM they can keep their time, stay checked in longer (when you allow it, typing how many more hours), check out now, or be reminded again in a few minutes.
- Leaving early: staff who check out during their own hours are away until those hours end. The panel stops counting them, so it closes if nobody else is around. Their next hours count as normal.
- More than one panel: staff on several panels that follow staff hours pick which ones they're here for when they check in, and which ones they're leaving when they check out. Checking in or out only counts in the server where they did it.
- Approval: turn on Changes need approval and pick a review channel. New hours are posted there with Approve and Turn down buttons, with an optional note and a DM to the staff member.
- Staff Hours page: under Ticket System in the sidebar. See who's checked in, approve hours, and look at each staff member's time on duty. Every check-in, check-out and hours change is logged, with filters by staff member, kind and dates. Export hours (each check-in with start, end and length) or the full log as a CSV file. The log is kept for 1 year with Premium, 60 days without.
- For staff: My Account → Staff Hours lists every server where they're ticket staff, with an I'm here switch, their own activity, and Export my hours.
Transcripts
When a ticket closes, Sparrow saves a copy of it, its transcript. It opens on Sparrow's website, looking like the ticket did in Discord, and the member who opened it gets a View transcript button in their close DM (see below). Everyone who can see a transcript finds it under My Account → Transcripts in the account menu. Turn these on or off on the panel's Advanced tab.
- Private transcripts (on by default): only the people allowed can open it, after logging in with Discord. Anyone else sees a page asking them to log in, or telling them it isn't theirs to see. Turned off, anyone with the link can open it, and the opener and added members still find it in My Account → Transcripts.
- Who can view: the ticket creator, members added to the ticket, support roles and admins. All of them can, until you turn some off. Only shown while Private transcripts is on.
- Save transcript images (Premium): keeps images working. Without it, images use Discord's links, which stop loading after about a day.
Staff notes
Ticket staff can keep private notes about a member, like "asked about a refund twice". Members never see them. Notes belong to the member, not to one ticket, so they're there every time that member opens a ticket. It's free.
- In a ticket: press the Staff Notes button, or use
/ticket notes. Leave the member empty for the person who opened the ticket. - Anywhere in the server: right-click a member, then Apps, then Staff notes.
- On the dashboard: open a ticket in Ticket History and press Staff Notes to read, add, edit or delete notes.
- When a member with notes opens a ticket, the panel's log channel gets a short heads-up, and whoever claims the ticket gets a private reminder.
- Notes show 5 to a page. Staff can delete their own notes, and ticket admins can delete any note. Turn staff notes off for the whole server in Ticket Settings → General, or hide just the button on a panel's Advanced tab.
Ticket stats
Ticket History has a Stats tab that shows how fast your staff answer and close tickets. Pick a date range and one or more panels to narrow it down. It's free.
- Tickets opened, average first reply and average time to close, each with the median.
- How many tickets closed without any reply from staff.
- A chart of tickets opened per day, week or month.
- Tables by staff member and by panel.
- First reply is the first message from ticket staff, in Discord or from the dashboard. Older tickets use their saved transcript when they have one.
Close requests
The Request Close button (or /ticket request-close) asks the other person to agree to close the ticket. Staff can add a timer in hours: if nobody answers in time, the ticket closes by itself, and the message shows a live countdown. 0 means no timer, so it only closes when someone presses Close Ticket. Cancel keeps it open, and the person who asked can cancel too. The message then shows what happened, and so does the transcript.
Close DM
When a ticket closes, Sparrow DMs the member who opened it: which panel and ticket it was, when it opened, who closed it, when and why. It's on by default, and you can change the message or turn it off on the panel's Close Options tab, using placeholders like {closedby} and {closereason}. It comes with a View transcript button when the panel saves transcripts and the opener is allowed to view them. Auto-close is on the same tab.
Accepted and Denied DMs
With Approve and Deny turned on, Sparrow can DM the member when staff accept or deny their ticket. Each one has its own message and its own switch, on the panel's Messages tab under Ticket Buttons. Both are off until you turn them on. Use placeholders like {reason} for what staff wrote and {decidedby} for who decided. If Approve or Deny also closes the ticket, the member gets this DM instead of the close DM, with the same View transcript button, so they only get one message. If their DMs are closed, staff are told.
Role rules
Role rules give or take a role from the member who opened the ticket when it's approved, denied or closed. Set them on the panel's Roles tab, like "On Approve, give @Member" or "On Close, remove @Waiting". Close runs every time the ticket closes, also when Approve or Deny closes it. Free servers get 1 rule that gives a role and 1 that removes one, and Premium gets up to 10 of each. Sparrow can only manage roles below its own highest role.
Turning a panel off
Switch off Panel Enabled on the panel's General tab to stop new tickets for a while. Sparrow asks for a message, like "Tickets are closed right now." Members who press the button see it, and only they can. Leave it empty and they see "This panel is closed right now." The posted panel stays where it is, and open tickets aren't touched.
Commands
Run these inside a ticket. The staff-only ones work anywhere in the server. See Access & Permissions for what each access tier means, or manage who holds them with /roles.
/ticketTicket Staff (claim/unclaim/rename/transfer) · Ticket Staff or the opener, if enabled (close)Claim, unclaim, close, rename or transfer the ticket you're in.
/ticket addTicket Staff for that panelGive a user or role access to the ticket you're in.
/ticket removeTicket Staff for that panelTake away a user or role's access to the ticket you're in.
/ticket request-closeTicket Staff, or the ticket's opener if the panel allows itAsk the other person to agree to close this ticket. Add hours to close it by itself if nobody answers in time.
/ticket privateTicket Staff for that panelStart a private staff thread on this ticket. The member who opened it can't see it.
/ticket notesTicket StaffSee or add private staff notes about a member. In a ticket, leave the member empty for the person who opened it. You can also right-click a member and pick Apps, then Staff notes.
/ticket createTicket Support Role or aboveOpen a ticket for a member on the panel you pick.
/ticket forceTicket Support Role or aboveOpen a ticket for a member and skip the application form.
/ticket check-inTicket StaffStaff hours (Premium): tell Sparrow you're here to handle tickets, even outside support hours. /ticket check-out when you're done. Ends by itself after 12 hours.
/ticket listEveryone (your own) · Ticket Staff (anyone's)List a member's open tickets. Works anywhere.
/ticketpanelTicket Manager Role or abovePost a new ticket panel here. Set up the embed, questions and roles on the dashboard.
/staffstatsTicket Support Role or aboveView a staff member's ticket stats, or post the public leaderboard.
Want an overview instead? See the Tickets module page → · See every command →