Complete Discord Application Setup Guide
Step-by-step walkthrough of the Discord Developer Portal — create an app, add a bot, set permissions, generate invite links, and more.
1) Create Your Application
Step A — Open the Developer Portal
Visit discord.com/developers/applications and sign in.
Step B — Name & Icon
Give your app a clear name and (optional) icon. This represents your bot publicly.
2) Add a Bot User
Step A — Create the Bot
On the left sidebar, click Bot → Add Bot → confirm.
Set the username and profile picture for your bot.
Step B — Public / DM Settings
Optional: Toggle whether your bot can be added by anyone, and whether it can receive DMs.
3) Get Your Bot Token
Step A — Copy Token
In the Bot page, under Token, click Reset/Copy.
Step B — Store Securely
Save the token in an environment variable (example):
DISCORD_TOKEN=your_super_secret_token_here
4) Privileged Gateway Intents
What They Are
Intents control what events your bot receives:
- Presence Intent — user online/offline status.
- Server Members Intent — member joins, updates, member lists.
- Message Content Intent — access to message text.
Enable the Right Intents
Toggle required intents and click Save Changes.
💡 Intent & Scope Planner (examples)
- Moderation bot → Members + Message Content
- Music bot → Members (for voice joins), often no Message Content if using slash commands
- Utility bot → Usually Members; Message Content only if you parse raw messages
5) Permissions & Scopes
Scopes
At minimum, select:
- bot — required to invite the bot to servers.
- applications.commands — required for slash commands.
Permissions
Choose only what your bot needs. Examples:
- Send Messages, Manage Messages
- View Channels, Read Message History
- Administrator (only if truly required)
6) Generate the Invite Link
Manual Process
In the Discord Developer Portal, go to OAuth2 → URL Generator.
Select your scopes and permissions, then copy the generated URL.
🔗 Quick Invite Generator
Testing Your Invite
Use the generated link to invite your bot to a test server.
Verify that the bot appears in the member list and has the expected permissions.
7) OAuth2 Redirects (for dashboards/auth)
Where to Set
Go to OAuth2 → General, then add your exact redirect URIs (e.g., https://example.com/callback).
When Needed
If you build a web dashboard or sign-in flow, your site will receive a code at this redirect URL to exchange for tokens.
🔎 Common scopes for web auth
- identify — basic user info
- guilds — list of servers the user is in
- email — user email (if needed)
8) Rich Presence Assets
Upload Images
Upload Large and Small images with unique keys.
When It Shines
Games, study tools, or streaming utilities can display status ("Playing …", "Studying …") with join buttons.
9) Slash Commands
Why Slash Commands
They're structured, discoverable, and safer than parsing message text.
- Autocomplete, validation, and built-in permissions
- No need for Message Content intent
Registering Commands
Use your library (discord.js / discord.py) or the HTTP endpoints to register global or guild commands.
10) Test & Troubleshoot — Quick Checklist
Before Inviting
- Bot user created and token stored safely
- Correct Intents toggled for your features
- Scopes: bot + applications.commands
- Permissions: only what you need (avoid Administrator)
After Inviting
- Bot shows as online in your test server
- Slash commands registered (try /help)
- Check logs for missing intents or missing permissions
Do you think this article is helpful?
0 people thought this article was helpful (0 votes)