Layer 229
TgScheme
Layer 229 · Telegram for Android 12.10.4 (7099) · Stable
Administrators can now welcome new members with ephemeral introductory messages, while bots gain dedicated tools for Star subscriptions and flexible interactive buttons.
Ephemeral Welcome Messages
Group administrators and channel owners can now set up ephemeral welcome messages that appear automatically for new members without cluttering the chat history. A new administrator right, manage_welcome_messages, allows delegating the setup and removal of these greetings. Bots can also update or edit ephemeral messages and receive callback queries tailored to transient member onboarding.
Modular Keyboard and Document Buttons
Interactive layouts receive an overhaul with modular button types for standard keyboards, inline markups, and Instant View pages. Developers can combine custom styles with link buttons, web app launchers, or user profile pickers. Instant View articles can now embed structured button rows alongside documents and styled blockquotes.
Bot Subscriptions and Community Links
Bots can track Star subscriptions in real time as members renew, cancel, or encounter payment issues. Additionally, communities offer enhanced management tools to inspect participant chat memberships and review pending link requests between associated channels and groups.
New in this build
Telegram for Android 12.10.4 (7099), compared with the previous build of Layer 229
Deleted Constructors
- Removed inputPasskeyCredentialFirebasePNV
All changes in Layer 229
Compared with Layer 228
New Methods
- Added auth.initFirebasePnvLogin — Initiates phone number verification login using Firebase.
- Added auth.finishFirebasePnvLogin — Completes phone number verification login using a Google token.
- Added auth.firebasePnvSignUp — Registers a new user account verified through Firebase phone number verification.
- Added ephemeral.editMessage — Edits an ephemeral message previously sent to a user.
- Added ephemeral.deleteWelcomeMessage — Deletes a specific ephemeral welcome message from a chat.
- Added ephemeral.deleteAllWelcomeMessages — Deletes all ephemeral welcome messages configured for a chat.
- Added ephemeral.getWelcomeMessages — Fetches the list of active ephemeral welcome messages configured for a chat.
Changed Methods
- Removed ephemeral_receiver_bot_id parameter in messages.sendMessage
- Added from_ephemeral parameter in messages.forwardMessages
- Added emojify parameter in messages.composeRichMessageWithAI
- Changed type of messages.composeRichMessageWithAI from ComposedRichMessageWithAI to messages.ComposedRichMessageWithAI
- Changed type of messages.requestChatJoinWebView from WebViewResultUrl to WebViewResult
- Changed type of communities.getPeerLinkRequests from PeerLinkRequests to communities.PeerLinkRequests
- Changed type of communities.getParticipantJoinedChats from ParticipantJoinedChats to communities.ParticipantJoinedChats
- Added invert_media, anchor, noforwards, welcome parameters, changed type of peer from InputPeer to flags.8?InputPeer, changed type of entities from flags.1?MessageEntity to flags.1?Vector<MessageEntity> in ephemeral.sendMessage
- Added flags parameter, changed type of peer from InputPeer to flags.0?InputPeer in ephemeral.deleteMessage
- Added result parameter in messages.setWebViewResult
Deleted Methods
- Removed messages.exportBotToken
New Constructors
- Added messageActionChatJoinedViaCommunity — Indicates that a user joined the chat through an associated community.
- Added updateEphemeralBotCallbackQuery — Notifies a bot about a callback button pressed inside an ephemeral message.
- Added updateBotStarsSubscription — Notifies a bot about a change in a user's Telegram Stars subscription status.
- Added sendMessageStopDraftAction — Cancels an ongoing message draft generation action.
- Added textButton — Represents an interactive button element embedded within rich text.
- Added pageBlockButtonRow — Defines a row of interactive buttons within an Instant View page.
- Added pageBlockDocument — Defines an attached document block within an Instant View page.
- Added communities.peerLinkRequests — Contains a list of pending requests to link peers to a community.
- Added communities.participantJoinedChats — Lists the chats joined by a specific community participant.
- Added messages.translatedRichMessage — Contains the translated version of a rich message.
- Added messages.composedRichMessageWithAI — Contains a rich message composed or polished by AI assistance.
- Added buttonTypeDefault — Defines a standard keyboard button.
- Added buttonTypeRequestPhone — Defines a keyboard button that prompts the user to share their phone number.
- Added buttonTypeRequestGeoLocation — Defines a keyboard button that prompts the user to share their current location.
- Added buttonTypeRequestPoll — Defines a keyboard button that opens the poll creation interface.
- Added buttonTypeRequestPeer — Defines a keyboard button that prompts the user to select and share peers.
- Added inputButtonTypeRequestPeer — Specifies criteria for requesting the user to share a peer via a keyboard button.
- Added buttonTypeSimpleWebView — Defines a keyboard button that opens a simple web view URL.
- Added inlineButtonTypeUrl — Defines an inline button that opens a URL.
- Added inlineButtonTypeUrlAuth — Defines an inline button that requests authorization before opening a URL.
- Added inputInlineButtonTypeUrlAuth — Specifies authorization parameters when creating an inline URL authorization button.
- Added inlineButtonTypeWebView — Defines an inline button that launches a web application.
- Added inlineButtonTypeCallback — Defines an inline button that sends a callback query to the bot.
- Added inlineButtonTypeGame — Defines an inline button that launches an attached HTML5 game.
- Added inlineButtonTypeBuy — Defines an inline button that opens a payment checkout interface.
- Added inlineButtonTypeSwitchInline — Defines an inline button that prompts the user to select a chat and insert an inline query.
- Added inlineButtonTypeUserProfile — Defines an inline button that opens a specific user profile.
- Added inputInlineButtonTypeUserProfile — Specifies an input user to target when creating a user profile inline button.
- Added inlineButtonTypeCopy — Defines an inline button that copies specified text to the clipboard.
- Added inlineButtonTypeDisabled — Defines a disabled inline button.
- Added keyboardInlineButton — Represents an inline keyboard button with styling and behavior metadata.
- Added keyboardInlineButtonRow — Represents a row of inline keyboard buttons.
- Added richButtonStyle — Specifies the visual style and background accent for a rich button.
- Added pageButton — Represents a styled interactive button inside an Instant View block.
- Added ephemeral.welcomeMessagesNotModified — Indicates that the list of ephemeral welcome messages has not changed.
- Added ephemeral.welcomeMessages — Contains the list of ephemeral welcome messages configured for a chat.
- Added auth.firebasePnvIntent — Contains credentials and intent data needed for Firebase phone number verification.
Changed Constructors
- Added linked_community_id parameter in user
- Added has_welcome_messages parameter, changed type of exported_invite from flags.13?ChatInviteExported to flags.13?ExportedChatInvite in chatFull
- Added has_welcome_messages parameter in channelFull
- Added peer_link_requests_pending parameter, removed requests_pending parameter in communityFull
- Removed webpage parameter in messageMediaDocument
- Added name_hidden, message parameters in messageActionStarGiftUnique
- Changed type of accepted from flags.0?int to flags.0?true in messageActionStarGiftPurchaseOffer
- Changed type of hash from flags.0?long to long in updateNewAuthorization
- Changed type of id from flags.13?int to int in updateShortMessage
- Changed type of id from flags.13?int to int in updateShortChatMessage
- Changed type of id from flags.1?int to int in updateShortSentMessage
- Added flags, can_stop, keep_on_stop parameters in sendMessageTextDraftAction
- Added keep_on_stop, flags, can_stop parameters in inputSendMessageRichMessageDraftAction
- Added flags, can_stop, keep_on_stop parameters in sendMessageRichMessageDraftAction
- Added type parameter in keyboardButton
- Added force_reply parameter in replyKeyboardMarkup
- Added flags, force_reply parameters, changed type of rows from Vector<KeyboardButtonRow> to Vector<KeyboardInlineButtonRow> in replyInlineMarkup
- Added flags, collapsed parameters in pageBlockBlockquote
- Added compact parameter in pageBlockTable
- Added manage_welcome_messages parameter in chatAdminRights
- Added show_name, message parameters in inputInvoiceStarGiftResale
- Changed type of has_username from flags.3?true to flags.3?Bool, changed type of forum from flags.4?true to flags.4?Bool, changed type of user_admin_rights from flags.5?ChatAdminRights to flags.1?ChatAdminRights, changed type of bot_admin_rights from flags.5?ChatAdminRights to flags.2?ChatAdminRights in requestPeerTypeChat
- Changed type of has_username from flags.3?true to flags.3?Bool, changed type of user_admin_rights from ChatAdminRights to flags.1?ChatAdminRights, changed type of bot_admin_rights from ChatAdminRights to flags.2?ChatAdminRights in requestPeerTypeBroadcast
- Removed subscription, floodskip, premium_gift, paid_message parameters in starsTransaction
- Removed can_upgrade parameter in starGift
- Changed type of messages.chatInviteJoinResultWebView from ChatInviteJoinResult to messages.ChatInviteJoinResult
- Added noforwards, invert_media, welcome_template, rich_message, chat_instance, anchor_msg_id parameters, changed type of entities from flags.2?MessageEntity to flags.2?Vector<MessageEntity>, changed type of peer_id from Peer to flags.9?Peer in ephemeralMessage
- Changed type of messages.messageEmpty from messages.MessageEmpty to messages.Message
Deleted Constructors
- Removed keyboardButtonRequestPhone
- Removed keyboardButtonCopy
- Removed messageActionCreatedBroadcastList
- Removed keyboardButtonRequestPeer
- Removed messageActionLoginUnknownLocation
- Removed keyboardButtonSimpleWebView
- Removed messageActionUserUpdatedPhoto
- Removed messageActionTTLChange
- Removed inputKeyboardButtonUserProfile
- Removed keyboardButtonBuy
- Removed keyboardButtonRequestPoll
- Removed keyboardButtonGame
- Removed messageActionUserJoined
- Removed keyboardButtonWebView
- Removed keyboardButtonSwitchInline
- Removed inputKeyboardButtonUrlAuth
- Removed messages.chatInviteJoinResultWebView
- Removed keyboardButtonUrlAuth
- Removed keyboardButtonRequestGeoLocation
- Removed inputPasskeyCredentialFirebasePNV
- Removed keyboardButtonUserProfile
- Removed keyboardButtonUrl
- Removed keyboardButtonCallback
- Removed inputKeyboardButtonRequestPeer
Schema
---types--- user#b1b8cc83 flags:# self:flags.10?true contact:flags.11?true mutual_contact:flags.12?true deleted:flags.13?true bot:flags.14?true bot_chat_history:flags.15?true bot_nochats:flags.16?true verified:flags.17?true restricted:flags.18?true min:flags.20?true bot_inline_geo:flags.21?true support:flags.23?true scam:flags.24?true apply_min_photo:flags.25?true fake:flags.26?true bot_attach_menu:flags.27?true premium:flags.28?true attach_menu_enabled:flags.29?true flags2:# bot_can_edit:flags2.1?true close_friend:flags2.2?true stories_hidden:flags2.3?true stories_unavailable:flags2.4?true contact_require_premium:flags2.10?true bot_business:flags2.11?true bot_has_main_app:flags2.13?true bot_forum_view:flags2.16?true bot_forum_can_manage_topics:flags2.17?true bot_can_manage_bots:flags2.18?true bot_guestchat:flags2.19?true bot_guard:flags2.20?true id:long access_hash:flags.0?long first_name:flags.1?string last_name:flags.2?string username:flags.3?string phone:flags.4?string photo:flags.5?UserProfilePhoto status:flags.6?UserStatus bot_info_version:flags.14?int restriction_reason:flags.18?Vector<RestrictionReason> bot_inline_placeholder:flags.19?string lang_code:flags.22?string emoji_status:flags.30?EmojiStatus usernames:flags2.0?Vector<Username> stories_max_id:flags2.5?RecentStory color:flags2.8?PeerColor profile_color:flags2.9?PeerColor bot_active_users:flags2.12?int bot_verification_icon:flags2.14?long send_paid_messages_stars:flags2.15?long linked_community_id:flags2.21?long = User; chatFull#2633421b flags:# can_set_username:flags.7?true has_scheduled:flags.8?true translations_disabled:flags.19?true has_welcome_messages:flags.21?true id:long about:string participants:ChatParticipants chat_photo:flags.2?Photo notify_settings:PeerNotifySettings exported_invite:flags.13?ExportedChatInvite bot_info:flags.3?Vector<BotInfo> pinned_msg_id:flags.6?int folder_id:flags.11?int call:flags.12?InputGroupCall ttl_period:flags.14?int groupcall_default_join_as:flags.15?Peer theme_emoticon:flags.16?string requests_pending:flags.17?int recent_requesters:flags.17?Vector<long> available_reactions:flags.18?ChatReactions reactions_limit:flags.20?int = ChatFull; channelFull#a04e8d3a flags:# can_view_participants:flags.3?true can_set_username:flags.6?true can_set_stickers:flags.7?true hidden_prehistory:flags.10?true can_set_location:flags.16?true has_scheduled:flags.19?true can_view_stats:flags.20?true blocked:flags.22?true flags2:# can_delete_channel:flags2.0?true antispam:flags2.1?true participants_hidden:flags2.2?true translations_disabled:flags2.3?true stories_pinned_available:flags2.5?true view_forum_as_messages:flags2.6?true restricted_sponsored:flags2.11?true can_view_revenue:flags2.12?true paid_media_allowed:flags2.14?true can_view_stars_revenue:flags2.15?true paid_reactions_available:flags2.16?true stargifts_available:flags2.19?true paid_messages_available:flags2.20?true has_welcome_messages:flags2.24?true id:long about:string participants_count:flags.0?int admins_count:flags.1?int kicked_count:flags.2?int banned_count:flags.2?int online_count:flags.13?int read_inbox_max_id:int read_outbox_max_id:int unread_count:int chat_photo:Photo notify_settings:PeerNotifySettings exported_invite:flags.23?ExportedChatInvite bot_info:Vector<BotInfo> migrated_from_chat_id:flags.4?long migrated_from_max_id:flags.4?int pinned_msg_id:flags.5?int stickerset:flags.8?StickerSet available_min_id:flags.9?int folder_id:flags.11?int linked_chat_id:flags.14?long location:flags.15?ChannelLocation slowmode_seconds:flags.17?int slowmode_next_send_date:flags.18?int stats_dc:flags.12?int pts:int call:flags.21?InputGroupCall ttl_period:flags.24?int pending_suggestions:flags.25?Vector<string> groupcall_default_join_as:flags.26?Peer theme_emoticon:flags.27?string requests_pending:flags.28?int recent_requesters:flags.28?Vector<long> default_send_as:flags.29?Peer available_reactions:flags.30?ChatReactions reactions_limit:flags2.13?int stories:flags2.4?PeerStories wallpaper:flags2.7?WallPaper boosts_applied:flags2.8?int boosts_unrestrict:flags2.9?int emojiset:flags2.10?StickerSet bot_verification:flags2.17?BotVerification stargifts_count:flags2.18?int send_paid_messages_stars:flags2.21?long main_tab:flags2.22?ProfileTab guard_bot_id:flags2.23?long = ChatFull; communityFull#cbb7a507 flags:# id:long about:string chat_photo:Photo linked_peers:Vector<CommunityPeer> admins_count:flags.1?int kicked_count:flags.2?int peer_link_requests_pending:flags.0?int = ChatFull; messageMediaDocument#52d8ccd9 flags:# nopremium:flags.3?true spoiler:flags.4?true video:flags.6?true round:flags.7?true voice:flags.8?true live_photo:flags.11?true document:flags.0?Document alt_documents:flags.5?Vector<Document> video_cover:flags.9?Photo video_timestamp:flags.10?int ttl_seconds:flags.2?int = MessageMedia; messageActionStarGiftUnique#7e1c1187 flags:# upgrade:flags.0?true transferred:flags.1?true saved:flags.2?true refunded:flags.5?true prepaid_upgrade:flags.11?true assigned:flags.13?true from_offer:flags.14?true craft:flags.16?true name_hidden:flags.17?true gift:StarGift can_export_at:flags.3?int transfer_stars:flags.4?long from_id:flags.6?Peer peer:flags.7?Peer saved_id:flags.7?long resale_amount:flags.8?StarsAmount can_transfer_at:flags.9?int can_resell_at:flags.10?int drop_original_details_stars:flags.12?long can_craft_at:flags.15?int message:flags.18?TextWithEntities = MessageAction; messageActionStarGiftPurchaseOffer#774278d4 flags:# accepted:flags.0?true declined:flags.1?true gift:StarGift price:StarsAmount expires_at:int = MessageAction; messageActionChatJoinedViaCommunity#4a8bfe80 community_id:long = MessageAction; updateNewAuthorization#8951abef flags:# unconfirmed:flags.0?true hash:long date:flags.0?int device:flags.0?string location:flags.0?string = Update; updateEphemeralBotCallbackQuery#7c1079d6 flags:# query_id:long user_id:long peer:flags.0?Peer msg_id:int data:bytes chat_instance:flags.1?long message:EphemeralMessage = Update; updateBotStarsSubscription#6c0d8e23 flags:# canceled:flags.0?true payment_failed:flags.1?true restored:flags.2?true user_id:long payload:bytes qts:int = Update; updateShortMessage#313bc7f8 flags:# out:flags.1?true mentioned:flags.4?true media_unread:flags.5?true silent:flags.13?true id:int user_id:long message:string pts:int pts_count:int date:int fwd_from:flags.2?MessageFwdHeader via_bot_id:flags.11?long reply_to:flags.3?MessageReplyHeader entities:flags.7?Vector<MessageEntity> ttl_period:flags.25?int = Updates; updateShortChatMessage#4d6deea5 flags:# out:flags.1?true mentioned:flags.4?true media_unread:flags.5?true silent:flags.13?true id:int from_id:long chat_id:long message:string pts:int pts_count:int date:int fwd_from:flags.2?MessageFwdHeader via_bot_id:flags.11?long reply_to:flags.3?MessageReplyHeader entities:flags.7?Vector<MessageEntity> ttl_period:flags.25?int = Updates; updateShortSentMessage#9015e101 flags:# out:flags.1?true id:int pts:int pts_count:int date:int media:flags.9?MessageMedia entities:flags.7?Vector<MessageEntity> ttl_period:flags.25?int = Updates; sendMessageTextDraftAction#3630b85a flags:# can_stop:flags.0?true keep_on_stop:flags.1?true random_id:long text:TextWithEntities = SendMessageAction; inputSendMessageRichMessageDraftAction#a937c7be flags:# can_stop:flags.0?true keep_on_stop:flags.1?true random_id:long rich_message:InputRichMessage = SendMessageAction; sendMessageRichMessageDraftAction#52564893 flags:# can_stop:flags.0?true keep_on_stop:flags.1?true random_id:long rich_message:RichMessage = SendMessageAction; sendMessageStopDraftAction#fbf902b0 random_id:long = SendMessageAction; keyboardButton#2f67a72f flags:# style:flags.10?KeyboardButtonStyle text:string type:ButtonType = KeyboardButton; replyKeyboardMarkup#85dd99d1 flags:# resize:flags.0?true single_use:flags.1?true selective:flags.2?true persistent:flags.4?true force_reply:flags.5?true rows:Vector<KeyboardButtonRow> placeholder:flags.3?string = ReplyMarkup; replyInlineMarkup#b2b15770 flags:# force_reply:flags.5?true rows:Vector<KeyboardInlineButtonRow> = ReplyMarkup; textButton#afc79cd6 flags:# text:RichText type:InlineButtonType style:flags.0?RichButtonStyle = RichText; pageBlockBlockquote#66d1670b flags:# collapsed:flags.0?true text:RichText caption:RichText = PageBlock; pageBlockTable#bf4dea82 flags:# bordered:flags.0?true striped:flags.1?true compact:flags.2?true title:RichText rows:Vector<PageTableRow> = PageBlock; pageBlockButtonRow#6d640318 flags:# align_left:flags.0?true align_center:flags.1?true align_right:flags.2?true buttons:Vector<PageButton> = PageBlock; pageBlockDocument#38fa3ba3 document_id:long caption:PageCaption = PageBlock; chatAdminRights#5fb224d5 flags:# change_info:flags.0?true post_messages:flags.1?true edit_messages:flags.2?true delete_messages:flags.3?true ban_users:flags.4?true invite_users:flags.5?true pin_messages:flags.7?true add_admins:flags.9?true anonymous:flags.10?true manage_call:flags.11?true other:flags.12?true manage_topics:flags.13?true post_stories:flags.14?true edit_stories:flags.15?true delete_stories:flags.16?true manage_direct_messages:flags.17?true manage_ranks:flags.18?true manage_linked_peers:flags.19?true manage_welcome_messages:flags.20?true = ChatAdminRights; inputInvoiceStarGiftResale#e9b0c658 flags:# ton:flags.0?true show_name:flags.2?true slug:string to_id:InputPeer message:flags.1?TextWithEntities = InputInvoice; requestPeerTypeChat#c9f06e1b flags:# creator:flags.0?true bot_participant:flags.5?true has_username:flags.3?Bool forum:flags.4?Bool user_admin_rights:flags.1?ChatAdminRights bot_admin_rights:flags.2?ChatAdminRights = RequestPeerType; requestPeerTypeBroadcast#339bef6c flags:# creator:flags.0?true has_username:flags.3?Bool user_admin_rights:flags.1?ChatAdminRights bot_admin_rights:flags.2?ChatAdminRights = RequestPeerType; starsTransaction#13659eb0 flags:# refund:flags.3?true pending:flags.4?true failed:flags.6?true gift:flags.10?true reaction:flags.11?true stargift_upgrade:flags.18?true business_transfer:flags.21?true stargift_resale:flags.22?true posts_search:flags.24?true stargift_prepaid_upgrade:flags.25?true stargift_drop_original_details:flags.26?true phonegroup_message:flags.27?true stargift_auction_bid:flags.28?true offer:flags.29?true id:string amount:StarsAmount date:int peer:StarsTransactionPeer title:flags.0?string description:flags.1?string photo:flags.2?WebDocument transaction_date:flags.5?int transaction_url:flags.5?string bot_payload:flags.7?bytes msg_id:flags.8?int extended_media:flags.9?Vector<MessageMedia> subscription_period:flags.12?int giveaway_post_id:flags.13?int stargift:flags.14?StarGift floodskip_number:flags.15?int starref_commission_permille:flags.16?int starref_peer:flags.17?Peer starref_amount:flags.17?StarsAmount paid_messages:flags.19?int premium_gift_months:flags.20?int ads_proceeds_from_date:flags.23?int ads_proceeds_to_date:flags.23?int = StarsTransaction; starGift#313a9547 flags:# limited:flags.0?true sold_out:flags.1?true birthday:flags.2?true require_premium:flags.7?true limited_per_user:flags.8?true peer_color_available:flags.10?true auction:flags.11?true id:long sticker:Document stars:long availability_remains:flags.0?int availability_total:flags.0?int availability_resale:flags.4?long convert_stars:long first_sale_date:flags.1?int last_sale_date:flags.1?int upgrade_stars:flags.3?long resell_min_stars:flags.4?long title:flags.5?string released_by:flags.6?Peer per_user_total:flags.8?int per_user_remains:flags.8?int locked_until_date:flags.9?int auction_slug:flags.11?string gifts_per_round:flags.11?int auction_start_date:flags.11?int upgrade_variants:flags.12?int background:flags.13?StarGiftBackground = StarGift; messages.chatInviteJoinResultWebView#61ca29d3 bot_id:long query_id:long users:Vector<User> = messages.ChatInviteJoinResult; communities.peerLinkRequests#2244afad flags:# total_count:int requests:Vector<CommunityPeerRequest> next_offset:flags.0?string chats:Vector<Chat> users:Vector<User> = communities.PeerLinkRequests; ephemeralMessage#dd27bee9 flags:# out:flags.0?true welcome_template:flags.5?true invert_media:flags.7?true noforwards:flags.12?true id:int from_id:Peer peer_id:flags.9?Peer receiver_id:long top_msg_id:flags.1?int date:int message:string entities:flags.2?Vector<MessageEntity> media:flags.3?MessageMedia reply_markup:flags.4?ReplyMarkup reply_to:flags.6?MessageReplyHeader rich_message:flags.8?RichMessage chat_instance:flags.10?long anchor_msg_id:flags.11?int = EphemeralMessage; communities.participantJoinedChats#8d78512a creator_chat_ids:Vector<long> joined_chat_ids:Vector<long> chats:Vector<Chat> users:Vector<User> = communities.ParticipantJoinedChats; messages.translatedRichMessage#4203998f result:Vector<RichMessage> = messages.TranslatedRichMessage; messages.composedRichMessageWithAI#4c4537c8 result:RichMessage = messages.ComposedRichMessageWithAI; buttonTypeDefault#c9dd90e9 = ButtonType; buttonTypeRequestPhone#df3d36f9 = ButtonType; buttonTypeRequestGeoLocation#9beee140 = ButtonType; buttonTypeRequestPoll#aacfff84 flags:# quiz:flags.0?Bool = ButtonType; buttonTypeRequestPeer#4f58a237 flags:# button_id:int peer_type:RequestPeerType max_quantity:int = ButtonType; inputButtonTypeRequestPeer#3fe268fe flags:# name_requested:flags.0?true username_requested:flags.1?true photo_requested:flags.2?true button_id:int peer_type:RequestPeerType max_quantity:int = ButtonType; buttonTypeSimpleWebView#c01a597a url:string = ButtonType; inlineButtonTypeUrl#eca4f8d4 url:string = InlineButtonType; inlineButtonTypeUrlAuth#bfd02da2 flags:# fwd_text:flags.0?string url:string button_id:int = InlineButtonType; inputInlineButtonTypeUrlAuth#9961bcb4 flags:# request_write_access:flags.0?true fwd_text:flags.1?string url:string bot:flags.2?InputUser = InlineButtonType; inlineButtonTypeWebView#3bcab5b4 url:string = InlineButtonType; inlineButtonTypeCallback#2955bc38 flags:# requires_password:flags.0?true data:bytes = InlineButtonType; inlineButtonTypeGame#5cd3709d = InlineButtonType; inlineButtonTypeBuy#48bad7a5 = InlineButtonType; inlineButtonTypeSwitchInline#93773ff5 flags:# same_peer:flags.0?true query:string peer_types:flags.1?Vector<InlineQueryPeerType> = InlineButtonType; inlineButtonTypeUserProfile#3fa33fcf user_id:long = InlineButtonType; inputInlineButtonTypeUserProfile#53f3ce5a user_id:InputUser = InlineButtonType; inlineButtonTypeCopy#b41d3272 copy_text:string = InlineButtonType; inlineButtonTypeDisabled#a438619d = InlineButtonType; keyboardInlineButton#11c1a322 flags:# style:flags.10?KeyboardButtonStyle text:string type:InlineButtonType = KeyboardInlineButton; keyboardInlineButtonRow#19420af6 buttons:Vector<KeyboardInlineButton> = KeyboardInlineButtonRow; richButtonStyle#3c610bd flags:# bg_primary:flags.0?true bg_danger:flags.1?true bg_success:flags.2?true link:flags.3?true = RichButtonStyle; pageButton#692a5488 flags:# text:RichText type:InlineButtonType style:flags.0?RichButtonStyle = PageButton; ephemeral.welcomeMessagesNotModified#59ffdb31 = ephemeral.WelcomeMessages; ephemeral.welcomeMessages#104fc872 hash:long messages:Vector<EphemeralMessage> = ephemeral.WelcomeMessages; auth.firebasePnvIntent#df5ac00c nonce:string digital_credential_payload:string = auth.FirebasePnvIntent; messages.messageEmpty#3f4e0648 = messages.Message; ---functions--- auth.initFirebasePnvLogin#777df37a api_id:int api_hash:string = auth.FirebasePnvIntent; auth.finishFirebasePnvLogin#2c85094c google_token:string = auth.Authorization; auth.firebasePnvSignUp#783f6b56 flags:# no_joined_notifications:flags.0?true first_name:string last_name:string = auth.Authorization; messages.sendMessage#fef48f62 flags:# no_webpage:flags.1?true silent:flags.5?true background:flags.6?true clear_draft:flags.7?true noforwards:flags.14?true update_stickersets_order:flags.15?true invert_media:flags.16?true allow_paid_floodskip:flags.19?true peer:InputPeer reply_to:flags.0?InputReplyTo message:string random_id:long reply_markup:flags.2?ReplyMarkup entities:flags.3?Vector<MessageEntity> schedule_date:flags.10?int schedule_repeat_period:flags.24?int send_as:flags.13?InputPeer quick_reply_shortcut:flags.17?InputQuickReplyShortcut effect:flags.18?long allow_paid_stars:flags.21?long suggested_post:flags.22?SuggestedPost rich_message:flags.23?InputRichMessage = Updates; messages.forwardMessages#13704a7c flags:# silent:flags.5?true background:flags.6?true with_my_score:flags.8?true drop_author:flags.11?true drop_media_captions:flags.12?true noforwards:flags.14?true allow_paid_floodskip:flags.19?true from_ephemeral:flags.25?true from_peer:InputPeer id:Vector<int> random_id:Vector<long> to_peer:InputPeer top_msg_id:flags.9?int reply_to:flags.22?InputReplyTo schedule_date:flags.10?int schedule_repeat_period:flags.24?int send_as:flags.13?InputPeer quick_reply_shortcut:flags.17?InputQuickReplyShortcut effect:flags.18?long video_timestamp:flags.20?int allow_paid_stars:flags.21?long suggested_post:flags.23?SuggestedPost = Updates; messages.composeRichMessageWithAI#8d7ae6af flags:# proofread:flags.0?true emojify:flags.3?true text:flags.4?InputRichMessage translate_to_lang:flags.1?string tone:flags.2?InputAiComposeTone = messages.ComposedRichMessageWithAI; messages.requestChatJoinWebView#ba9ee679 flags:# query_id:long theme_params:flags.0?DataJSON platform:string = WebViewResult; messages.setWebViewResult#e41cd11d query_id:long result:InputBotInlineResult = Bool; communities.getPeerLinkRequests#93773344 community:InputChannel offset:string limit:int = communities.PeerLinkRequests; communities.getParticipantJoinedChats#f87eabab community:InputChannel participant:InputPeer = communities.ParticipantJoinedChats; ephemeral.sendMessage#ba8d5f35 flags:# invert_media:flags.6?true welcome:flags.7?true anchor:flags.9?true noforwards:flags.10?true peer:flags.8?InputPeer receiver_id:InputUser query_id:flags.0?long message:string entities:flags.1?Vector<MessageEntity> media:flags.2?InputMedia reply_markup:flags.3?ReplyMarkup rich_message:flags.4?InputRichMessage random_id:long reply_to:flags.5?InputReplyTo = Updates; ephemeral.deleteMessage#92f6e797 flags:# peer:flags.0?InputPeer receiver_id:InputUser id:int = Bool; ephemeral.editMessage#cf9c725b flags:# invert_media:flags.5?true welcome:flags.6?true peer:flags.7?InputPeer receiver_id:InputUser id:int message:flags.0?string media:flags.3?InputMedia entities:flags.1?Vector<MessageEntity> reply_markup:flags.2?ReplyMarkup rich_message:flags.4?InputRichMessage = Updates; ephemeral.deleteWelcomeMessage#e882a9e1 peer:InputPeer id:int = Bool; ephemeral.deleteAllWelcomeMessages#734f9721 peer:InputPeer = Bool; ephemeral.getWelcomeMessages#db9ac18d peer:InputPeer hash:long = ephemeral.WelcomeMessages;