Rich Messages
- Added the class RichMessageButton representing a button in a RichMessage.
- Added the class RichTextButton.
- Added the classes RichBlockButtons and InputRichBlockButtons.
- Added the field is_compact to the classes RichBlockTable and InputRichBlockTable.
- Added the classes RichBlockExpandableBlockQuotation and InputRichBlockExpandableBlockQuotation representing a block quotation, which can be expanded or collapsed back.
- Added the classes RichBlockDocument and InputRichBlockDocument, containing a file.
- Added support for links of the form tg://document?id= for general file uploads in rich messages.
Ephemeral messages
- Added the class EphemeralMessageParameters and replaced the parameters receiver_user_id and callback_query_id in the methods sendMessage, sendAnimation, sendAudio, sendDocument, sendLivePhoto, sendPhoto, sendSticker, sendVideo, sendVideoNote, sendVoice, sendContact, sendLocation and sendVenue with the parameter ephemeral_message_parameters.
- Added the parameter ephemeral_message_parameters to the method sendRichMessage.
- Added the field replace_callback_query_message to the class EphemeralMessageParameters, which allows bots to show an ephemeral message in place of the original message.
- Supported upload of new files in editEphemeralMessageMedia.
- Added the parameter show_caption_above_media to the method editEphemeralMessageCaption.
- Added the parameter rich_message to the method editEphemeralMessageText.
- Added the field can_send_welcome_messages to the classes ChatAdministratorRights and ChatMemberAdministrator.
- Added the parameter can_send_welcome_messages to the method promoteChatMember.
Reply markup
- Added the class DisabledButton and the field disabled to the class InlineKeyboardButton.
- Added the field force_reply to the classes InlineKeyboardMarkup and ReplyKeyboardMarkup.
General
- Added the parameters can_stop and keep_on_stop to the methods sendMessageDraft and sendRichMessageDraft.
- Added updates about user stopping message generation, represented by the class MessageGenerationStopped and the field stopped_message_generation in the class Update.
- Added the class CommunityChatJoined and the field community_chat_joined to the class Message for service messages about join of a chat from a community.
- Added the fields text, entities and is_private to the class UniqueGiftInfo.
Rich Messages
- Added the class InputRichMessageMedia and the field media to the class InputRichMessage, allowing bots to explicitly specify media used in markdown or html formatting when sending a rich message.
- Added the class InputMediaVoiceNote, representing a voice message to be sent.
- Added the class InputRichBlockListItem, which represents an item in a list to be sent.
- Added the classes InputRichBlockParagraph, InputRichBlockSectionHeading, InputRichBlockPreformatted, InputRichBlockFooter, InputRichBlockDivider, InputRichBlockMathematicalExpression, InputRichBlockAnchor, InputRichBlockList, InputRichBlockBlockQuotation, InputRichBlockPullQuotation, InputRichBlockCollage, InputRichBlockSlideshow, InputRichBlockTable, InputRichBlockDetails, InputRichBlockMap, InputRichBlockAnimation, InputRichBlockAudio, InputRichBlockPhoto, InputRichBlockVideo, InputRichBlockVoiceNote and InputRichBlockThinking, which represent different types of blocks available to format an outgoing rich message.
- Added the field blocks to the class InputRichMessage, allowing bots to specify rich message formatting via block entities.
Ephemeral Messages
- Introduced support for Ephemeral Messages, allowing bots to send group messages and receive commands that are visible only to a specific user and the bot.
- Added the field is_ephemeral to the class BotCommand.
- Added the field receiver_user to the class Message.
- Added the field ephemeral_message_id to the class Message.
- Added the parameters receiver_user_id and callback_query_id to the methods sendMessage, sendAnimation, sendAudio, sendDocument, sendLivePhoto, sendPhoto, sendSticker, sendVideo, sendVideoNote, sendVoice, sendContact, sendLocation, sendVenue.
- Added the field ephemeral_message_id to the class ReplyParameters, allowing bots to reply to ephemeral messages.
- Marked the field message_id in the class ReplyParameters as optional if the field ephemeral_message_id is present.
- Added the methods editEphemeralMessageText, editEphemeralMessageMedia, editEphemeralMessageCaption, and editEphemeralMessageReplyMarkup allowing bots to edit ephemeral messages.
- Added the method deleteEphemeralMessage allowing bots to delete ephemeral messages.
Communities
- Introduced initial support for Communities - several supergroups, channels, and bots linked together around a shared topic or audience.
- Added the class Community which represents a community.
- Added the class CommunityChatAdded and the field community_chat_added to the class Message.
- Added the class CommunityChatRemoved and the field community_chat_removed to the class Message.
- Added the field community to the class ChatFullInfo.
General
- Added updates about changes to a user payment subscription, represented by the class BotSubscriptionUpdated and the field subscription in the class Update.
- Hardened the security of Mini Apps by disallowing the usage of Mini App methods from origins different from the original Mini App domain. The protection will be automatically enabled for all Mini Apps on July 20, 2026. You can opt-out from the protection through the @BotFather Mini App. If you do so, you acknowledge that it is the responsibility of the bot to ensure that the Mini App has no links to untrusted sites.
Rich Messages
- Added support for Rich Messages, allowing bots to send highly structured text and stream AI-generated replies with seamless rich formatting.
- Added the classes RichTextBold, RichTextItalic, RichTextUnderline, RichTextStrikethrough, RichTextSpoiler, RichTextDateTime, RichTextTextMention, RichTextSubscript, RichTextSuperscript, RichTextMarked, RichTextCode, RichTextCustomEmoji, RichTextMathematicalExpression, RichTextUrl, RichTextEmailAddress, RichTextPhoneNumber, RichTextBankCardNumber, RichTextMention, RichTextHashtag, RichTextCashtag, RichTextBotCommand, RichTextAnchor, RichTextAnchorLink, RichTextReference and RichTextReferenceLink, which represent different types of rich formatted text.
- Added the class RichText, which represents rich formatted text.
- Added the class RichBlockCaption, which represents the caption of a rich formatted text.
- Added the class RichBlockTableCell, which represents a cell in a table.
- Added the class RichBlockListItem, which represents an item in a list.
- Added the classes RichBlockParagraph, RichBlockSectionHeading, RichBlockPreformatted, RichBlockFooter, RichBlockDivider, RichBlockMathematicalExpression, RichBlockAnchor, RichBlockList, RichBlockBlockQuotation, RichBlockPullQuotation, RichBlockCollage, RichBlockSlideshow, RichBlockTable, RichBlockDetails, RichBlockMap, RichBlockAnimation, RichBlockAudio, RichBlockPhoto, RichBlockVideo, RichBlockVoiceNote and RichBlockThinking, which represent different types of blocks in a rich formatted message.
- Added the class RichBlock, which represents a block in a rich formatted message.
- Added the class RichMessage, which represents a rich formatted message.
- Added the field rich_message to the class Message.
- Added the class InputRichMessage, describing a rich message to send.
- Added the class InputRichMessageContent and allowed it to be used as InputMessageContent in results of inline, guest, and Web App queries.
- Added the method sendRichMessage, allowing bots to send rich messages.
- Added the method sendRichMessageDraft, allowing bots to stream partial rich messages.
- Added the parameter rich_message to the method editMessageText, allowing bots to edit rich messages.
Join Request Queries
- Added the field supports_join_request_queries to the class User.
- Added the field guard_bot to the class ChatFullInfo.
- Added the field query_id to the class ChatJoinRequest.
- Added the method answerChatJoinRequestQuery.
- Added the method sendChatJoinRequestWebApp.
Polls
- Added the class Link and the field link to the class PollMedia.
- Added the class InputMediaLink and allowed it to be used as InputPollOptionMedia.