Discord Bot Token Invalid - Troubleshooting & Fix Guide

cgen-1ad67c7b08464287a6e1a94a1db71c75
This commit is contained in:
Builder.io 2025-11-09 22:16:35 +00:00
parent 16c010742a
commit dd01fd30de

View file

@ -0,0 +1,115 @@
# Discord Bot Token Invalid - Troubleshooting & Fix
## Problem
The Discord bot is failing to login with error:
```
❌ Unhandled Promise Rejection: Error [TokenInvalid]: An invalid token was provided.
```
This means the `DISCORD_BOT_TOKEN` environment variable is either:
- Expired or revoked
- Invalid/malformed
- For a bot that was deleted from Discord Developer Portal
- Not properly synced to the deployment environment
## Solution: Get a New Bot Token
### Step 1: Go to Discord Developer Portal
1. Visit: https://discord.com/developers/applications
2. Sign in with your Discord account
3. Click on the application named **"AeThex"** (or your app name)
### Step 2: Get the Bot Token
1. Click on the **"Bot"** tab on the left sidebar
2. Under the "TOKEN" section, click **"Reset Token"**
3. Click **"Yes, do it!"** to confirm (the old token will be revoked)
4. Click **"Copy"** to copy the new token
### Step 3: Update the Environment Variable
The new token looks like: `NTc4OTcxMjQ1NDU0OTUwNDIx.GxxxXX.xxxxxxxxxxxxxxxxxxxxxxxxxxxxx`
**For Railway/Spaceship Deployment:**
1. Go to your Railway/Spaceship dashboard
2. Go to environment variables
3. Update or add: `DISCORD_BOT_TOKEN=<new_token_here>`
4. Save changes
5. Redeploy the bot
**For Local Development:**
1. Update `.env` file in `code/discord-bot/`:
```
DISCORD_BOT_TOKEN=your_new_token_here
```
2. Restart the bot: `npm start`
### Step 4: Verify the Bot
After updating the token, the bot should:
1. Login successfully: `✅ Bot logged in as AeThex#xxxx`
2. Load all commands: `<60><><EFBFBD> Loaded command: verify`, etc.
3. Start health check server: `🏥 Health check server running on port 8044`
## Token Format Validation
A valid Discord bot token:
- ✅ Starts with a number (user ID)
- ✅ Contains 3 parts separated by dots: `part1.part2.part3`
- ✅ Is ~70+ characters long
- ✅ Contains only alphanumeric characters, dots, hyphens, and underscores
Example: `NTc4OTcxMjQ1NDU0OTUwNDIx.Gv-kuN.MiaXTUhlTzCqsTdwhO8sbYci0lIIY5uC08O5Ug`
## Common Issues & Fixes
### Issue: "Token has been exposed"
Discord automatically revokes tokens if they appear in public repositories (GitHub, etc.).
**Fix:** Reset the token in Discord Developer Portal as described above.
### Issue: Bot not in any servers
Even with a valid token, the bot might not connect to your servers.
**Fix:**
1. In Discord Developer Portal, go to **OAuth2 > URL Generator**
2. Select scopes: `bot`
3. Select permissions: `Administrator` (or specific permissions)
4. Copy the generated URL and open it in browser
5. Select your server and authorize
### Issue: "TokenInvalid" but token looks correct
The token might be:
- Copied with extra whitespace
- Not fully copied (missing characters)
- From a different bot application
**Fix:**
1. Go back to Discord Developer Portal
2. Reset the token again (this revokes the old one)
3. Copy the full new token carefully (no extra spaces)
4. Update environment variable immediately
## Environment Variables Checklist
Before deploying, verify these are set:
- ✅ `DISCORD_BOT_TOKEN` - Valid bot token from Developer Portal
- ✅ `DISCORD_CLIENT_ID` - Usually `578971245454950421`
- ✅ `DISCORD_PUBLIC_KEY` - From General Information tab
- ✅ `SUPABASE_URL` - Database connection
- ✅ `SUPABASE_SERVICE_ROLE` - Database authentication
- ✅ `BOT_PORT` - Usually `3000` or `8044` for Railway
## Still Having Issues?
If the token is valid but bot still won't login:
1. **Check Discord Server Status**: https://status.discord.com/
2. **Verify Bot Permissions**: Make sure bot has "Send Messages", "Read Messages"
3. **Check Firewall**: Some firewalls block Discord API connections
4. **Review Recent Changes**: Did you recently update discord.js version?
5. **Clear Cache**: Delete `node_modules/` and run `npm install` again
## References
- Discord Developer Portal: https://discord.com/developers/applications
- Discord.js Documentation: https://discord.js.org/
- Creating a Discord Bot: https://discordjs.guide/preparations/setting-up-a-bot-application.html