Bots are simply Telegram accounts operated by software — not people — and they'll often have AI features. They can do anything — teach, play, search, broadcast, remind, connect, integrate with other services, or even pass commands to the Internet of Things.

Please remember that the bot platform is a feature for developers, not end users. There is no out-of-the-box way to create a bot — you'll need at least some skills at computer programming to build your own bot, but you can always check out @StoreBot to see what others are making (@StoreBot itself was not created by Telegram).


Bot FAQ

Where can I submit bot related suggestions?

The Bot API is still in its infancy. There are many potential features to consider and implement. Telegram is currently studying what people do with their bots to see which directions will be the most beneficial for the platform. Please send suggestions to @BotSupport.

Where can I find example bot code to help me create my own bot?

Here are some third party code examples:

Can bots download files?

Bots cannot download files and media yet. Currently, bots can only send a file to a user by file_id. Telegram is still working on the Bot API and many more options will become available in the future.

Why are my webhooks not working?

You will need a valid SSL certificate for webhooks to work. Please note that Telegram currently does not support self-signed certificates, but CloudFlare's Universal SSL in Flexible SSL mode will work with the Bot API.

At this moment Telegram supports these ports for webhooks:
88, 443, 8443, and 80.

Are Secret Chats with bots possible?

The Bot API does not support Secret Chats at the moment. End-to-end encrypted conversations with bots do not sound very mass market. But, while Telegram doubts this is something the Bot API needs urgently, it is already possible to achieve Secret Chats with bots using pre-platform Telegram CLI-based code.

Which command is my bot going to receive?

A Bot in a group is receiving only commands addressed to it or those that have no real destination; regardless privacy setting.

For example, in a group with two bots @TelegramTest1Bot and @TelegramTest2Bot:

  1. /command@TelegramTest1Bot —> Will only be received by @TelegramTest1Bot
  2. /command@TelegramTest2Bot —> Will only be received by @TelegramTest2Bot
  3. /command —> Will be received by both bots @TelegramTest1Bot and @TelegramTest2Bot