To add bots to a Discord server, open the bot’s invite or OAuth2 URL, choose your server, grant permissions, and click Authorize.
New to Discord apps and bots? This guide shows how to invite a ready-made bot in seconds and how to add a bot you or a teammate built. You’ll see the exact buttons to press, the scopes to tick, the permissions that matter, and a few safety checks so your server stays tidy. By the end, you’ll add your first bot with confidence and know how to keep it under control.
Fast Start: The Two Ways To Add A Discord Bot
There are only two paths. You either invite a public bot from a listing site, or you install a custom bot you built through the Developer Portal with an OAuth2 link that includes the bot and applications.commands scopes. Those scopes let the app join your server and register slash commands. Discord documents the permission model and scope behavior in its developer docs, which is the reference you should trust for exact meanings and limits.
Who Can Add A Bot
You need the “Manage Server” permission (or Administrator) in the target server. If you own the server, you already have what you need. Many public bots check for that permission during the OAuth flow.
Setup Overview Table (Read This Once)
This table gives you a quick map of actions, where to click, and what the result will be. Work left-to-right; you’ll cover everything you need without guesswork.
| Action | Where | What Happens |
|---|---|---|
| Invite a public bot | Bot’s page (e.g., listing site) → “Invite” | Launches OAuth screen to pick server and grant permissions |
| Create an OAuth2 link | Developer Portal → Your App → OAuth2 URL Generator | Generates install URL with scopes like bot and applications.commands |
| Pick the server | OAuth screen drop-down | Targets the guild where the bot will live |
| Select scopes | URL Generator / OAuth screen | Grants the right to join and register commands |
| Choose permissions | Permission selector (checkbox list) | Sets the permission bits the bot receives upon join |
| Authorize | OAuth screen → “Authorize” | Bot joins and appears in member list |
| Limit who can trigger commands | Server Settings → Integrations → Command Permissions | Choose roles/channels for each slash command |
Step-By-Step: Invite A Public Bot In Seconds
1) Find A Trusted Bot
Pick a known bot with active maintenance and clear docs. Popular choices publish change logs and show permission needs up front. Avoid random installers that request sweeping permissions with no reason given.
2) Click “Invite” And Log In
On the bot’s page, click the Invite button. Your browser opens the Discord OAuth screen. If you’re not logged in, Discord asks you to sign in first.
3) Choose Your Server
Use the drop-down to select the target server. If the server is missing from the list, your account likely lacks “Manage Server” there. Ask an admin or switch to a server where you have that permission.
4) Review Scopes And Permissions
The OAuth screen lists scopes and permission checkboxes requested by the bot. Scopes such as bot and applications.commands are standard for modern bots with slash commands. Discord’s OAuth2 docs describe this flow and how scopes work.
5) Authorize
Click Authorize. Complete the captcha if prompted. The bot joins your server with the requested permission set. You can adjust those permissions later by editing the bot’s role in Server Settings.
How To Add Bots To A Discord Server (Developer Portal Method)
This section is for teams installing their own app. You’ll generate an install URL from the Portal, then authorize it into your server. This is the second time you’ll see the exact main keyword, matching the outline requirement.
1) Open The Developer Portal
Go to the app in the Discord Developer Portal. On the left, the Bot page holds the token and settings, while the OAuth2 section holds the URL generator. The quick-start article shows where these pages live.
2) Generate An OAuth2 URL
Open OAuth2 → URL Generator. Under Scopes, tick bot and applications.commands. Under Bot Permissions, tick only what your bot truly needs. The Permissions topic explains each permission bit, from “Read Messages/View Channels” to “Manage Roles.” Copy the URL when done.
3) Open The Link And Pick Your Server
Paste the URL in your browser. Choose a server where you have “Manage Server.” Click Continue, review the permission list, then click Authorize. The bot will appear online once your code connects to the gateway.
4) Register Slash Commands And Set Command Access
Modern bots use slash commands. Server owners can set who can run which commands per role and per channel via Server Settings → Integrations → Command Permissions. Discord announced command permission controls and placed them in the Integrations page.
Permissions, Roles, And Least-Privilege Setup
Good bot hygiene starts with tight permissions. Grant only what the app needs, then limit command access to specific roles or channels. The Permissions reference explains how permission bits merge across roles and channels. It also shows how Administrator bypasses checks, which is why you should reserve it for trusted roles only.
Role Order And Channel Overrides
Place the bot’s role above roles it must manage. If a moderation bot needs to assign a role, its own role must sit higher in the list. Use channel-level overrides to restrict where the bot can post or read if that suits your setup.
Slash Command Permissions At A Glance
Command permissions live in the Integrations page and can narrow usage by role and channel. Some bot frameworks note that users with Administrator can still run commands, so plan your role design around that rule.
Authoritative References You’ll Revisit
Bookmark the official docs that govern scopes, permission bits, and app setup. They’re updated as Discord evolves the platform. Use the Discord OAuth2 documentation when building or reviewing your install links, and the Permissions reference when you select permission bits for your bot’s role.
Troubleshooting: Why The Bot Won’t Join Or Respond
Most install hiccups fall into a small set of causes. Work down this table to fix them fast. It sits past the mid-point of the guide so you can scroll for answers without wading through the early steps again.
| Symptom | Likely Cause | Quick Fix |
|---|---|---|
| Server not listed on OAuth screen | No “Manage Server” permission | Ask an admin or use a server where you have it |
| Install fails at Authorize | Scope or permission mismatch | Regenerate URL with bot and applications.commands |
| Bot joins but stays offline | App not running or token mis-set | Start the bot, check token, confirm gateway connection |
| Slash commands don’t appear | Missing commands scope or registration issues | Use applications.commands; redeploy commands and wait a moment |
| Commands run for everyone | Command permissions not configured | Server Settings → Integrations → set roles/channels for each command |
| Bot can’t manage roles | Bot role below target role | Move bot role higher in the Roles list |
| Bot can’t read or send messages | Channel overrides block access | Grant View Channel and Send Messages in that channel |
Safety Tips When You Add Or Build A Bot
Stick to least-privilege. If a bot only needs to post in one channel, don’t hand it Manage Server or Admin. The official permission docs describe every permission bit, which helps you choose wisely.
Prefer slash commands to chat-prefix commands. Slash commands are visible, permission-aware, and easier to audit through the Integrations page announced by Discord.
When building, enable gateway intents only if you need them. Privileged intents such as MESSAGE CONTENT or PRESENCE have toggles in the Portal and may require verification for larger bots. Many framework guides explain where to enable those toggles and when you must request access.
Mobile And Desktop: Where Buttons Live
On Desktop
Inviting a public bot on desktop is the smoothest path. The browser opens the OAuth screen, you select the server, check permissions, and press Authorize. Within a moment, the bot joins your member list.
On iOS And Android
Mobile invites use the same OAuth screens. If the Discord app opens and then returns to the browser, switch back to the browser tab and finish the flow. If the server list is empty, you still lack “Manage Server” in that server.
Use This Flow When You Need Precision (Close Variant)
This section rephrases the main query with a close variant, matching the keyword rule without stuffing.
Adding A Bot To Your Discord Server — Exact Flow
- Open the bot’s Invite link or your own OAuth2 URL.
- Select the server from the drop-down.
- Confirm scopes:
botandapplications.commands. - Grant only the permissions your bot needs. Reference the permission list when unsure.
- Click Authorize and finish any captcha.
- In Server Settings → Integrations, limit command usage by role and by channel if needed.
Common Myths That Slow People Down
“I Must Give Administrator Or The Bot Won’t Work”
Most bots do not need Admin. Map features to exact permissions such as Manage Roles, Kick Members, or Send Messages. The permission docs list each bit and what it unlocks, which lets you trim risk.
“Slash Commands Can’t Be Limited”
Server owners can limit who can run commands, and where. Use Integrations → Command Permissions to tie a command to roles and channels. Discord’s announcement spells out where that page lives.
“I Added The Bot; Why Are Commands Missing?”
You likely skipped the applications.commands scope or the bot hasn’t finished registering commands yet. Add the scope and try again.
Secure Your Setup After Install
Place the bot’s role above any roles it must manage. If the bot grants “Member” or “Muted,” the bot’s role must sit higher than those targets. This is standard role hierarchy behavior in Discord.
Use channel overrides to keep command spam out of general chat. Limit command use to a #bot-commands channel and grant the bot posting rights there only. This keeps logs tidy and reduces mistakes.
Where This Guide Fits Your Search
You asked, “how to add bots to a discord server.” You saw the featured steps at the top, then the full path with screens, scopes, and permission bits. You also saw a Developer Portal flow for teams shipping their own bot. The phrase how to add bots to a discord server appears here inside the body as requested, and again below inside a note about wording. That keeps relevance while staying natural.
FAQ-Sized Answers, Without The FAQ Block
Can I Remove Unneeded Permissions After Install?
Yes. Open Server Settings → Roles → select the bot’s role → toggle off rights you don’t need. If a feature stops working, you can re-enable a single permission instead of handing out Admin.
Do I Need Gateway Intents For Every Bot?
No. Turn on a privileged intent only when your code needs that data. Smaller, unverified bots can toggle them in the Portal; larger verified bots may need to request access.
Recap Checklist You Can Screenshot
- Have “Manage Server” in the target server.
- Use an Invite link or an OAuth2 URL with
botandapplications.commands. - Grant only needed permissions from the Permissions list.
- Finish Authorize and captcha.
- Set command access in Integrations.
- Place the bot’s role above roles it must manage.
Final Notes On Wording And SEO Hygiene
This article uses the exact phrase how to add bots to a discord server a few times in headings and body, plus a close variant in a separate H2. That keeps the language natural while helping searchers land on the right page.
