Log in
Sign up
  • Home

  • Automation with Zapier

  • Zapier tutorials

Zapier tutorials

4 min read

How to create Discord reaction roles with Zapier

By Krystina Martinez · March 20, 2023
A hero image of the Discord app logo connected to the Zapier logo on a light blue background.

Roles are an essential part of running a community on Discord, and let you control member privileges and permissions, "verify" newcomers to your server, and allow members to self-identify with specific interests.  

By default, admins and moderators can assign roles manually through Discord's server settings panel, which can quickly become annoying if you run a large server. The most common workaround is using a bot to enable "reaction roles," which automatically assigns roles when members react to a message with a specific emoji. 

If a reaction roles bot intimidates you or you need a custom solution, you can automatically assign Discord roles with Zapier. In this tutorial, we'll show you how to create a Zap—Zapier's automated workflows—that adds reaction roles to your server. 

Zapier is a no-code automation tool that lets you connect your apps into automated workflows, so that every person and every business can move forward at growth speed. Learn more about how it works.

Before you begin

In this tutorial, we'll create a simple rules-screening process that verifies members once they react to a message acknowledging they've read the server rules. Community servers have this feature built-in, but you can create your own if your server is private or subscription-only

You'll need a few things to get started: 

  • Create a #rules channel if you don't have one already. If you do, briefly make it private to everyone except admins and moderators. You can privately test your Zap or any Discord bots without spamming the rest of the server before you make it public. (You can also test your Zap in a #testing channel if you have one.)

  • Create a role that has viewing and posting access to your general channels. It can be something like "Verified" or "Member." Remember to remove that access from @everyone and other non-admin roles. Save time by setting permissions by channel category to grant and revoke permissions across multiple channels. 

  • Post (and pin) a message with the community rules. It should include instructions for members to react with a specific emoji to show they've read it. In our example, I included the verification instructions within spoiler tags because I'm evil and want to see if people read the instructions. Be sure to react to the message to test your Zap later.

Post a Discord message and react to it.

How to assign Discord roles from reactions

You can create your own Zap from scratch with our point-and-click editor, but we also have quick templates to get you started. 

Assign Discord roles for new message reactions

Assign Discord roles for new message reactions
  • Discord logo
  • Discord logo

Here's how to set it up: 

  1. Connect to Discord and customize your reaction trigger

  2. Customize your role action and test your Zap

Connect to Discord and customize your reaction trigger

First, set up your trigger—the event starts a Zap. If you're using our Zap template, this is pre-selected for you. If you're building from scratch, select Discord as the app and New Reaction on Message as the event, then click Continue

Select the app and event that will trigger the Zap.

Next, connect Discord to Zapier if you have yet to do so. Discord will prompt you to select which server to add Zapier to.

Select the Discord server Zapier can access.

For each app you connect, Zapier will ask for a general set of permissions which allows you to be flexible with your Zaps. The only actions Zapier takes on your app accounts are those a given Zap needs to accomplish what you've set up.

Once you've added Zapier to your server, click Continue in the Zap editor.  Next, the editor will prompt for a link to the message you want your Zap to monitor for reactions. 

Provide a link to a Discord message.

Remember the rules you posted earlier? Toggle back to Discord, click on the three-dot menu next to the message, and click Copy Message Link

Right-click on a Discord message and copy the URL.

Toggle back to the Zap editor and paste the URL into the Message Link field.

Paste the message URL in the Zap editor.

Then, select the emoji reaction that will trigger your Zap and click Continue.  

Select an emoji that will trigger the Zap.

Test your trigger to ensure Zapier can find the message reaction in Discord. If your test is successful, you'll see details about the user who reacted to the message. Click Continue

Test the Discord reaction trigger in the Zap editor and review the results.

Customize your role action and test your Zap

Now let's set up the action, which will be the event your Zap performs when triggered. If you're building from scratch, select Discord as the app and Add Role as the event, then click Continue

Select Discord's Add Role event for the Zap action.

Select the user you want to assign a role to. When you click on the User field, notice that the dropdown menu is static. If you select a user from this list, your Zap would assign a role to the same user every time, which is likely not what you want.

For situations like this, you can use a custom value. Custom values, among other things, allow you to bypass static dropdowns and use static text or values from previous Zap steps.

To use a custom value, click the Custom tab from the User field dropdown. 

Click on the Custom tab from the User dropdown menu.

Then select the ID value from the dropdown menu. This will allow your Zap to assign a role based on the user who reacted.

Select the ID value.

Under the Role field, select the server role you want to assign, and click Continue.

Select a Discord role to assign.

Finally, let's test this workflow. Click Test action. Zapier will assign the Discord role according to your settings. 

Test the Discord action

If the action is successful, Discord will return a true result. 

Review the results from the Zap test.

But let's check the server to be sure. You can click on an individual user profile in your list of server members or check the roles in your server settings. 

Check Discord to preview the newly-assigned role.

If everything looks good, your Zap is ready to use. Remember to make your #rules channel public again if needed. Now you have an automated rules-screening process for your Discord server!

Automatically manage Discord roles with Zapier 

Automated reaction roles are just one way you can use Zapier with Discord. Check out other ideas for automating your Discord server so you can focus on growing your community. 

New to Zapier? It's a tool that helps anyone connect apps and automate workflows—without any complicated code. Sign up for free.

Related content:

Get productivity tips delivered straight to your inbox

We’ll email you 1-3 times per week—and never share your information.

mentioned apps

Related articles

Improve your productivity automatically. Use Zapier to get your apps working together.

Sign up
A Zap with the trigger 'When I get a new lead from Facebook,' and the action 'Notify my team in Slack'