Como criar um bot no Telegram
Como fazer um bot no Telegram com o @BotFather: o comando /newbot, o nome e um nome de usuário terminado em bot, o token e como protegê-lo, comandos, botões e onde rodar o código do bot.
Você cria um bot do Telegram em um chat com o bot oficial @BotFather: envie a ele /newbot, dê um nome ao bot e escolha um nome de usuário que termine em bot. O BotFather responde com um token — a chave que o seu programa usa para controlar o bot. Criar um bot não custa nada: o Telegram não cobra usuários nem desenvolvedores pela plataforma de bots. Mas o BotFather apenas registra o bot. Para ele responder a alguém, você precisa de um programa rodando no seu computador ou em um servidor.
Como criar um bot no BotFather
- Abra o @BotFather e toque em Iniciar.
- Envie o comando
/newbot. - Digite o nome do bot — o nome de exibição dele.
- Digite o nome de usuário — o endereço do bot, como
@minha_loja_bot. Ele deve ter de 5 a 32 caracteres, apenas letras latinas, números e sublinhados, e terminar embot. - O BotFather envia o token. O bot agora existe.
Você pode mudar o nome depois com /setname, mas, segundo a documentação do Telegram, o nome de usuário não pode ser mudado após a criação — escolha-o com cuidado.
O token: o que é e como mantê-lo seguro
Um token parece uma sequência de números e letras separada por dois-pontos. Quem o tem controla totalmente o bot, então o conselho do Telegram é guardá-lo em um lugar seguro e compartilhá-lo só com quem precisa de acesso direto.
- Nunca coloque o token em código público, no GitHub nem em chats.
- Se ele vazar, a documentação do Telegram cita o comando
/tokenno BotFather para gerar um novo. Depois atualize-o em todos os lugares em que o seu programa o usa. - O token serve só para bots.
api_ideapi_hashsão outras chaves, para programas que entram como usuário: como obtê-las.
O que configurar no BotFather
/mybots abre um menu interativo de configurações dos seus bots; o mesmo está disponível no Mini App do BotFather. A aparência do bot também pode ser definida com comandos separados:
/setname— o nome do bot./setdescription— a descrição do bot, um texto curto de até 512 caracteres./setabouttext— a informação “Sobre”, um texto mais curto de até 120 caracteres./setuserpic— a foto de perfil do bot./setcommands— a lista de comandos; o Telegram os sugere quando alguém digita/./setjoingroups— se o bot pode ser adicionado a grupos./setprivacy— quais mensagens o bot recebe em grupos./deletebot— exclui o bot e libera o nome de usuário dele.
Fazendo o bot responder
Um bot é um programa que conversa com o Telegram pela Bot API. Cada requisição vai para https://api.telegram.org/bot<token>/METHOD. Há duas formas de receber mensagens, e elas são mutuamente exclusivas:
- getUpdates (long polling): o seu programa pede ao Telegram as novas mensagens. É o começo mais fácil — você não precisa de um endereço público.
- Webhook: o Telegram envia as mensagens ao seu servidor. Exige HTTPS e uma das portas 443, 80, 88 ou 8443.
Você pode escrever o código em qualquer linguagem capaz de fazer requisições HTTP. Bibliotecas populares incluem aiogram e python-telegram-bot para Python, e grammY e Telegraf para JavaScript. O tutorial oficial percorre um bot em Java: do BotFather ao “Hello World”. Você pode rodar o bot no seu próprio computador enquanto ele estiver ligado, ou em uma VPS para que funcione o dia todo.
Botões e comandos em um bot
- Comandos são palavras como
/startque o bot trata; a lista de dicas é definida com/setcommands. - Botões inline sob uma mensagem não enviam texto ao chat: eles enviam ao bot um toque ou abrem um link.
- Teclados de resposta mostram respostas prontas no lugar do teclado habitual.
- Mini Apps são interfaces completas que abrem dentro do Telegram.
Mais na visão geral dos recursos de bots.
Pagamentos em um bot
Bens e serviços digitais em bots são pagos com Estrelas do Telegram: a fatura usa a moeda XTR, e nenhum provedor de pagamento é necessário. Como configurar está em aceitar Estrelas no seu bot; as Estrelas que o bot recebeu são sacadas pelo Fragment — como sacar Estrelas de um bot.
Precisa que o seu programa compre Estrelas ou Premium para os usuários dele? O bot Shiba Bank tem uma API para isso: API de Estrelas do Telegram.
Perguntas frequentes
Como crio um bot do Telegram sem programar?
Dá para registrar um bot em um minuto pelo @BotFather, mas, para ele fazer alguma coisa, é preciso código. O próprio Telegram observa que criar um bot exige pelo menos algum conhecimento de programação.
Quanto custa criar um bot do Telegram?
Nada: o Telegram não cobra usuários nem desenvolvedores pela plataforma de bots. Você só paga pelo seu próprio servidor, se hospedar o bot nele.
O que é o BotFather?
O bot oficial do Telegram para criar bots e gerenciá-los: nome, descrição, imagem, comandos e token.
Como obtenho um token do BotFather?
O token chega logo depois de /newbot. Se ele vazar, o comando /token no BotFather gera um novo.
Que nome de usuário um bot pode ter?
De 5 a 32 caracteres: letras latinas, números e sublinhados, terminando em bot, por exemplo minha_loja_bot.
Como adiciono botões a um bot do Telegram?
Os botões são definidos no código do bot: botões inline sob uma mensagem e teclados de resposta. A lista de comandos do menu / é definida no BotFather com /setcommands.


