To add a bot to a server, Discord uses an OAuth2 URL containing the application ID (client_id), the requested scopes (bot, applications.commands) and the permissions integer. This tool assembles it correctly and never touches your token.
How to use the tool
Copy the Application ID from the Discord Developer Portal (General Information) and paste it in client_id.
Tick the scopes: bot for a bot, applications.commands for slash commands.
Pick the minimum permissions needed (avoid ADMINISTRATOR).
Copy the generated link and open it in a browser signed in to Discord: choose a server where you have Manage Server, then authorize.
URL parameters
Parameters documented by Discord: client_id, scope (space-separated, encoded %20), permissions (integer), guild_id (preselects the server), disable_guild_select, redirect_uri and response_type (required for scopes beyond bot and applications.commands), integration_type (0 = guild, 1 = user). Permissions only apply with the bot scope. Source: official Discord developer OAuth2 documentation (checked 2026-10-09).
https://discord.com/oauth2/authorize?client_id=123456789012345678&scope=bot%20applications.commands&permissions=3072Frequently asked questions
- Does the link contain my bot token?
- No, never. The link only contains the application's public ID. Never share the bot token (Bot tab of the portal).
- Why doesn't the bot have the permissions I asked for?
- The admin can untick permissions at authorization time, and roles or channel overwrites can remove them afterwards. Check the bot's role and the channel permissions.
