Discord Email Verification System
Please note: this app requires a Gold or higher Autocode subscription as it uses three linked resources. You can signup for a free trial of Gold at this link.
Having a public Discord server can often lead to you receiving a lot of spam, scams and less-than-ideal users. This bot helps mitigate this by providing a simple email verification process. Once a user's email is verified, they'll be given a role. You can restrict access to channels and features using this role, helping you build a more friendly and safe community!
Demo

Important Files
/functions/__main__.js
- this is the file that users are taken to when they click the confirmation link in their email.
/functions/events/autocode/self/deployed.js
- automatically sets up your slash command when you install this app. If you don't see the slash command on your server, try manually running this file.
/functions/events/discord/command/verify.js
- run when the slash command is used, opens up the modal.
/functions/events/discord/modal/submit/verify_email.js
- run when the modal is submitted - stores data in Airtable and sends the verification email.
/www/styles.css
- the CSS used on the verification page.
Frequently Asked Questions
- I run a large Discord server and will be sending lots of emails. Can I use a different service to send emails?
- Yes, if you have a large server you might want to consider using a more enterprise-grade email service. You can modify how emails are sent in the
/functions/events/discord/modal/submit/verify_email.js
file.
- This is my first bot! Where can I learn more about bot building?
Setup
You will need
Cloning the Airtable Template
- Visit this link and click
Copy base

- Select the workspace that you want to copy the base into, then click
Add base

- Click the icon of the base that you just copied

- We'll need the base's ID in the next part of this guide, so copy it down for safe keeping. The base ID is the characters between the first two slashes in the base's URL that begin with
app
. In the example below, the base ID is appxWvIEwsdiXwiSO
.

Awesome, your Airtable is all setup! Now let's install this Autocode app!
Installing the Autocode App
- Scroll up in this page and click the green
Install Free
button

- Select the organization you'd like to install this app into, and give your project a name. Then click
Next
.

- For each account type (Airtable, Discord and Gmail), click
Link
then Link New Resource
. Then follow the instructions in the window that pops up.
- You should ensure you link to the same Airtable account that you duplicated the base onto
- We recommend not using your regular Gmail account and instead setting up a dedicated one for this app, as all verifications email will be sent using it

- Once you've finished linking all the required resources, your page should look like the screenshot below. Once it does, click the
Continue
button.

Nearly there! You'll now need to set four environment variables.
- Community Name - the name of your community, which will be used to personalize the confirmation screen and confirmation emails. This doesn't need to exactly match your Discord server's name.
- Discord Guild ID - the ID of your Discord server. You can get this by right clicking your server's icon on Discord's sidebar and clicking
Copy ID
while having Developer Mode enabled.
- Discord Role ID - the ID of the role you want verified users to be given. You can find this by right clicking the role in the Discord's Server Settings and clicking
Copy ID
.
- Airtable Base ID - the ID of the Airtable base that you copied earlier in this tutorial.
Once you've filled out all of these values, click Install App
.

Congratulations - your Discord email verification bot is ready to go! Try it out by using /verify
on your Discord server.