En el Discord Developer Portal crea un bot con New Application: las apps nuevas ya traen el usuario bot. En la página Bot genera el token con Reset Token y activa solo los Privileged Gateway Intents que necesita. El enlace para invitar el bot lo crea en OAuth2, con el URL Generator y el scope bot, o en Installation como Install Link.
¿Alojar su bot de Discord? En HostValues desde €1,40 al mes, en línea en pocos minutos. Ver planes →
Esta guía recorre cada página del portal que importa para un bot: General Information, Bot, OAuth2 e Installation. Verá para qué sirve cada ajuste, qué significan los errores más comunes y cómo mantener el bot en línea las 24 horas. Datos comprobados el 27 de octubre de 2026 con la documentación oficial para desarrolladores de Discord (API v10). Dos cambios de este año dejan desactualizadas muchas guías antiguas: desde el 9 de marzo de 2026 el portal aparece en el idioma que tenga configurado en Discord, y desde el 10 de junio de 2026 el acceso libre a los intents privilegiados depende del número de usuarios, no del número de servidores.
Para qué sirve el Discord Developer Portal
El Discord Developer Portal, en discord.com/developers/applications, es el sitio donde registra sus apps de Discord. Un bot es una app con un usuario bot: el portal le da la identidad (nombre, avatar, Application ID), la clave para conectarse (el token), los permisos de datos (los intents) y el enlace para añadirlo a un servidor. El código del bot no vive en el portal: corre en su PC o en un servidor y se conecta a Discord con el token.
Antes de empezar necesita:
- Una cuenta de Discord para iniciar sesión en el portal.
- Un servidor de pruebas donde tenga el permiso de administrar el servidor (Manage Server). Solo con ese permiso puede añadir un bot. Discord recomienda probar las apps nuevas en un servidor que nadie más use.
- Una biblioteca para su lenguaje, por ejemplo discord.js para Node.js, discord.py para Python o JDA para Java.
En esta guía usamos los nombres en inglés de la documentación de Discord. Como el portal sigue el idioma de su cliente de Discord, con Discord en español verá muchos botones traducidos; las secciones Bot, Token y Privileged Gateway Intents se reconocen igual.
Crear la aplicación y el bot paso a paso
- Abra el portal y pulse New Application, arriba a la derecha.
- Escriba un nombre. En Team elija Personal o, si desarrolla con otras personas, un equipo. Confirme con Create.
- Llega a General Information: descripción e icono de la app, la Application ID y la Public Key.
La Application ID la necesita para el enlace de invitación, donde se llama client_id. Es pública. La Public Key solo la necesitan las apps que reciben peticiones de Discord en una dirección web propia (la Interactions Endpoint URL). Un bot que se conecta por el Gateway, como uno hecho con discord.js o discord.py, no la usa.
Según Discord, las apps nuevas ya tienen un usuario bot. En la página Bot del menú de la izquierda revise dos interruptores:
- Public Bot: desactivado, solo el dueño de la app puede añadir el bot a servidores. Activado, cualquiera con su enlace puede añadirlo a los servidores donde tenga los permisos necesarios.
- Requires OAuth2 Code Grant: déjelo desactivado si no necesita un flujo OAuth2 completo con redirección propia. Activado, un enlace de invitación sencillo ya no basta.
Un detalle que confunde a muchos: si en la página Installation hay un Install Link configurado (por ejemplo, Discord Provided Link), Discord no deja desactivar Public Bot. Ponga primero el Install Link en None, guarde, y después desactive Public Bot.
Token del bot: copiar, guardar y restablecer
En la página Bot, en la sección Token, pulse Reset Token y confirme. Discord muestra el token nuevo una sola vez: cópielo enseguida en un gestor de contraseñas o en el archivo .env de su proyecto, por ejemplo DISCORD_TOKEN=su_token.
El token es la contraseña de su bot. Quien lo tenga puede iniciar sesión como su bot y actuar en todos sus servidores. Por eso:
- No lo ponga nunca en el código, en un repositorio Git ni en una captura de pantalla. Añada
.enva.gitignore. - Si se filtró, pulse otra vez Reset Token. El token antiguo deja de funcionar al instante y usted pone el nuevo en todos los sitios donde corre el bot.
- Si perdió el token, no se puede volver a ver: genere uno nuevo con Reset Token.
No confunda los datos: la Application ID es pública y va en el enlace de invitación; el token es secreto y sirve para que el bot inicie sesión.
Privileged Gateway Intents: cuándo activarlos
Con los intents, su bot dice qué eventos quiere recibir de Discord por el Gateway. Tres de ellos son privilegiados porque dan acceso a datos sensibles. Están en la página Bot, en la sección Privileged Gateway Intents, y vienen desactivados. Active solo lo que su bot necesita y guarde con Save Changes.
| Interruptor | Nombre en la API | Qué permite | Uso típico |
|---|---|---|---|
| Presence Intent | GUILD_PRESENCES | estado en línea y actividad de los miembros | paneles de estado, roles según la actividad |
| Server Members Intent | GUILD_MEMBERS | entradas, salidas y cambios de miembros, la lista completa de miembros | mensajes de bienvenida, roles automáticos |
| Message Content Intent | MESSAGE_CONTENT | texto, archivos adjuntos y otros contenidos de los mensajes | comandos con prefijo como !help, moderación de texto |
Sin Message Content Intent, su bot recibe vacío el contenido de los mensajes de otros. Según Discord hay excepciones: los mensajes que envía el propio bot, los mensajes directos al bot, los mensajes que lo mencionan y el mensaje sobre el que alguien usa un comando de menú contextual del bot. Los comandos de barra (slash commands) no necesitan ninguno de los tres intents, así que si empieza de cero, conviene usarlos.
El cambio del 10 de junio de 2026. Si su app es visible para menos de 10.000 usuarios, active los intents en el portal sin más. Cuentan los usuarios únicos que pueden ver su app en todos sus servidores. Por encima de ese límite, la app tiene que solicitar el acceso: tras el aviso en el portal hay 90 días para pedirlo, y un acceso aprobado se renueva cada año. Antes, el límite era de 100 servidores. La verificación de la app es desde entonces un proceso aparte.
Un intent tiene que coincidir en dos sitios: en el portal y en su código. Si el código pide un intent privilegiado que en el portal está desactivado, Discord cierra la conexión con el código 4014 (Disallowed intent(s)). Reinicie el bot después de cada cambio en el portal, porque los intents valen para una conexión nueva.
Invitar el bot: Install Link u OAuth2 URL Generator
Los bots no entran en un servidor con una invitación normal, sino con OAuth2. Discord ofrece dos caminos.
Camino A, OAuth2 y URL Generator:
- En el menú de la izquierda abra OAuth2 y después el URL Generator.
- En Scopes marque
botyapplications.commands. - Debajo aparecen los permisos del bot (Bot Permissions). Elija solo los que necesita, por ejemplo View Channels, Send Messages, Embed Links y Read Message History. Evite Administrator: da todos los permisos al bot y se salta las restricciones de los canales.
- Copie la URL generada, ábrala en el navegador, elija su servidor y confirme.
El enlace queda así; el número de permissions es la suma de los permisos elegidos:
https://discord.com/oauth2/authorize?client_id=SU_APPLICATION_ID&scope=bot+applications.commands&permissions=84992
| Permiso | Nombre en la API | Valor |
|---|---|---|
| View Channels | VIEW_CHANNEL | 1024 |
| Send Messages | SEND_MESSAGES | 2048 |
| Embed Links | EMBED_LINKS | 16384 |
| Read Message History | READ_MESSAGE_HISTORY | 65536 |
1024 + 2048 + 16384 + 65536 da los 84992 del ejemplo.
Camino B, Installation e Install Link: es el que usa la guía de inicio actual de Discord. En la página Installation, en la sección Install Link, elija Discord Provided Link. En Default Install Settings, para Guild Install, añada los scopes bot y applications.commands y los permisos. El enlace solo lleva su client_id, y Discord pide los permisos configurados al añadir el bot. Si en Installation Contexts también activó User Install, Discord pregunta primero dónde instalar la app: elija «Add to server». User Install solo hace falta para comandos que los usuarios usan en su propia cuenta.
Mantener el bot en línea 24/7
Su bot solo está en línea mientras su programa está en marcha. En su propia PC, eso termina al apagarla, al cerrar la laptop o con una actualización de Windows. Para un bot del que dependen otras personas necesita una máquina siempre encendida. En el hosting de bots de Discord de HostValues, el bot corre en el panel:
- Pida un plan para bots. El servidor está listo después del pago.
- Suba sus archivos en la pestaña File managers o por SFTP, sin la carpeta
node_modules, y cree ahí el archivo.envcon su token. - En Startup, elija en Docker Image el entorno: Node.js 18, 20, 22, 24 o 26, Python 3.11 o Java 17 o 21, y escriba su archivo de inicio, por ejemplo
index.jsobot.py. - Paquetes: con Python, el panel instala al arrancar los paquetes de
requirements.txt. Con Node.js, si al arrancar aparece «Cannot find module», pulse Reinstall Server en Settings después de subir elpackage.json. - Inicie el bot en Console. Si aparece su mensaje de arranque, está en línea.
Si el bot se cae, el panel lo reinicia automáticamente. Si vuelve a caerse poco después, el panel ya no lo reinicia, para que un error en su código no provoque un bucle infinito; la causa queda en la consola. Todos los planes incluyen bases de datos MySQL, que crea en la pestaña Databases, y 2 espacios de copia de seguridad.
| Plan | RAM | NVMe | Precio al mes | Pedir |
|---|---|---|---|---|
| Small | 1 GB | 5 GB | 1,40 € | Pedir Small |
| Medium | 2 GB | 10 GB | 2,80 € | Pedir Medium |
| Pro | 4 GB | 20 GB | 5,60 € | Pedir Pro |
Precios con IVA incluido y cancelación mensual; pagando por trimestre ahorra un 10 % y por año un 15 %. Un bot sencillo de discord.js suele usar entre 100 y 200 MB, y uno de discord.py entre 80 y 150 MB, así que Small basta para la mayoría. Si quiere un bot de música, vea nuestra guía para agregar un bot de música a su servidor de Discord.
Errores frecuentes y solución
| Mensaje o síntoma | Causa | Solución |
|---|---|---|
| «An invalid token was provided» (discord.js), «Improper token has been passed» (discord.py) o código 4004 | el token no es válido: se restableció, se copió incompleto o con espacios o comillas tipográficas en el .env | genere uno nuevo con Reset Token y cópielo con cuidado |
| «Used disallowed intents» o código 4014 | el código pide un intent privilegiado que está desactivado en el portal | active el interruptor en la página Bot o quite el intent del código, y reinicie |
| El bot está en línea pero no responde a !comandos | sin Message Content Intent, el texto llega vacío | active el intent en el portal y en el código, o pase a comandos de barra |
| Los mensajes de bienvenida no llegan | falta el Server Members Intent | actívelo en el portal y en el código |
| Su servidor no aparece al invitar el bot | no tiene el permiso de administrar ese servidor | pida a un administrador que abra el enlace |
| El bot se desconecta al apagar la PC | el programa solo corre en su computadora | alójelo en un servidor que esté siempre encendido |
Si prefiere empezar el código en Python, nuestra guía para crear un bot de Discord con Python le sirve de base.
Preguntas frecuentes
¿Dónde encuentro el token de mi bot en el Discord Developer Portal?
En la página Bot, en la sección Token. Discord solo muestra un token justo después de pulsar Reset Token. Si no lo guardó, genere uno nuevo con Reset Token; el antiguo deja de funcionar y tiene que cambiarlo en todos los sitios donde corre el bot.
¿Qué Privileged Intents necesita mi bot de Discord?
Solo los que una función necesita de verdad. Los comandos de barra no necesitan ninguno. Los mensajes de bienvenida necesitan el Server Members Intent, los comandos con prefijo como !help el Message Content Intent y los paneles de estado el Presence Intent.
¿Qué diferencia hay entre la Application ID y el token?
La Application ID es pública y va como client_id en el enlace de invitación. El token es secreto: con él su bot inicia sesión en Discord, y quien lo tenga controla el bot.
¿Tengo que pedir permiso para usar los intents privilegiados?
Desde el 10 de junio de 2026, solo si su app es visible para 10.000 usuarios o más. Por debajo de ese número, los activa en el portal. Por encima, solicita el acceso y lo renueva cada año.
¿Mi bot sigue en línea si apago la PC?
No. Un bot solo funciona mientras su programa está en marcha. Para que esté disponible las 24 horas necesita un servidor siempre encendido, por ejemplo un plan de bots en HostValues desde 1,40 € al mes.
Su bot de Discord siempre en línea
Desde €1,40 al mes. En línea en pocos minutos, sin permanencia y con protección DDoS incluida.
Ver planes Pedir ahora¿Nuevo en HostValues? Use el código WELKOM10 y obtenga un 10% de descuento en su primer pedido.