Coloque as chaves e configurações do seu bot na página Bot, seção Ambiente: adicione-as uma a uma ou cole o seu arquivo .env inteiro, marque Manter este valor em segredo para senhas e chaves e depois reinicie o bot. Seu código as lê como qualquer variável de ambiente.
Por que aqui e não em um arquivo
- Os valores salvos aqui são guardados criptografados pelo painel, não nos arquivos do seu servidor. Eles não aparecem em Files, por SFTP nem em backups.
- Um valor secreto nunca é mostrado de novo, nem para você nem para quem você der acesso: a lista mostra pontos e os últimos quatro caracteres.
- Você pode compartilhar o seu código, ou colocá-lo no GitHub, sem vazar uma chave.
Adicione uma variável
- Abra o servidor do seu bot no painel, depois a página Bot, seção Ambiente.
- Em Adicionar uma variável, digite o Nome, por exemplo
OPENAI_API_KEY, e o Valor. - Manter este valor em segredo é marcado sozinho para nomes que parecem segredos (terminados em
KEY,TOKEN,SECRET,PASSWORDe parecidos, ou uma URL de banco de dados). Marque ou desmarque conforme precisar. - Clique em Adicionar variável.
- A seção diz As mudanças valem na próxima vez que o bot iniciar. Se o bot estiver rodando, clique em Reiniciar agora.

Cole um arquivo .env inteiro
- Clique em Colar um arquivo .env.
- Cole o conteúdo do seu
.env. Nada é enviado ainda: a janela lista os nomes encontrados, com um selo Segredo nos que serão salvos como segredos. - Os nomes que o painel não aceita são marcados como Ignorada: o token do bot com qualquer um dos seus nomes (
DISCORD_TOKEN,TOKEN,BOT_TOKEN,DISCORD_BOT_TOKEN),GIT_TOKEN, as configurações do tipo do seu bot (elas ficam na seção Código), nomes do sistema comoPATHe nomes que mudam como um runtime inicia, comoPYTHONPATH,NODE_PATHou qualquer um que comece comLD_. Uma nota diz onde cada um deve ficar. As linhas que ele não consegue ler são listadas com o número da linha. - Clique no botão de importar, por exemplo Importar 6 variáveis. As linhas ignoradas ficam fora da contagem.
As formas usuais do .env funcionam: KEY=value, export KEY=value, comentários e valores entre aspas simples, como 'single', ou duplas, como "double" (aspas duplas podem ocupar várias linhas). Se um nome aparece duas vezes, vale o último.

Leia as variáveis no seu código
| Linguagem | Código |
|---|---|
| Node.js, Bun | process.env.OPENAI_API_KEY |
| Python | os.environ["OPENAI_API_KEY"] |
| Java | System.getenv("OPENAI_API_KEY") |
| C# | Environment.GetEnvironmentVariable("OPENAI_API_KEY") |
| Deno | Deno.env.get("OPENAI_API_KEY") |
| Go | os.Getenv("OPENAI_API_KEY") |
| Rust | std::env::var("OPENAI_API_KEY") |
Seu código já usa dotenv ou python-dotenv? Ele continua funcionando: essas bibliotecas não sobrescrevem uma variável que já está definida, então os valores do painel valem mais do que um arquivo .env esquecido.
Mude ou remova uma variável
- Um valor simples tem Editar; um segredo tem Substituir. Um segredo começa vazio porque o valor dele nunca é enviado de volta: digite o novo valor e clique em Salvar.
- Remover pergunta Remover OPENAI_API_KEY?; confirme com Remover variável. O bot deixa de ter a variável no próximo início.
Regras e limites
- Um nome tem letras, dígitos e sublinhados, até 64 caracteres, e não começa com um dígito.
- Um valor tem até 4 KB. Um bot pode ter até 50 variáveis.
- Os nomes que o próprio painel define são recusados com
... is set by PlayNHost and cannot be changed here.: os nomes do token (DISCORD_TOKEN,TOKEN,BOT_TOKEN,DISCORD_BOT_TOKEN),GIT_TOKEN,PATH,HOME,NODE_OPTIONS, nomes que começam comSERVER_ouPNH_e as configurações do tipo do seu bot, comoMAIN_FILE. - Os nomes que mudam como um runtime ou o shell inicia são recusados em Adicionar uma variável com
... controls how the bot starts and cannot be set here.(um.envcolado os marca como Ignorada), por exemploPYTHONPATH,NODE_PATH,JAVA_TOOL_OPTIONSou qualquer um que comece comLD_,NPM_CONFIG_,PIP_ouGIT_.
Seu token do Discord chega ao seu código sem nenhuma variável sua, como DISCORD_TOKEN e também como TOKEN, BOT_TOKEN e DISCORD_BOT_TOKEN. É por isso que esses nomes não podem ser definidos aqui.
Um bot pronto não tem uma lista própria de variáveis: as chaves dele são campos fixos no card Credenciais desta seção. Uma chave sem a qual o bot não consegue iniciar mostra Obrigatório, e até ela ser definida o card Configurar seu bot em Visão geral mantém Iniciar bot desativado e leva até aqui com Abrir Ambiente: Como mudar as configurações de um bot pronto.
Relacionados: Como manter o token do seu bot do Discord seguro, Como usar um banco de dados com seu bot do Discord.



