telegram-crawler/data/corefork.telegram.org/api/layers.html
2022-03-14 15:01:50 +00:00

507 lines
94 KiB
HTML

<!DOCTYPE html>
<html class="">
<head>
<meta charset="utf-8">
<title>Layers</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta property="description" content="Below you will find information on schema changes. For more details on the use of layers, see Invoking API methods.
Layer…">
<meta property="og:title" content="Layers">
<meta property="og:image" content="">
<meta property="og:description" content="Below you will find information on schema changes. For more details on the use of layers, see Invoking API methods.
Layer…">
<link rel="shortcut icon" href="/favicon.ico?4" type="image/x-icon" />
<link href="/css/bootstrap.min.css?3" rel="stylesheet">
<link href="/css/telegram.css?219" rel="stylesheet" media="screen">
<style>
</style>
</head>
<body class="preload">
<div class="dev_page_wrap">
<div class="dev_page_head navbar navbar-static-top navbar-tg">
<div class="navbar-inner">
<div class="container clearfix">
<ul class="nav navbar-nav navbar-right hidden-xs"><li class="navbar-twitter"><a href="https://twitter.com/telegram" target="_blank" data-track="Follow/Twitter" onclick="trackDlClick(this, event)"><i class="icon icon-twitter"></i><span> Twitter</span></a></li></ul>
<ul class="nav navbar-nav">
<li><a href="//telegram.org/">Home</a></li>
<li class="hidden-xs"><a href="//telegram.org/faq">FAQ</a></li>
<li class="hidden-xs"><a href="//telegram.org/apps">Apps</a></li>
<li class="active"><a href="/api">API</a></li>
<li class=""><a href="/mtproto">Protocol</a></li>
<li class=""><a href="/schema">Schema</a></li>
</ul>
</div>
</div>
</div>
<div class="container clearfix">
<div class="dev_page">
<div id="dev_page_content_wrap" class=" ">
<div class="dev_page_bread_crumbs"><ul class="breadcrumb clearfix"><li><a href="/api" >API</a></li><i class="icon icon-breadcrumb-divider"></i><li><a href="/api/layers" >Layers</a></li></ul></div>
<h1 id="dev_page_title">Layers</h1>
<div id="dev_page_content"><!-- scroll_nav -->
<p>Below you will find information on schema changes. For more details on the use of layers, see <a href="/api/invoking#layers">Invoking API methods</a>.</p>
<h3><a class="anchor" href="#layer-139" id="layer-139" name="layer-139"><i class="anchor-icon"></i></a><a href="/schema?layer=139">Layer 139</a></h3>
<p><a href="https://telegram.org/blog/downloads-attachments-streaming#live-streaming-with-other-apps">RTMP streams in group calls and livestreams</a>, <a href="https://telegram.org/blog/downloads-attachments-streaming#phone-number-links">link to users by their phone number</a>, <a href="https://telegram.org/blog/downloads-attachments-streaming#new-attachment-menu">browse recently sent media</a> and new report options for illegal drugs and personal details.</p>
<p>The <a href="/api/errors#error-database">RPC error database »</a> was also updated.</p>
<h4><a class="anchor" href="#schema-changes" id="schema-changes" name="schema-changes"><i class="anchor-icon"></i></a>Schema changes</h4>
<h5><a class="anchor" href="#new-methods" id="new-methods" name="new-methods"><i class="anchor-icon"></i></a>New Methods</h5>
<ul>
<li>Added <a href="/method/contacts.resolvePhone">contacts.resolvePhone</a> - Resolve a phone number to get user info, if their privacy settings allow it.</li>
<li>Added <a href="/method/phone.getGroupCallStreamChannels">phone.getGroupCallStreamChannels</a> - Get info about RTMP streams in a group call or livestream. </li>
<li>Added <a href="/method/phone.getGroupCallStreamRtmpUrl">phone.getGroupCallStreamRtmpUrl</a> - Get RTMP URL and stream key for RTMP livestreams. Can be used even before creating the actual RTMP livestream with <a href="/method/phone.createGroupCall">phone.createGroupCall</a> (the <code>rtmp_stream</code> flag must be set).</li>
<li>Added <a href="/method/messages.searchSentMedia">messages.searchSentMedia</a> - View and search recently sent media. </li>
</ul>
<h5><a class="anchor" href="#changed-methods" id="changed-methods" name="changed-methods"><i class="anchor-icon"></i></a>Changed Methods</h5>
<ul>
<li>Added <strong>rtmp_stream</strong> parameter in <a href="/method/phone.createGroupCall">phone.createGroupCall</a></li>
</ul>
<h5><a class="anchor" href="#new-constructors" id="new-constructors" name="new-constructors"><i class="anchor-icon"></i></a>New Constructors</h5>
<ul>
<li>Added <a href="/constructor/groupCallStreamChannel">groupCallStreamChannel</a> - Info about an RTMP stream in a group call or livestream</li>
<li>Added <a href="/constructor/phone.groupCallStreamChannels">phone.groupCallStreamChannels</a> - Info about RTMP streams in a group call or livestream</li>
<li>Added <a href="/constructor/inputReportReasonIllegalDrugs">inputReportReasonIllegalDrugs</a> - Report for illegal drugs</li>
<li>Added <a href="/constructor/inputReportReasonPersonalDetails">inputReportReasonPersonalDetails</a> - Report for divulgation of personal details</li>
<li>Added <a href="/constructor/phone.groupCallStreamRtmpUrl">phone.groupCallStreamRtmpUrl</a> - RTMP URL and stream key to be used in streaming software</li>
</ul>
<h5><a class="anchor" href="#changed-constructors" id="changed-constructors" name="changed-constructors"><i class="anchor-icon"></i></a>Changed Constructors</h5>
<ul>
<li>Added <strong>rtmp_stream</strong>, <strong>listeners_hidden</strong> parameters in <a href="/constructor/groupCall">groupCall</a></li>
</ul>
<h4><a class="anchor" href="#schema" id="schema" name="schema"><i class="anchor-icon"></i></a>Schema</h4>
<div><pre><code><a href="/constructor/groupCall">groupCall</a>#d597650c flags:<a href="/type/%23">#</a> join_muted:flags.1?<a href="/constructor/true">true</a> can_change_join_muted:flags.2?<a href="/constructor/true">true</a> join_date_asc:flags.6?<a href="/constructor/true">true</a> schedule_start_subscribed:flags.8?<a href="/constructor/true">true</a> can_start_video:flags.9?<a href="/constructor/true">true</a> record_video_active:flags.11?<a href="/constructor/true">true</a> rtmp_stream:flags.12?<a href="/constructor/true">true</a> listeners_hidden:flags.13?<a href="/constructor/true">true</a> id:<a href="/type/long">long</a> access_hash:<a href="/type/long">long</a> participants_count:<a href="/type/int">int</a> title:flags.3?<a href="/type/string">string</a> stream_dc_id:flags.4?<a href="/type/int">int</a> record_start_date:flags.5?<a href="/type/int">int</a> schedule_date:flags.7?<a href="/type/int">int</a> unmuted_video_count:flags.10?<a href="/type/int">int</a> unmuted_video_limit:<a href="/type/int">int</a> version:<a href="/type/int">int</a> = <a href="/type/GroupCall">GroupCall</a>;
<a href="/constructor/groupCallStreamChannel">groupCallStreamChannel</a>#80eb48af channel:<a href="/type/int">int</a> scale:<a href="/type/int">int</a> last_timestamp_ms:<a href="/type/long">long</a> = <a href="/type/GroupCallStreamChannel">GroupCallStreamChannel</a>;<br>
<a href="/constructor/phone.groupCallStreamChannels">phone.groupCallStreamChannels</a>#d0e482b2 channels:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/GroupCallStreamChannel">GroupCallStreamChannel</a>&gt; = <a href="/type/phone.GroupCallStreamChannels">phone.GroupCallStreamChannels</a>;<br>
<a href="/constructor/inputReportReasonIllegalDrugs">inputReportReasonIllegalDrugs</a>#0a8eb2be = <a href="/type/ReportReason">ReportReason</a>;
<a href="/constructor/inputReportReasonPersonalDetails">inputReportReasonPersonalDetails</a>#9ec7863d = <a href="/type/ReportReason">ReportReason</a>;<br>
<a href="/constructor/phone.groupCallStreamRtmpUrl">phone.groupCallStreamRtmpUrl</a>#2dbf3432 url:<a href="/type/string">string</a> key:<a href="/type/string">string</a> = <a href="/type/phone.GroupCallStreamRtmpUrl">phone.GroupCallStreamRtmpUrl</a>;<br>
---functions---<br>
<a href="/method/phone.createGroupCall">phone.createGroupCall</a>#48cdc6d8 flags:<a href="/type/%23">#</a> rtmp_stream:flags.2?<a href="/constructor/true">true</a> peer:<a href="/type/InputPeer">InputPeer</a> random_id:<a href="/type/int">int</a> title:flags.0?<a href="/type/string">string</a> schedule_date:flags.1?<a href="/type/int">int</a> = <a href="/type/Updates">Updates</a>;<br>
<a href="/method/contacts.resolvePhone">contacts.resolvePhone</a>#8af94344 phone:<a href="/type/string">string</a> = <a href="/type/contacts.ResolvedPeer">contacts.ResolvedPeer</a>;<br>
<a href="/method/phone.getGroupCallStreamChannels">phone.getGroupCallStreamChannels</a>#1ab21940 call:<a href="/type/InputGroupCall">InputGroupCall</a> = <a href="/type/phone.GroupCallStreamChannels">phone.GroupCallStreamChannels</a>;
<a href="/method/phone.getGroupCallStreamRtmpUrl">phone.getGroupCallStreamRtmpUrl</a>#deb3abbf peer:<a href="/type/InputPeer">InputPeer</a> revoke:<a href="/type/Bool">Bool</a> = <a href="/type/phone.GroupCallStreamRtmpUrl">phone.GroupCallStreamRtmpUrl</a>;<br>
<a href="/method/messages.searchSentMedia">messages.searchSentMedia</a>#107e31a0 q:<a href="/type/string">string</a> filter:<a href="/type/MessagesFilter">MessagesFilter</a> limit:<a href="/type/int">int</a> = <a href="/type/messages.Messages">messages.Messages</a>;<br></code></pre></div>
<h3><a class="anchor" href="#layer-138" id="layer-138" name="layer-138"><i class="anchor-icon"></i></a><a href="/schema?layer=138">Layer 138</a></h3>
<p><a href="https://telegram.org/blog/video-stickers-better-reactions#video-stickers">Video stickers</a>, <a href="https://telegram.org/blog/video-stickers-better-reactions#better-reactions">better reactions</a>.</p>
<h4><a class="anchor" href="#schema-changes" id="schema-changes" name="schema-changes"><i class="anchor-icon"></i></a>Schema changes</h4>
<h5><a class="anchor" href="#new-methods" id="new-methods" name="new-methods"><i class="anchor-icon"></i></a>New Methods</h5>
<ul>
<li>Added <a href="/method/messages.getUnreadReactions">messages.getUnreadReactions</a> - Get unread reactions to messages you sent</li>
<li>Added <a href="/method/messages.readReactions">messages.readReactions</a> - Mark <a href="/api/reactions">message reactions »</a> as read</li>
</ul>
<h5><a class="anchor" href="#changed-methods" id="changed-methods" name="changed-methods"><i class="anchor-icon"></i></a>Changed Methods</h5>
<ul>
<li>Added <strong>videos</strong> parameter in <a href="/method/stickers.createStickerSet">stickers.createStickerSet</a></li>
</ul>
<h5><a class="anchor" href="#new-constructors" id="new-constructors" name="new-constructors"><i class="anchor-icon"></i></a>New Constructors</h5>
<ul>
<li>Added <a href="/constructor/messagePeerReaction">messagePeerReaction</a> - How a certain peer reacted to the message</li>
</ul>
<h5><a class="anchor" href="#changed-constructors" id="changed-constructors" name="changed-constructors"><i class="anchor-icon"></i></a>Changed Constructors</h5>
<ul>
<li>Added <strong>unread_reactions_count</strong> parameter in <a href="/constructor/dialog">dialog</a></li>
<li>Added <strong>videos</strong> parameter in <a href="/constructor/stickerSet">stickerSet</a></li>
<li>Added <strong>recent_reactions</strong> parameter, removed <strong>recent_reactons</strong> parameter in <a href="/constructor/messageReactions">messageReactions</a></li>
<li>Added <strong>chats</strong> parameter, changed type of <strong>reactions</strong> from <strong>Vector&lt;MessageUserReaction&gt;</strong> to <strong>Vector&lt;MessagePeerReaction&gt;</strong> in <a href="/constructor/messages.messageReactionsList">messages.messageReactionsList</a></li>
</ul>
<h5><a class="anchor" href="#deleted-constructors" id="deleted-constructors" name="deleted-constructors"><i class="anchor-icon"></i></a>Deleted Constructors</h5>
<ul>
<li>Removed messageUserReaction</li>
</ul>
<h4><a class="anchor" href="#schema" id="schema" name="schema"><i class="anchor-icon"></i></a>Schema</h4>
<div><pre><code><a href="/constructor/dialog">dialog</a>#a8edd0f5 flags:<a href="/type/%23">#</a> pinned:flags.2?<a href="/constructor/true">true</a> unread_mark:flags.3?<a href="/constructor/true">true</a> peer:<a href="/type/Peer">Peer</a> top_message:<a href="/type/int">int</a> read_inbox_max_id:<a href="/type/int">int</a> read_outbox_max_id:<a href="/type/int">int</a> unread_count:<a href="/type/int">int</a> unread_mentions_count:<a href="/type/int">int</a> unread_reactions_count:<a href="/type/int">int</a> notify_settings:<a href="/type/PeerNotifySettings">PeerNotifySettings</a> pts:flags.0?<a href="/type/int">int</a> draft:flags.1?<a href="/type/DraftMessage">DraftMessage</a> folder_id:flags.4?<a href="/type/int">int</a> = <a href="/type/Dialog">Dialog</a>;<br>
<a href="/constructor/stickerSet">stickerSet</a>#d7df217a flags:<a href="/type/%23">#</a> archived:flags.1?<a href="/constructor/true">true</a> official:flags.2?<a href="/constructor/true">true</a> masks:flags.3?<a href="/constructor/true">true</a> animated:flags.5?<a href="/constructor/true">true</a> videos:flags.6?<a href="/constructor/true">true</a> installed_date:flags.0?<a href="/type/int">int</a> id:<a href="/type/long">long</a> access_hash:<a href="/type/long">long</a> title:<a href="/type/string">string</a> short_name:<a href="/type/string">string</a> thumbs:flags.4?<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/PhotoSize">PhotoSize</a>&gt; thumb_dc_id:flags.4?<a href="/type/int">int</a> thumb_version:flags.4?<a href="/type/int">int</a> count:<a href="/type/int">int</a> hash:<a href="/type/int">int</a> = <a href="/type/StickerSet">StickerSet</a>;<br>
<a href="/constructor/messageReactions">messageReactions</a>#4f2b9479 flags:<a href="/type/%23">#</a> min:flags.0?<a href="/constructor/true">true</a> can_see_list:flags.2?<a href="/constructor/true">true</a> results:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/ReactionCount">ReactionCount</a>&gt; recent_reactions:flags.1?<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/MessagePeerReaction">MessagePeerReaction</a>&gt; = <a href="/type/MessageReactions">MessageReactions</a>;
<a href="/constructor/messages.messageReactionsList">messages.messageReactionsList</a>#31bd492d flags:<a href="/type/%23">#</a> count:<a href="/type/int">int</a> reactions:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/MessagePeerReaction">MessagePeerReaction</a>&gt; chats:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/Chat">Chat</a>&gt; users:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/User">User</a>&gt; next_offset:flags.0?<a href="/type/string">string</a> = <a href="/type/messages.MessageReactionsList">messages.MessageReactionsList</a>;
<a href="/constructor/messagePeerReaction">messagePeerReaction</a>#51b67eff flags:<a href="/type/%23">#</a> big:flags.0?<a href="/constructor/true">true</a> unread:flags.1?<a href="/constructor/true">true</a> peer_id:<a href="/type/Peer">Peer</a> reaction:<a href="/type/string">string</a> = <a href="/type/MessagePeerReaction">MessagePeerReaction</a>;<br>
---functions---<br>
<a href="/method/stickers.createStickerSet">stickers.createStickerSet</a>#9021ab67 flags:<a href="/type/%23">#</a> masks:flags.0?<a href="/constructor/true">true</a> animated:flags.1?<a href="/constructor/true">true</a> videos:flags.4?<a href="/constructor/true">true</a> user_id:<a href="/type/InputUser">InputUser</a> title:<a href="/type/string">string</a> short_name:<a href="/type/string">string</a> thumb:flags.2?<a href="/type/InputDocument">InputDocument</a> stickers:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/InputStickerSetItem">InputStickerSetItem</a>&gt; software:flags.3?<a href="/type/string">string</a> = <a href="/type/messages.StickerSet">messages.StickerSet</a>;<br>
<a href="/method/messages.getUnreadReactions">messages.getUnreadReactions</a>#e85bae1a peer:<a href="/type/InputPeer">InputPeer</a> offset_id:<a href="/type/int">int</a> add_offset:<a href="/type/int">int</a> limit:<a href="/type/int">int</a> max_id:<a href="/type/int">int</a> min_id:<a href="/type/int">int</a> = <a href="/type/messages.Messages">messages.Messages</a>;
<a href="/method/messages.readReactions">messages.readReactions</a>#82e251d7 peer:<a href="/type/InputPeer">InputPeer</a> = <a href="/type/messages.AffectedHistory">messages.AffectedHistory</a>;<br></code></pre></div>
<h3><a class="anchor" href="#layer-137" id="layer-137" name="layer-137"><i class="anchor-icon"></i></a><a href="/schema?layer=137">Layer 137</a></h3>
<p><a href="https://telegram.org/blog/reactions-spoilers-translations#spoilers">Message translation</a>.</p>
<h4><a class="anchor" href="#schema-changes" id="schema-changes" name="schema-changes"><i class="anchor-icon"></i></a>Schema changes</h4>
<h5><a class="anchor" href="#new-methods" id="new-methods" name="new-methods"><i class="anchor-icon"></i></a>New Methods</h5>
<ul>
<li>Added <a href="/method/messages.translateText">messages.translateText</a> - Translate a given text</li>
</ul>
<h5><a class="anchor" href="#new-constructors" id="new-constructors" name="new-constructors"><i class="anchor-icon"></i></a>New Constructors</h5>
<ul>
<li>Added <a href="/constructor/messages.translateNoResult">messages.translateNoResult</a> - No translation is available</li>
<li>Added <a href="/constructor/messages.translateResultText">messages.translateResultText</a> - Translated text</li>
</ul>
<h5><a class="anchor" href="#changed-constructors" id="changed-constructors" name="changed-constructors"><i class="anchor-icon"></i></a>Changed Constructors</h5>
<ul>
<li>Added <strong>around_animation</strong>, <strong>center_icon</strong> parameters in <a href="/constructor/availableReaction">availableReaction</a></li>
</ul>
<h4><a class="anchor" href="#schema" id="schema" name="schema"><i class="anchor-icon"></i></a>Schema</h4>
<div><pre><code><a href="/constructor/availableReaction">availableReaction</a>#c077ec01 flags:<a href="/type/%23">#</a> inactive:flags.0?<a href="/constructor/true">true</a> reaction:<a href="/type/string">string</a> title:<a href="/type/string">string</a> static_icon:<a href="/type/Document">Document</a> appear_animation:<a href="/type/Document">Document</a> select_animation:<a href="/type/Document">Document</a> activate_animation:<a href="/type/Document">Document</a> effect_animation:<a href="/type/Document">Document</a> around_animation:flags.1?<a href="/type/Document">Document</a> center_icon:flags.1?<a href="/type/Document">Document</a> = <a href="/type/AvailableReaction">AvailableReaction</a>;<br>
<a href="/constructor/messages.translateNoResult">messages.translateNoResult</a>#67ca4737 = <a href="/type/messages.TranslatedText">messages.TranslatedText</a>;
<a href="/constructor/messages.translateResultText">messages.translateResultText</a>#a214f7d0 text:<a href="/type/string">string</a> = <a href="/type/messages.TranslatedText">messages.TranslatedText</a>;<br>
---functions---<br>
<a href="/method/messages.translateText">messages.translateText</a>#24ce6dee flags:<a href="/type/%23">#</a> peer:flags.0?<a href="/type/InputPeer">InputPeer</a> msg_id:flags.0?<a href="/type/int">int</a> text:flags.1?<a href="/type/string">string</a> from_lang:flags.2?<a href="/type/string">string</a> to_lang:<a href="/type/string">string</a> = <a href="/type/messages.TranslatedText">messages.TranslatedText</a>;<br></code></pre></div>
<h3><a class="anchor" href="#layer-136" id="layer-136" name="layer-136"><i class="anchor-icon"></i></a><a href="/schema?layer=136">Layer 136</a></h3>
<p><a href="https://telegram.org/blog/reactions-spoilers-translations#reactions">Reactions</a>, <a href="https://telegram.org/blog/reactions-spoilers-translations#spoilers">spoilers</a> and sponsored message improvements.</p>
<h4><a class="anchor" href="#schema-changes" id="schema-changes" name="schema-changes"><i class="anchor-icon"></i></a>Schema changes</h4>
<h5><a class="anchor" href="#new-methods" id="new-methods" name="new-methods"><i class="anchor-icon"></i></a>New Methods</h5>
<ul>
<li>Added <a href="/method/messages.sendReaction">messages.sendReaction</a> - React to message</li>
<li>Added <a href="/method/messages.getMessagesReactions">messages.getMessagesReactions</a> - Get <a href="/api/reactions">message reactions »</a></li>
<li>Added <a href="/method/messages.getMessageReactionsList">messages.getMessageReactionsList</a> - Get <a href="/api/reactions">message reaction</a> list, along with the sender of each reaction.</li>
<li>Added <a href="/method/messages.setChatAvailableReactions">messages.setChatAvailableReactions</a> - Change the set of <a href="/api/reactions">message reactions »</a> that can be used in a certain group, supergroup or channel</li>
<li>Added <a href="/method/messages.getAvailableReactions">messages.getAvailableReactions</a> - Obtain available <a href="/api/reactions">message reactions »</a></li>
<li>Added <a href="/method/messages.setDefaultReaction">messages.setDefaultReaction</a> - Change default emoji reaction to use in the quick reaction menu: the value is synced across devices and can be fetched using <a href="/api/config#client-configuration">help.getAppConfig, <code>reactions_default</code> field</a>.</li>
</ul>
<h5><a class="anchor" href="#new-constructors" id="new-constructors" name="new-constructors"><i class="anchor-icon"></i></a>New Constructors</h5>
<ul>
<li>Added <a href="/constructor/updateMessageReactions">updateMessageReactions</a> - New <a href="/api/reactions">message reactions »</a> are available</li>
<li>Added <a href="/constructor/reactionCount">reactionCount</a> - Reactions</li>
<li>Added <a href="/constructor/messageReactions">messageReactions</a> - <a href="/api/reactions">Message reactions »</a></li>
<li>Added <a href="/constructor/messageUserReaction">messageUserReaction</a> - Message reaction</li>
<li>Added <a href="/constructor/messages.messageReactionsList">messages.messageReactionsList</a> - List of peers that reacted to a specific message</li>
<li>Added <a href="/constructor/availableReaction">availableReaction</a> - Animations associated with a message reaction</li>
<li>Added <a href="/constructor/messages.availableReactionsNotModified">messages.availableReactionsNotModified</a> - No new reactions are available</li>
<li>Added <a href="/constructor/messages.availableReactions">messages.availableReactions</a> - Animations and metadata associated with <a href="/api/reactions">message reactions »</a></li>
<li>Added <a href="/constructor/messageEntitySpoiler">messageEntitySpoiler</a> - Message entity representing a spoiler</li>
<li>Added <a href="/constructor/channelAdminLogEventActionChangeAvailableReactions">channelAdminLogEventActionChangeAvailableReactions</a> - The set of allowed <a href="/api/reactions">message reactions »</a> for this channel has changed</li>
</ul>
<h5><a class="anchor" href="#changed-constructors" id="changed-constructors" name="changed-constructors"><i class="anchor-icon"></i></a>Changed Constructors</h5>
<ul>
<li>Added <strong>available_reactions</strong> parameter in <a href="/constructor/chatFull">chatFull</a></li>
<li>Added <strong>reactions</strong> parameter in <a href="/constructor/message">message</a></li>
<li>Added <strong>available_reactions</strong> parameter in <a href="/constructor/channelFull">channelFull</a></li>
<li>Added <strong>chat_invite</strong>, <strong>chat_invite_hash</strong> parameters, changed type of <strong>from_id</strong> from <strong>Peer</strong> to <strong>flags.3?Peer</strong> in <a href="/constructor/sponsoredMessage">sponsoredMessage</a></li>
</ul>
<h4><a class="anchor" href="#push-notification-changes" id="push-notification-changes" name="push-notification-changes"><i class="anchor-icon"></i></a>PUSH notification changes</h4>
<h5><a class="anchor" href="#new-push-notifications" id="new-push-notifications" name="new-push-notifications"><i class="anchor-icon"></i></a>New PUSH notifications</h5>
<ul>
<li>Added <a href="/api/push-updates#possible-notifications">CHAT_REACT_AUDIO</a> - <code>{1}: {3} to your voice message in {2}</code></li>
<li>Added <a href="/api/push-updates#possible-notifications">CHAT_REACT_CONTACT</a> - <code>{1}: {3} to your contact {4} in {2}</code></li>
<li>Added <a href="/api/push-updates#possible-notifications">CHAT_REACT_DOC</a> - <code>{1}: {3} to your file in {2}</code></li>
<li>Added <a href="/api/push-updates#possible-notifications">CHAT_REACT_GAME</a> - <code>{1}: {3} to your game in {2}</code></li>
<li>Added <a href="/api/push-updates#possible-notifications">CHAT_REACT_GEO</a> - <code>{1}: {3} to your map in {2}</code></li>
<li>Added <a href="/api/push-updates#possible-notifications">CHAT_REACT_GEOLIVE</a> - <code>{1}: {3} to your live location in {2}</code></li>
<li>Added <a href="/api/push-updates#possible-notifications">CHAT_REACT_GIF</a> - <code>{1}: {3} to your GIF in {2}</code></li>
<li>Added <a href="/api/push-updates#possible-notifications">CHAT_REACT_INVOICE</a> - <code>{1}: {3} to your invoice in {2}</code></li>
<li>Added <a href="/api/push-updates#possible-notifications">CHAT_REACT_NOTEXT</a> - <code>{1}: {3} to your message in {2}</code></li>
<li>Added <a href="/api/push-updates#possible-notifications">CHAT_REACT_PHOTO</a> - <code>{1}: {3} to your photo in {2}</code></li>
<li>Added <a href="/api/push-updates#possible-notifications">CHAT_REACT_POLL</a> - <code>{1}: {3} to your poll {4} in {2}</code></li>
<li>Added <a href="/api/push-updates#possible-notifications">CHAT_REACT_QUIZ</a> - <code>{1}: {3} to your quiz {4} in {2}</code></li>
<li>Added <a href="/api/push-updates#possible-notifications">CHAT_REACT_ROUND</a> - <code>{1}: {3} to your video message in {2}</code></li>
<li>Added <a href="/api/push-updates#possible-notifications">CHAT_REACT_STICKER</a> - <code>{1}: {3} to your {4} sticker in {2}</code></li>
<li>Added <a href="/api/push-updates#possible-notifications">CHAT_REACT_TEXT</a> - <code>{1}: {3} in {2} to your "{4}"</code></li>
<li>Added <a href="/api/push-updates#possible-notifications">CHAT_REACT_VIDEO</a> - <code>{1}: {3} to your video in {2}</code></li>
<li>Added <a href="/api/push-updates#possible-notifications">REACT_AUDIO</a> - <code>{1}: {2} to your voice message</code></li>
<li>Added <a href="/api/push-updates#possible-notifications">REACT_CONTACT</a> - <code>{1}: {2} to your contact {3}</code></li>
<li>Added <a href="/api/push-updates#possible-notifications">REACT_DOC</a> - <code>{1}: {2} to your file</code></li>
<li>Added <a href="/api/push-updates#possible-notifications">REACT_GAME</a> - <code>{1}: {2} to your game</code></li>
<li>Added <a href="/api/push-updates#possible-notifications">REACT_GEO</a> - <code>{1}: {2} to your map</code></li>
<li>Added <a href="/api/push-updates#possible-notifications">REACT_GEOLIVE</a> - <code>{1}: {2} to your live location</code></li>
<li>Added <a href="/api/push-updates#possible-notifications">REACT_GIF</a> - <code>{1}: {2} to your GIF</code></li>
<li>Added <a href="/api/push-updates#possible-notifications">REACT_INVOICE</a> - <code>{1}: {2} to your invoice</code></li>
<li>Added <a href="/api/push-updates#possible-notifications">REACT_NOTEXT</a> - <code>{1}: {2} to your message</code></li>
<li>Added <a href="/api/push-updates#possible-notifications">REACT_PHOTO</a> - <code>{1}: {2} to your photo</code></li>
<li>Added <a href="/api/push-updates#possible-notifications">REACT_POLL</a> - <code>{1}: {2} to your poll {3}</code></li>
<li>Added <a href="/api/push-updates#possible-notifications">REACT_QUIZ</a> - <code>{1}: {2} to your quiz {3}</code></li>
<li>Added <a href="/api/push-updates#possible-notifications">REACT_ROUND</a> - <code>{1}: {2} to your video message</code></li>
<li>Added <a href="/api/push-updates#possible-notifications">REACT_STICKER</a> - <code>{1}: {2} to your {3} sticker</code></li>
<li>Added <a href="/api/push-updates#possible-notifications">REACT_TEXT</a> - <code>{1}: {2} to your "{3}"</code></li>
<li>Added <a href="/api/push-updates#possible-notifications">REACT_VIDEO</a> - <code>{1}: {2} to your video</code></li>
</ul>
<h4><a class="anchor" href="#schema" id="schema" name="schema"><i class="anchor-icon"></i></a>Schema</h4>
<div><pre><code><a href="/constructor/chatFull">chatFull</a>#d18ee226 flags:<a href="/type/%23">#</a> can_set_username:flags.7?<a href="/constructor/true">true</a> has_scheduled:flags.8?<a href="/constructor/true">true</a> id:<a href="/type/long">long</a> about:<a href="/type/string">string</a> participants:<a href="/type/ChatParticipants">ChatParticipants</a> chat_photo:flags.2?<a href="/type/Photo">Photo</a> notify_settings:<a href="/type/PeerNotifySettings">PeerNotifySettings</a> exported_invite:flags.13?<a href="/type/ExportedChatInvite">ExportedChatInvite</a> bot_info:flags.3?<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/BotInfo">BotInfo</a>&gt; pinned_msg_id:flags.6?<a href="/type/int">int</a> folder_id:flags.11?<a href="/type/int">int</a> call:flags.12?<a href="/type/InputGroupCall">InputGroupCall</a> ttl_period:flags.14?<a href="/type/int">int</a> groupcall_default_join_as:flags.15?<a href="/type/Peer">Peer</a> theme_emoticon:flags.16?<a href="/type/string">string</a> requests_pending:flags.17?<a href="/type/int">int</a> recent_requesters:flags.17?<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/long">long</a>&gt; available_reactions:flags.18?<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/string">string</a>&gt; = <a href="/type/ChatFull">ChatFull</a>;<br>
<a href="/constructor/message">message</a>#38116ee0 flags:<a href="/type/%23">#</a> out:flags.1?<a href="/constructor/true">true</a> mentioned:flags.4?<a href="/constructor/true">true</a> media_unread:flags.5?<a href="/constructor/true">true</a> silent:flags.13?<a href="/constructor/true">true</a> post:flags.14?<a href="/constructor/true">true</a> from_scheduled:flags.18?<a href="/constructor/true">true</a> legacy:flags.19?<a href="/constructor/true">true</a> edit_hide:flags.21?<a href="/constructor/true">true</a> pinned:flags.24?<a href="/constructor/true">true</a> noforwards:flags.26?<a href="/constructor/true">true</a> id:<a href="/type/int">int</a> from_id:flags.8?<a href="/type/Peer">Peer</a> peer_id:<a href="/type/Peer">Peer</a> fwd_from:flags.2?<a href="/type/MessageFwdHeader">MessageFwdHeader</a> via_bot_id:flags.11?<a href="/type/long">long</a> reply_to:flags.3?<a href="/type/MessageReplyHeader">MessageReplyHeader</a> date:<a href="/type/int">int</a> message:<a href="/type/string">string</a> media:flags.9?<a href="/type/MessageMedia">MessageMedia</a> reply_markup:flags.6?<a href="/type/ReplyMarkup">ReplyMarkup</a> entities:flags.7?<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/MessageEntity">MessageEntity</a>&gt; views:flags.10?<a href="/type/int">int</a> forwards:flags.10?<a href="/type/int">int</a> replies:flags.23?<a href="/type/MessageReplies">MessageReplies</a> edit_date:flags.15?<a href="/type/int">int</a> post_author:flags.16?<a href="/type/string">string</a> grouped_id:flags.17?<a href="/type/long">long</a> reactions:flags.20?<a href="/type/MessageReactions">MessageReactions</a> restriction_reason:flags.22?<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/RestrictionReason">RestrictionReason</a>&gt; ttl_period:flags.25?<a href="/type/int">int</a> = <a href="/type/Message">Message</a>;<br>
<a href="/constructor/channelFull">channelFull</a>#e13c3d20 flags:<a href="/type/%23">#</a> can_view_participants:flags.3?<a href="/constructor/true">true</a> can_set_username:flags.6?<a href="/constructor/true">true</a> can_set_stickers:flags.7?<a href="/constructor/true">true</a> hidden_prehistory:flags.10?<a href="/constructor/true">true</a> can_set_location:flags.16?<a href="/constructor/true">true</a> has_scheduled:flags.19?<a href="/constructor/true">true</a> can_view_stats:flags.20?<a href="/constructor/true">true</a> blocked:flags.22?<a href="/constructor/true">true</a> id:<a href="/type/long">long</a> about:<a href="/type/string">string</a> participants_count:flags.0?<a href="/type/int">int</a> admins_count:flags.1?<a href="/type/int">int</a> kicked_count:flags.2?<a href="/type/int">int</a> banned_count:flags.2?<a href="/type/int">int</a> online_count:flags.13?<a href="/type/int">int</a> read_inbox_max_id:<a href="/type/int">int</a> read_outbox_max_id:<a href="/type/int">int</a> unread_count:<a href="/type/int">int</a> chat_photo:<a href="/type/Photo">Photo</a> notify_settings:<a href="/type/PeerNotifySettings">PeerNotifySettings</a> exported_invite:flags.23?<a href="/type/ExportedChatInvite">ExportedChatInvite</a> bot_info:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/BotInfo">BotInfo</a>&gt; migrated_from_chat_id:flags.4?<a href="/type/long">long</a> migrated_from_max_id:flags.4?<a href="/type/int">int</a> pinned_msg_id:flags.5?<a href="/type/int">int</a> stickerset:flags.8?<a href="/type/StickerSet">StickerSet</a> available_min_id:flags.9?<a href="/type/int">int</a> folder_id:flags.11?<a href="/type/int">int</a> linked_chat_id:flags.14?<a href="/type/long">long</a> location:flags.15?<a href="/type/ChannelLocation">ChannelLocation</a> slowmode_seconds:flags.17?<a href="/type/int">int</a> slowmode_next_send_date:flags.18?<a href="/type/int">int</a> stats_dc:flags.12?<a href="/type/int">int</a> pts:<a href="/type/int">int</a> call:flags.21?<a href="/type/InputGroupCall">InputGroupCall</a> ttl_period:flags.24?<a href="/type/int">int</a> pending_suggestions:flags.25?<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/string">string</a>&gt; groupcall_default_join_as:flags.26?<a href="/type/Peer">Peer</a> theme_emoticon:flags.27?<a href="/type/string">string</a> requests_pending:flags.28?<a href="/type/int">int</a> recent_requesters:flags.28?<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/long">long</a>&gt; default_send_as:flags.29?<a href="/type/Peer">Peer</a> available_reactions:flags.30?<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/string">string</a>&gt; = <a href="/type/ChatFull">ChatFull</a>;<br>
<a href="/constructor/sponsoredMessage">sponsoredMessage</a>#3a836df8 flags:<a href="/type/%23">#</a> random_id:<a href="/type/bytes">bytes</a> from_id:flags.3?<a href="/type/Peer">Peer</a> chat_invite:flags.4?<a href="/type/ChatInvite">ChatInvite</a> chat_invite_hash:flags.4?<a href="/type/string">string</a> channel_post:flags.2?<a href="/type/int">int</a> start_param:flags.0?<a href="/type/string">string</a> message:<a href="/type/string">string</a> entities:flags.1?<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/MessageEntity">MessageEntity</a>&gt; = <a href="/type/SponsoredMessage">SponsoredMessage</a>;<br>
<a href="/constructor/updateMessageReactions">updateMessageReactions</a>#154798c3 peer:<a href="/type/Peer">Peer</a> msg_id:<a href="/type/int">int</a> reactions:<a href="/type/MessageReactions">MessageReactions</a> = <a href="/type/Update">Update</a>;<br>
<a href="/constructor/reactionCount">reactionCount</a>#6fb250d1 flags:<a href="/type/%23">#</a> chosen:flags.0?<a href="/constructor/true">true</a> reaction:<a href="/type/string">string</a> count:<a href="/type/int">int</a> = <a href="/type/ReactionCount">ReactionCount</a>;<br>
<a href="/constructor/messageReactions">messageReactions</a>#087b6e36 flags:<a href="/type/%23">#</a> min:flags.0?<a href="/constructor/true">true</a> can_see_list:flags.2?<a href="/constructor/true">true</a> results:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/ReactionCount">ReactionCount</a>&gt; recent_reactons:flags.1?<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/MessageUserReaction">MessageUserReaction</a>&gt; = <a href="/type/MessageReactions">MessageReactions</a>;
<a href="/constructor/messageUserReaction">messageUserReaction</a>#932844fa user_id:<a href="/type/long">long</a> reaction:<a href="/type/string">string</a> = <a href="/type/MessageUserReaction">MessageUserReaction</a>;
<a href="/constructor/messages.messageReactionsList">messages.messageReactionsList</a>#a366923c flags:<a href="/type/%23">#</a> count:<a href="/type/int">int</a> reactions:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/MessageUserReaction">MessageUserReaction</a>&gt; users:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/User">User</a>&gt; next_offset:flags.0?<a href="/type/string">string</a> = <a href="/type/messages.MessageReactionsList">messages.MessageReactionsList</a>;<br>
<a href="/constructor/availableReaction">availableReaction</a>#021d7c4b flags:<a href="/type/%23">#</a> inactive:flags.0?<a href="/constructor/true">true</a> reaction:<a href="/type/string">string</a> title:<a href="/type/string">string</a> static_icon:<a href="/type/Document">Document</a> appear_animation:<a href="/type/Document">Document</a> select_animation:<a href="/type/Document">Document</a> activate_animation:<a href="/type/Document">Document</a> effect_animation:<a href="/type/Document">Document</a> = <a href="/type/AvailableReaction">AvailableReaction</a>;<br>
<a href="/constructor/messages.availableReactionsNotModified">messages.availableReactionsNotModified</a>#9f071957 = <a href="/type/messages.AvailableReactions">messages.AvailableReactions</a>;
<a href="/constructor/messages.availableReactions">messages.availableReactions</a>#768e3aad hash:<a href="/type/int">int</a> reactions:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/AvailableReaction">AvailableReaction</a>&gt; = <a href="/type/messages.AvailableReactions">messages.AvailableReactions</a>;
<a href="/constructor/messageEntitySpoiler">messageEntitySpoiler</a>#32ca960f offset:<a href="/type/int">int</a> length:<a href="/type/int">int</a> = <a href="/type/MessageEntity">MessageEntity</a>;<br>
<a href="/constructor/channelAdminLogEventActionChangeAvailableReactions">channelAdminLogEventActionChangeAvailableReactions</a>#9cf7f76a prev_value:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/string">string</a>&gt; new_value:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/string">string</a>&gt; = <a href="/type/ChannelAdminLogEventAction">ChannelAdminLogEventAction</a>;<br>
---functions---<br>
<a href="/method/messages.sendReaction">messages.sendReaction</a>#25690ce4 flags:<a href="/type/%23">#</a> big:flags.1?<a href="/constructor/true">true</a> peer:<a href="/type/InputPeer">InputPeer</a> msg_id:<a href="/type/int">int</a> reaction:flags.0?<a href="/type/string">string</a> = <a href="/type/Updates">Updates</a>;
<a href="/method/messages.getMessagesReactions">messages.getMessagesReactions</a>#8bba90e6 peer:<a href="/type/InputPeer">InputPeer</a> id:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/int">int</a>&gt; = <a href="/type/Updates">Updates</a>;
<a href="/method/messages.getMessageReactionsList">messages.getMessageReactionsList</a>#e0ee6b77 flags:<a href="/type/%23">#</a> peer:<a href="/type/InputPeer">InputPeer</a> id:<a href="/type/int">int</a> reaction:flags.0?<a href="/type/string">string</a> offset:flags.1?<a href="/type/string">string</a> limit:<a href="/type/int">int</a> = <a href="/type/messages.MessageReactionsList">messages.MessageReactionsList</a>;
<a href="/method/messages.setChatAvailableReactions">messages.setChatAvailableReactions</a>#14050ea6 peer:<a href="/type/InputPeer">InputPeer</a> available_reactions:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/string">string</a>&gt; = <a href="/type/Updates">Updates</a>;
<a href="/method/messages.getAvailableReactions">messages.getAvailableReactions</a>#18dea0ac hash:<a href="/type/int">int</a> = <a href="/type/messages.AvailableReactions">messages.AvailableReactions</a>;
<a href="/method/messages.setDefaultReaction">messages.setDefaultReaction</a>#d960c4d4 reaction:<a href="/type/string">string</a> = <a href="/type/Bool">Bool</a>;<br></code></pre></div>
<h3><a class="anchor" href="#layer-135" id="layer-135" name="layer-135"><i class="anchor-icon"></i></a><a href="/schema?layer=135">Layer 135</a></h3>
<p><a href="https://telegram.org/blog/protected-content-delete-by-date-and-more#anonymous-posting-in-public-groups">Anonymous posting in public groups</a>, <a href="https://telegram.org/blog/protected-content-delete-by-date-and-more#protected-content-in-groups-and-channels">protected content</a>, <a href="https://telegram.org/blog/protected-content-delete-by-date-and-more#manage-connected-devices">device management</a>, <a href="https://telegram.org/blog/protected-content-delete-by-date-and-more#new-ways-to-log-in-via-call">login via missed call</a>, <a href="/constructor/inputKeyboardButtonUserProfile">mention users in inline buttons even if they don't have a username</a>, <a href="/api/auth#logout-tokens">logout tokens</a>, improvements to join requests and stickers.</p>
<h4><a class="anchor" href="#schema-changes" id="schema-changes" name="schema-changes"><i class="anchor-icon"></i></a>Schema changes</h4>
<h5><a class="anchor" href="#new-methods" id="new-methods" name="new-methods"><i class="anchor-icon"></i></a>New Methods</h5>
<ul>
<li>Added <a href="/method/messages.hideAllChatJoinRequests">messages.hideAllChatJoinRequests</a> - Dismiss or approve all <a href="/api/invites#join-requests">join requests</a> related to a specific chat or channel.</li>
<li>Added <a href="/method/messages.toggleNoForwards">messages.toggleNoForwards</a> - Enable or disable <a href="https://telegram.org/blog/protected-content-delete-by-date-and-more">content protection</a> on a channel or chat</li>
<li>Added <a href="/method/messages.saveDefaultSendAs">messages.saveDefaultSendAs</a> - Change the default peer that should be used when sending messages to a specific group</li>
<li>Added <a href="/method/channels.getSendAs">channels.getSendAs</a> - Obtains a list of peers that can be used to send messages in a specific group</li>
<li>Added <a href="/method/account.setAuthorizationTTL">account.setAuthorizationTTL</a> - Set time-to-live of current session</li>
<li>Added <a href="/method/account.changeAuthorizationSettings">account.changeAuthorizationSettings</a> - Change authorization settings</li>
<li>Added <a href="/method/channels.deleteParticipantHistory">channels.deleteParticipantHistory</a> - Delete all messages sent by a specific participant of a given supergroup</li>
</ul>
<h5><a class="anchor" href="#changed-methods" id="changed-methods" name="changed-methods"><i class="anchor-icon"></i></a>Changed Methods</h5>
<ul>
<li>Changed type of <a href="/method/auth.logOut">auth.logOut</a> from <strong>Bool</strong> to <strong>auth.LoggedOut</strong></li>
<li>Changed type of <a href="/method/users.getFullUser">users.getFullUser</a> from <strong>UserFull</strong> to <strong>users.UserFull</strong></li>
<li>Added <strong>noforwards</strong>, <strong>send_as</strong> parameters in <a href="/method/messages.sendMessage">messages.sendMessage</a></li>
<li>Added <strong>noforwards</strong>, <strong>send_as</strong> parameters in <a href="/method/messages.sendMedia">messages.sendMedia</a></li>
<li>Added <strong>noforwards</strong>, <strong>send_as</strong> parameters in <a href="/method/messages.forwardMessages">messages.forwardMessages</a></li>
<li>Changed type of <a href="/method/messages.getPeerSettings">messages.getPeerSettings</a> from <strong>PeerSettings</strong> to <strong>messages.PeerSettings</strong></li>
<li>Added <strong>hash</strong> parameter in <a href="/method/messages.getStickerSet">messages.getStickerSet</a></li>
<li>Added <strong>participant</strong> parameter, removed <strong>user_id</strong> parameter in <a href="/method/channels.reportSpam">channels.reportSpam</a></li>
<li>Added <strong>send_as</strong> parameter in <a href="/method/messages.sendInlineBotResult">messages.sendInlineBotResult</a></li>
<li>Added <strong>noforwards</strong>, <strong>send_as</strong> parameters in <a href="/method/messages.sendMultiMedia">messages.sendMultiMedia</a></li>
</ul>
<h5><a class="anchor" href="#deleted-methods" id="deleted-methods" name="deleted-methods"><i class="anchor-icon"></i></a>Deleted Methods</h5>
<ul>
<li>Removed channels.deleteUserHistory</li>
</ul>
<h5><a class="anchor" href="#new-constructors" id="new-constructors" name="new-constructors"><i class="anchor-icon"></i></a>New Constructors</h5>
<ul>
<li>Added <a href="/constructor/inputKeyboardButtonUserProfile">inputKeyboardButtonUserProfile</a> - Button that links directly to a user profile</li>
<li>Added <a href="/constructor/keyboardButtonUserProfile">keyboardButtonUserProfile</a> - Button that links directly to a user profile</li>
<li>Added <a href="/constructor/channels.sendAsPeers">channels.sendAsPeers</a> - A list of peers that can be used to send messages in a specific group</li>
<li>Added <a href="/constructor/channelAdminLogEventActionToggleNoForwards">channelAdminLogEventActionToggleNoForwards</a> - Forwards were enabled or disabled</li>
<li>Added <a href="/constructor/messages.stickerSetNotModified">messages.stickerSetNotModified</a> - The stickerset hasn't changed</li>
<li>Added <a href="/constructor/users.userFull">users.userFull</a> - Full user information</li>
<li>Added <a href="/constructor/messages.peerSettings">messages.peerSettings</a> - Peer settings</li>
<li>Added <a href="/constructor/channelAdminLogEventActionSendMessage">channelAdminLogEventActionSendMessage</a> - A message was posted in a channel</li>
<li>Added <a href="/constructor/auth.codeTypeMissedCall">auth.codeTypeMissedCall</a> - The next time, the authentication code will be delivered via an immediately canceled incoming call, handled manually by the user.</li>
<li>Added <a href="/constructor/auth.sentCodeTypeMissedCall">auth.sentCodeTypeMissedCall</a> - The code will be sent via a flash phone call, that will be closed immediately. The last digits of the phone number that calls are the code that must be entered manually by the user.</li>
<li>Added <a href="/constructor/auth.loggedOut">auth.loggedOut</a> - <a href="/api/auth#logout-tokens">Logout token »</a> to be used on subsequent authorizations</li>
</ul>
<h5><a class="anchor" href="#changed-constructors" id="changed-constructors" name="changed-constructors"><i class="anchor-icon"></i></a>Changed Constructors</h5>
<ul>
<li>Added <strong>noforwards</strong> parameter in <a href="/constructor/chat">chat</a></li>
<li>Added <strong>noforwards</strong> parameter in <a href="/constructor/message">message</a></li>
<li>Added <strong>setup_password_required</strong>, <strong>otherwise_relogin_days</strong> parameters in <a href="/constructor/auth.authorization">auth.authorization</a></li>
<li>Added <strong>request_chat_broadcast</strong>, <strong>request_chat_title</strong>, <strong>request_chat_date</strong> parameters in <a href="/constructor/peerSettings">peerSettings</a></li>
<li>Added <strong>id</strong>, <strong>private_forward_name</strong> parameters, removed <strong>user</strong> parameter in <a href="/constructor/userFull">userFull</a></li>
<li>Added <strong>encrypted_requests_disabled</strong>, <strong>call_requests_disabled</strong> parameters in <a href="/constructor/authorization">authorization</a></li>
<li>Added <strong>authorization_ttl_days</strong> parameter in <a href="/constructor/account.authorizations">account.authorizations</a></li>
<li>Added <strong>noforwards</strong> parameter in <a href="/constructor/channel">channel</a></li>
<li>Added <strong>default_send_as</strong> parameter in <a href="/constructor/channelFull">channelFull</a></li>
<li>Added <strong>allow_missed_call</strong>, <strong>logout_tokens</strong> parameters in <a href="/constructor/codeSettings">codeSettings</a></li>
</ul>
<h4><a class="anchor" href="#schema" id="schema" name="schema"><i class="anchor-icon"></i></a>Schema</h4>
<div><pre><code><a href="/constructor/chat">chat</a>#41cbf256 flags:<a href="/type/%23">#</a> creator:flags.0?<a href="/constructor/true">true</a> kicked:flags.1?<a href="/constructor/true">true</a> left:flags.2?<a href="/constructor/true">true</a> deactivated:flags.5?<a href="/constructor/true">true</a> call_active:flags.23?<a href="/constructor/true">true</a> call_not_empty:flags.24?<a href="/constructor/true">true</a> noforwards:flags.25?<a href="/constructor/true">true</a> id:<a href="/type/long">long</a> title:<a href="/type/string">string</a> photo:<a href="/type/ChatPhoto">ChatPhoto</a> participants_count:<a href="/type/int">int</a> date:<a href="/type/int">int</a> version:<a href="/type/int">int</a> migrated_to:flags.6?<a href="/type/InputChannel">InputChannel</a> admin_rights:flags.14?<a href="/type/ChatAdminRights">ChatAdminRights</a> default_banned_rights:flags.18?<a href="/type/ChatBannedRights">ChatBannedRights</a> = <a href="/type/Chat">Chat</a>;<br>
<a href="/constructor/message">message</a>#85d6cbe2 flags:<a href="/type/%23">#</a> out:flags.1?<a href="/constructor/true">true</a> mentioned:flags.4?<a href="/constructor/true">true</a> media_unread:flags.5?<a href="/constructor/true">true</a> silent:flags.13?<a href="/constructor/true">true</a> post:flags.14?<a href="/constructor/true">true</a> from_scheduled:flags.18?<a href="/constructor/true">true</a> legacy:flags.19?<a href="/constructor/true">true</a> edit_hide:flags.21?<a href="/constructor/true">true</a> pinned:flags.24?<a href="/constructor/true">true</a> noforwards:flags.26?<a href="/constructor/true">true</a> id:<a href="/type/int">int</a> from_id:flags.8?<a href="/type/Peer">Peer</a> peer_id:<a href="/type/Peer">Peer</a> fwd_from:flags.2?<a href="/type/MessageFwdHeader">MessageFwdHeader</a> via_bot_id:flags.11?<a href="/type/long">long</a> reply_to:flags.3?<a href="/type/MessageReplyHeader">MessageReplyHeader</a> date:<a href="/type/int">int</a> message:<a href="/type/string">string</a> media:flags.9?<a href="/type/MessageMedia">MessageMedia</a> reply_markup:flags.6?<a href="/type/ReplyMarkup">ReplyMarkup</a> entities:flags.7?<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/MessageEntity">MessageEntity</a>&gt; views:flags.10?<a href="/type/int">int</a> forwards:flags.10?<a href="/type/int">int</a> replies:flags.23?<a href="/type/MessageReplies">MessageReplies</a> edit_date:flags.15?<a href="/type/int">int</a> post_author:flags.16?<a href="/type/string">string</a> grouped_id:flags.17?<a href="/type/long">long</a> restriction_reason:flags.22?<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/RestrictionReason">RestrictionReason</a>&gt; ttl_period:flags.25?<a href="/type/int">int</a> = <a href="/type/Message">Message</a>;<br>
<a href="/constructor/auth.authorization">auth.authorization</a>#33fb7bb8 flags:<a href="/type/%23">#</a> setup_password_required:flags.1?<a href="/constructor/true">true</a> otherwise_relogin_days:flags.1?<a href="/type/int">int</a> tmp_sessions:flags.0?<a href="/type/int">int</a> user:<a href="/type/User">User</a> = <a href="/type/auth.Authorization">auth.Authorization</a>;<br>
<a href="/constructor/peerSettings">peerSettings</a>#a518110d flags:<a href="/type/%23">#</a> report_spam:flags.0?<a href="/constructor/true">true</a> add_contact:flags.1?<a href="/constructor/true">true</a> block_contact:flags.2?<a href="/constructor/true">true</a> share_contact:flags.3?<a href="/constructor/true">true</a> need_contacts_exception:flags.4?<a href="/constructor/true">true</a> report_geo:flags.5?<a href="/constructor/true">true</a> autoarchived:flags.7?<a href="/constructor/true">true</a> invite_members:flags.8?<a href="/constructor/true">true</a> request_chat_broadcast:flags.10?<a href="/constructor/true">true</a> geo_distance:flags.6?<a href="/type/int">int</a> request_chat_title:flags.9?<a href="/type/string">string</a> request_chat_date:flags.9?<a href="/type/int">int</a> = <a href="/type/PeerSettings">PeerSettings</a>;<br>
<a href="/constructor/userFull">userFull</a>#cf366521 flags:<a href="/type/%23">#</a> blocked:flags.0?<a href="/constructor/true">true</a> phone_calls_available:flags.4?<a href="/constructor/true">true</a> phone_calls_private:flags.5?<a href="/constructor/true">true</a> can_pin_message:flags.7?<a href="/constructor/true">true</a> has_scheduled:flags.12?<a href="/constructor/true">true</a> video_calls_available:flags.13?<a href="/constructor/true">true</a> id:<a href="/type/long">long</a> about:flags.1?<a href="/type/string">string</a> settings:<a href="/type/PeerSettings">PeerSettings</a> profile_photo:flags.2?<a href="/type/Photo">Photo</a> notify_settings:<a href="/type/PeerNotifySettings">PeerNotifySettings</a> bot_info:flags.3?<a href="/type/BotInfo">BotInfo</a> pinned_msg_id:flags.6?<a href="/type/int">int</a> common_chats_count:<a href="/type/int">int</a> folder_id:flags.11?<a href="/type/int">int</a> ttl_period:flags.14?<a href="/type/int">int</a> theme_emoticon:flags.15?<a href="/type/string">string</a> private_forward_name:flags.16?<a href="/type/string">string</a> = <a href="/type/UserFull">UserFull</a>;<br>
<a href="/constructor/authorization">authorization</a>#ad01d61d flags:<a href="/type/%23">#</a> current:flags.0?<a href="/constructor/true">true</a> official_app:flags.1?<a href="/constructor/true">true</a> password_pending:flags.2?<a href="/constructor/true">true</a> encrypted_requests_disabled:flags.3?<a href="/constructor/true">true</a> call_requests_disabled:flags.4?<a href="/constructor/true">true</a> hash:<a href="/type/long">long</a> device_model:<a href="/type/string">string</a> platform:<a href="/type/string">string</a> system_version:<a href="/type/string">string</a> api_id:<a href="/type/int">int</a> app_name:<a href="/type/string">string</a> app_version:<a href="/type/string">string</a> date_created:<a href="/type/int">int</a> date_active:<a href="/type/int">int</a> ip:<a href="/type/string">string</a> country:<a href="/type/string">string</a> region:<a href="/type/string">string</a> = <a href="/type/Authorization">Authorization</a>;
<a href="/constructor/account.authorizations">account.authorizations</a>#4bff8ea0 authorization_ttl_days:<a href="/type/int">int</a> authorizations:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/Authorization">Authorization</a>&gt; = <a href="/type/account.Authorizations">account.Authorizations</a>;<br>
<a href="/constructor/channel">channel</a>#8261ac61 flags:<a href="/type/%23">#</a> creator:flags.0?<a href="/constructor/true">true</a> left:flags.2?<a href="/constructor/true">true</a> broadcast:flags.5?<a href="/constructor/true">true</a> verified:flags.7?<a href="/constructor/true">true</a> megagroup:flags.8?<a href="/constructor/true">true</a> restricted:flags.9?<a href="/constructor/true">true</a> signatures:flags.11?<a href="/constructor/true">true</a> min:flags.12?<a href="/constructor/true">true</a> scam:flags.19?<a href="/constructor/true">true</a> has_link:flags.20?<a href="/constructor/true">true</a> has_geo:flags.21?<a href="/constructor/true">true</a> slowmode_enabled:flags.22?<a href="/constructor/true">true</a> call_active:flags.23?<a href="/constructor/true">true</a> call_not_empty:flags.24?<a href="/constructor/true">true</a> fake:flags.25?<a href="/constructor/true">true</a> gigagroup:flags.26?<a href="/constructor/true">true</a> noforwards:flags.27?<a href="/constructor/true">true</a> id:<a href="/type/long">long</a> access_hash:flags.13?<a href="/type/long">long</a> title:<a href="/type/string">string</a> username:flags.6?<a href="/type/string">string</a> photo:<a href="/type/ChatPhoto">ChatPhoto</a> date:<a href="/type/int">int</a> restriction_reason:flags.9?<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/RestrictionReason">RestrictionReason</a>&gt; admin_rights:flags.14?<a href="/type/ChatAdminRights">ChatAdminRights</a> banned_rights:flags.15?<a href="/type/ChatBannedRights">ChatBannedRights</a> default_banned_rights:flags.18?<a href="/type/ChatBannedRights">ChatBannedRights</a> participants_count:flags.17?<a href="/type/int">int</a> = <a href="/type/Chat">Chat</a>;
<a href="/constructor/channelFull">channelFull</a>#56662e2e flags:<a href="/type/%23">#</a> can_view_participants:flags.3?<a href="/constructor/true">true</a> can_set_username:flags.6?<a href="/constructor/true">true</a> can_set_stickers:flags.7?<a href="/constructor/true">true</a> hidden_prehistory:flags.10?<a href="/constructor/true">true</a> can_set_location:flags.16?<a href="/constructor/true">true</a> has_scheduled:flags.19?<a href="/constructor/true">true</a> can_view_stats:flags.20?<a href="/constructor/true">true</a> blocked:flags.22?<a href="/constructor/true">true</a> id:<a href="/type/long">long</a> about:<a href="/type/string">string</a> participants_count:flags.0?<a href="/type/int">int</a> admins_count:flags.1?<a href="/type/int">int</a> kicked_count:flags.2?<a href="/type/int">int</a> banned_count:flags.2?<a href="/type/int">int</a> online_count:flags.13?<a href="/type/int">int</a> read_inbox_max_id:<a href="/type/int">int</a> read_outbox_max_id:<a href="/type/int">int</a> unread_count:<a href="/type/int">int</a> chat_photo:<a href="/type/Photo">Photo</a> notify_settings:<a href="/type/PeerNotifySettings">PeerNotifySettings</a> exported_invite:flags.23?<a href="/type/ExportedChatInvite">ExportedChatInvite</a> bot_info:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/BotInfo">BotInfo</a>&gt; migrated_from_chat_id:flags.4?<a href="/type/long">long</a> migrated_from_max_id:flags.4?<a href="/type/int">int</a> pinned_msg_id:flags.5?<a href="/type/int">int</a> stickerset:flags.8?<a href="/type/StickerSet">StickerSet</a> available_min_id:flags.9?<a href="/type/int">int</a> folder_id:flags.11?<a href="/type/int">int</a> linked_chat_id:flags.14?<a href="/type/long">long</a> location:flags.15?<a href="/type/ChannelLocation">ChannelLocation</a> slowmode_seconds:flags.17?<a href="/type/int">int</a> slowmode_next_send_date:flags.18?<a href="/type/int">int</a> stats_dc:flags.12?<a href="/type/int">int</a> pts:<a href="/type/int">int</a> call:flags.21?<a href="/type/InputGroupCall">InputGroupCall</a> ttl_period:flags.24?<a href="/type/int">int</a> pending_suggestions:flags.25?<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/string">string</a>&gt; groupcall_default_join_as:flags.26?<a href="/type/Peer">Peer</a> theme_emoticon:flags.27?<a href="/type/string">string</a> requests_pending:flags.28?<a href="/type/int">int</a> recent_requesters:flags.28?<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/long">long</a>&gt; default_send_as:flags.29?<a href="/type/Peer">Peer</a> = <a href="/type/ChatFull">ChatFull</a>;
<a href="/constructor/codeSettings">codeSettings</a>#8a6469c2 flags:<a href="/type/%23">#</a> allow_flashcall:flags.0?<a href="/constructor/true">true</a> current_number:flags.1?<a href="/constructor/true">true</a> allow_app_hash:flags.4?<a href="/constructor/true">true</a> allow_missed_call:flags.5?<a href="/constructor/true">true</a> logout_tokens:flags.6?<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/bytes">bytes</a>&gt; = <a href="/type/CodeSettings">CodeSettings</a>;<br>
<a href="/constructor/inputKeyboardButtonUserProfile">inputKeyboardButtonUserProfile</a>#e988037b text:<a href="/type/string">string</a> user_id:<a href="/type/InputUser">InputUser</a> = <a href="/type/KeyboardButton">KeyboardButton</a>;<br>
<a href="/constructor/keyboardButtonUserProfile">keyboardButtonUserProfile</a>#308660c1 text:<a href="/type/string">string</a> user_id:<a href="/type/long">long</a> = <a href="/type/KeyboardButton">KeyboardButton</a>;<br>
<a href="/constructor/channels.sendAsPeers">channels.sendAsPeers</a>#8356cda9 peers:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/Peer">Peer</a>&gt; chats:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/Chat">Chat</a>&gt; users:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/User">User</a>&gt; = <a href="/type/channels.SendAsPeers">channels.SendAsPeers</a>;
<a href="/constructor/channelAdminLogEventActionToggleNoForwards">channelAdminLogEventActionToggleNoForwards</a>#cb2ac766 new_value:<a href="/type/Bool">Bool</a> = <a href="/type/ChannelAdminLogEventAction">ChannelAdminLogEventAction</a>;<br>
<a href="/constructor/messages.stickerSetNotModified">messages.stickerSetNotModified</a>#d3f924eb = <a href="/type/messages.StickerSet">messages.StickerSet</a>;<br>
<a href="/constructor/users.userFull">users.userFull</a>#3b6d152e full_user:<a href="/type/UserFull">UserFull</a> chats:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/Chat">Chat</a>&gt; users:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/User">User</a>&gt; = <a href="/type/users.UserFull">users.UserFull</a>;<br>
<a href="/constructor/messages.peerSettings">messages.peerSettings</a>#6880b94d settings:<a href="/type/PeerSettings">PeerSettings</a> chats:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/Chat">Chat</a>&gt; users:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/User">User</a>&gt; = <a href="/type/messages.PeerSettings">messages.PeerSettings</a>;<br>
<a href="/constructor/channelAdminLogEventActionSendMessage">channelAdminLogEventActionSendMessage</a>#278f2868 message:<a href="/type/Message">Message</a> = <a href="/type/ChannelAdminLogEventAction">ChannelAdminLogEventAction</a>;<br>
<a href="/constructor/auth.codeTypeMissedCall">auth.codeTypeMissedCall</a>#d61ad6ee = <a href="/type/auth.CodeType">auth.CodeType</a>;
<a href="/constructor/auth.sentCodeTypeMissedCall">auth.sentCodeTypeMissedCall</a>#82006484 prefix:<a href="/type/string">string</a> length:<a href="/type/int">int</a> = <a href="/type/auth.SentCodeType">auth.SentCodeType</a>;
<a href="/constructor/auth.loggedOut">auth.loggedOut</a>#c3a2835f flags:<a href="/type/%23">#</a> future_auth_token:flags.0?<a href="/type/bytes">bytes</a> = <a href="/type/auth.LoggedOut">auth.LoggedOut</a>;<br>
---functions---<br>
<a href="/method/auth.logOut">auth.logOut</a>#3e72ba19 = <a href="/type/auth.LoggedOut">auth.LoggedOut</a>;<br>
<a href="/method/users.getFullUser">users.getFullUser</a>#b60f5918 id:<a href="/type/InputUser">InputUser</a> = <a href="/type/users.UserFull">users.UserFull</a>;<br>
<a href="/method/messages.sendMessage">messages.sendMessage</a>#0d9d75a4 flags:<a href="/type/%23">#</a> no_webpage:flags.1?<a href="/constructor/true">true</a> silent:flags.5?<a href="/constructor/true">true</a> background:flags.6?<a href="/constructor/true">true</a> clear_draft:flags.7?<a href="/constructor/true">true</a> noforwards:flags.14?<a href="/constructor/true">true</a> peer:<a href="/type/InputPeer">InputPeer</a> reply_to_msg_id:flags.0?<a href="/type/int">int</a> message:<a href="/type/string">string</a> random_id:<a href="/type/long">long</a> reply_markup:flags.2?<a href="/type/ReplyMarkup">ReplyMarkup</a> entities:flags.3?<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/MessageEntity">MessageEntity</a>&gt; schedule_date:flags.10?<a href="/type/int">int</a> send_as:flags.13?<a href="/type/InputPeer">InputPeer</a> = <a href="/type/Updates">Updates</a>;
<a href="/method/messages.sendMedia">messages.sendMedia</a>#e25ff8e0 flags:<a href="/type/%23">#</a> silent:flags.5?<a href="/constructor/true">true</a> background:flags.6?<a href="/constructor/true">true</a> clear_draft:flags.7?<a href="/constructor/true">true</a> noforwards:flags.14?<a href="/constructor/true">true</a> peer:<a href="/type/InputPeer">InputPeer</a> reply_to_msg_id:flags.0?<a href="/type/int">int</a> media:<a href="/type/InputMedia">InputMedia</a> message:<a href="/type/string">string</a> random_id:<a href="/type/long">long</a> reply_markup:flags.2?<a href="/type/ReplyMarkup">ReplyMarkup</a> entities:flags.3?<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/MessageEntity">MessageEntity</a>&gt; schedule_date:flags.10?<a href="/type/int">int</a> send_as:flags.13?<a href="/type/InputPeer">InputPeer</a> = <a href="/type/Updates">Updates</a>;
<a href="/method/messages.forwardMessages">messages.forwardMessages</a>#cc30290b flags:<a href="/type/%23">#</a> silent:flags.5?<a href="/constructor/true">true</a> background:flags.6?<a href="/constructor/true">true</a> with_my_score:flags.8?<a href="/constructor/true">true</a> drop_author:flags.11?<a href="/constructor/true">true</a> drop_media_captions:flags.12?<a href="/constructor/true">true</a> noforwards:flags.14?<a href="/constructor/true">true</a> from_peer:<a href="/type/InputPeer">InputPeer</a> id:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/int">int</a>&gt; random_id:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/long">long</a>&gt; to_peer:<a href="/type/InputPeer">InputPeer</a> schedule_date:flags.10?<a href="/type/int">int</a> send_as:flags.13?<a href="/type/InputPeer">InputPeer</a> = <a href="/type/Updates">Updates</a>;
<a href="/method/messages.getPeerSettings">messages.getPeerSettings</a>#efd9a6a2 peer:<a href="/type/InputPeer">InputPeer</a> = <a href="/type/messages.PeerSettings">messages.PeerSettings</a>;
<a href="/method/messages.getStickerSet">messages.getStickerSet</a>#c8a0ec74 stickerset:<a href="/type/InputStickerSet">InputStickerSet</a> hash:<a href="/type/int">int</a> = <a href="/type/messages.StickerSet">messages.StickerSet</a>;<br>
<a href="/method/channels.reportSpam">channels.reportSpam</a>#f44a8315 channel:<a href="/type/InputChannel">InputChannel</a> participant:<a href="/type/InputPeer">InputPeer</a> id:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/int">int</a>&gt; = <a href="/type/Bool">Bool</a>;<br>
<a href="/method/messages.sendInlineBotResult">messages.sendInlineBotResult</a>#7aa11297 flags:<a href="/type/%23">#</a> silent:flags.5?<a href="/constructor/true">true</a> background:flags.6?<a href="/constructor/true">true</a> clear_draft:flags.7?<a href="/constructor/true">true</a> hide_via:flags.11?<a href="/constructor/true">true</a> peer:<a href="/type/InputPeer">InputPeer</a> reply_to_msg_id:flags.0?<a href="/type/int">int</a> random_id:<a href="/type/long">long</a> query_id:<a href="/type/long">long</a> id:<a href="/type/string">string</a> schedule_date:flags.10?<a href="/type/int">int</a> send_as:flags.13?<a href="/type/InputPeer">InputPeer</a> = <a href="/type/Updates">Updates</a>;
<a href="/method/messages.sendMultiMedia">messages.sendMultiMedia</a>#f803138f flags:<a href="/type/%23">#</a> silent:flags.5?<a href="/constructor/true">true</a> background:flags.6?<a href="/constructor/true">true</a> clear_draft:flags.7?<a href="/constructor/true">true</a> noforwards:flags.14?<a href="/constructor/true">true</a> peer:<a href="/type/InputPeer">InputPeer</a> reply_to_msg_id:flags.0?<a href="/type/int">int</a> multi_media:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/InputSingleMedia">InputSingleMedia</a>&gt; schedule_date:flags.10?<a href="/type/int">int</a> send_as:flags.13?<a href="/type/InputPeer">InputPeer</a> = <a href="/type/Updates">Updates</a>;
<a href="/method/messages.hideAllChatJoinRequests">messages.hideAllChatJoinRequests</a>#e085f4ea flags:<a href="/type/%23">#</a> approved:flags.0?<a href="/constructor/true">true</a> peer:<a href="/type/InputPeer">InputPeer</a> link:flags.1?<a href="/type/string">string</a> = <a href="/type/Updates">Updates</a>;
<a href="/method/messages.toggleNoForwards">messages.toggleNoForwards</a>#b11eafa2 peer:<a href="/type/InputPeer">InputPeer</a> enabled:<a href="/type/Bool">Bool</a> = <a href="/type/Updates">Updates</a>;
<a href="/method/messages.saveDefaultSendAs">messages.saveDefaultSendAs</a>#ccfddf96 peer:<a href="/type/InputPeer">InputPeer</a> send_as:<a href="/type/InputPeer">InputPeer</a> = <a href="/type/Bool">Bool</a>;<br>
<a href="/method/channels.getSendAs">channels.getSendAs</a>#0dc770ee peer:<a href="/type/InputPeer">InputPeer</a> = <a href="/type/channels.SendAsPeers">channels.SendAsPeers</a>;<br>
<a href="/method/account.setAuthorizationTTL">account.setAuthorizationTTL</a>#bf899aa0 authorization_ttl_days:<a href="/type/int">int</a> = <a href="/type/Bool">Bool</a>;
<a href="/method/account.changeAuthorizationSettings">account.changeAuthorizationSettings</a>#40f48462 flags:<a href="/type/%23">#</a> hash:<a href="/type/long">long</a> encrypted_requests_disabled:flags.0?<a href="/type/Bool">Bool</a> call_requests_disabled:flags.1?<a href="/type/Bool">Bool</a> = <a href="/type/Bool">Bool</a>;<br>
<a href="/method/channels.deleteParticipantHistory">channels.deleteParticipantHistory</a>#367544db channel:<a href="/type/InputChannel">InputChannel</a> participant:<a href="/type/InputPeer">InputPeer</a> = <a href="/type/messages.AffectedHistory">messages.AffectedHistory</a>;<br></code></pre></div>
<h3><a class="anchor" href="#layer-134" id="layer-134" name="layer-134"><i class="anchor-icon"></i></a><a href="/schema?layer=134">Layer 134</a></h3>
<p><a href="/api/invites#join-requests">Join requests</a>, <a href="https://telegram.org/blog/protected-content-delete-by-date-and-more#delete-messages-by-date">delete by date</a>, <a href="https://telegram.org/blog/shared-media-scrolling-calendar-join-requests-and-more#global-chat-themes-on-ios">global chat themes</a>, <a href="https://telegram.org/blog/shared-media-scrolling-calendar-join-requests-and-more">hyper-speed scrolling and calendar view for shared media</a>, sponsored channel posts.</p>
<h4><a class="anchor" href="#schema-changes" id="schema-changes" name="schema-changes"><i class="anchor-icon"></i></a>Schema changes</h4>
<h5><a class="anchor" href="#new-methods" id="new-methods" name="new-methods"><i class="anchor-icon"></i></a>New Methods</h5>
<ul>
<li>Added <a href="/method/messages.getSearchResultsCalendar">messages.getSearchResultsCalendar</a> - Returns information about the next messages of the specified type in the chat split by days.</li>
<li>Added <a href="/method/messages.getSearchResultsPositions">messages.getSearchResultsPositions</a> - Returns sparse positions of messages of the specified type in the chat to be used for shared media scroll implementation.</li>
<li>Added <a href="/method/messages.hideChatJoinRequest">messages.hideChatJoinRequest</a> - Dismiss or approve a chat <a href="/api/invites#join-requests">join request</a> related to a specific chat or channel.</li>
</ul>
<h5><a class="anchor" href="#changed-methods" id="changed-methods" name="changed-methods"><i class="anchor-icon"></i></a>Changed Methods</h5>
<ul>
<li>Added <strong>min_date</strong>, <strong>max_date</strong> parameters in <a href="/method/messages.deleteHistory">messages.deleteHistory</a></li>
<li>Added <strong>request_needed</strong>, <strong>title</strong> parameters in <a href="/method/messages.exportChatInvite">messages.exportChatInvite</a></li>
<li>Changed type of <strong>settings</strong> from <strong>flags.3?InputThemeSettings</strong> to <strong>flags.3?Vector&lt;InputThemeSettings&gt;</strong> in <a href="/method/account.createTheme">account.createTheme</a></li>
<li>Changed type of <strong>settings</strong> from <strong>flags.3?InputThemeSettings</strong> to <strong>flags.3?Vector&lt;InputThemeSettings&gt;</strong> in <a href="/method/account.updateTheme">account.updateTheme</a></li>
<li>Added <strong>base_theme</strong> parameter, changed type of <strong>format</strong> from <strong>flags.1?string</strong> to <strong>flags.2?string</strong> in <a href="/method/account.installTheme">account.installTheme</a></li>
<li>Added <strong>request_needed</strong>, <strong>title</strong> parameters in <a href="/method/messages.editExportedChatInvite">messages.editExportedChatInvite</a></li>
<li>Added <strong>flags</strong>, <strong>requested</strong>, <strong>q</strong> parameters, changed type of <strong>link</strong> from <strong>string</strong> to <strong>flags.1?string</strong> in <a href="/method/messages.getChatInviteImporters">messages.getChatInviteImporters</a></li>
<li>Changed type of <a href="/method/account.getChatThemes">account.getChatThemes</a> from <strong>account.ChatThemes</strong> to <strong>account.Themes</strong></li>
<li>Changed type of <strong>hash</strong> from <strong>int</strong> to <strong>long</strong> in <a href="/method/account.getChatThemes">account.getChatThemes</a></li>
</ul>
<h5><a class="anchor" href="#new-constructors" id="new-constructors" name="new-constructors"><i class="anchor-icon"></i></a>New Constructors</h5>
<ul>
<li>Added <a href="/constructor/searchResultsCalendarPeriod">searchResultsCalendarPeriod</a> - Information about found messages sent on a specific day, used to split the <code>messages</code> in <a href="/constructor/messages.searchResultsCalendar">messages.searchResultsCalendar</a> constructors by days.</li>
<li>Added <a href="/constructor/messages.searchResultsCalendar">messages.searchResultsCalendar</a> - Information about found messages sent on a specific day</li>
<li>Added <a href="/constructor/searchResultPosition">searchResultPosition</a> - Information about a message in a specific position</li>
<li>Added <a href="/constructor/messages.searchResultsPositions">messages.searchResultsPositions</a> - Information about sparse positions of messages</li>
<li>Added <a href="/constructor/messageActionChatJoinedByRequest">messageActionChatJoinedByRequest</a> - A user was accepted into the group by an admin</li>
<li>Added <a href="/constructor/updatePendingJoinRequests">updatePendingJoinRequests</a> - Someone has requested to join a chat or channel</li>
<li>Added <a href="/constructor/updateBotChatInviteRequester">updateBotChatInviteRequester</a> - Someone has requested to join a chat or channel (bots only, users will receive an <a href="/constructor/updatePendingJoinRequests">updatePendingJoinRequests</a>, instead)</li>
<li>Added <a href="/constructor/channelAdminLogEventActionParticipantJoinByRequest">channelAdminLogEventActionParticipantJoinByRequest</a> - A new member was accepted to the chat by an admin</li>
</ul>
<h5><a class="anchor" href="#changed-constructors" id="changed-constructors" name="changed-constructors"><i class="anchor-icon"></i></a>Changed Constructors</h5>
<ul>
<li>Added <strong>requests_pending</strong>, <strong>recent_requesters</strong> parameters in <a href="/constructor/chatFull">chatFull</a></li>
<li>Added <strong>request_needed</strong>, <strong>requested</strong>, <strong>title</strong> parameters in <a href="/constructor/chatInviteExported">chatInviteExported</a></li>
<li>Added <strong>request_needed</strong>, <strong>about</strong> parameters in <a href="/constructor/chatInvite">chatInvite</a></li>
<li>Added <strong>requests_pending</strong>, <strong>recent_requesters</strong> parameters in <a href="/constructor/channelFull">channelFull</a></li>
<li>Added <strong>flags</strong>, <strong>via_request</strong> parameters in <a href="/constructor/channelParticipantSelf">channelParticipantSelf</a></li>
<li>Added <strong>send</strong> parameter in <a href="/constructor/channelAdminLogEventsFilter">channelAdminLogEventsFilter</a></li>
<li>Added <strong>emoticon</strong> parameter, changed type of <strong>settings</strong> from <strong>flags.3?ThemeSettings</strong> to <strong>flags.3?Vector&lt;ThemeSettings&gt;</strong> in <a href="/constructor/theme">theme</a></li>
<li>Added <strong>flags</strong>, <strong>requested</strong>, <strong>about</strong>, <strong>approved_by</strong> parameters in <a href="/constructor/chatInviteImporter">chatInviteImporter</a></li>
<li>Added <strong>channel_post</strong> parameter in <a href="/constructor/sponsoredMessage">sponsoredMessage</a></li>
</ul>
<h5><a class="anchor" href="#deleted-constructors" id="deleted-constructors" name="deleted-constructors"><i class="anchor-icon"></i></a>Deleted Constructors</h5>
<ul>
<li>Removed chatTheme</li>
<li>Removed account.chatThemesNotModified</li>
<li>Removed account.chatThemes</li>
</ul>
<h4><a class="anchor" href="#push-notification-changes" id="push-notification-changes" name="push-notification-changes"><i class="anchor-icon"></i></a>PUSH notification changes</h4>
<h5><a class="anchor" href="#new-push-notifications" id="new-push-notifications" name="new-push-notifications"><i class="anchor-icon"></i></a>New PUSH notifications</h5>
<ul>
<li>Added <a href="/api/push-updates#possible-notifications">CHAT_REQ_JOINED</a> - <code>{2}|{1} was accepted into the group</code></li>
</ul>
<h4><a class="anchor" href="#schema" id="schema" name="schema"><i class="anchor-icon"></i></a>Schema</h4>
<div><pre><code><a href="/constructor/chatFull">chatFull</a>#46a6ffb4 flags:<a href="/type/%23">#</a> can_set_username:flags.7?<a href="/constructor/true">true</a> has_scheduled:flags.8?<a href="/constructor/true">true</a> id:<a href="/type/long">long</a> about:<a href="/type/string">string</a> participants:<a href="/type/ChatParticipants">ChatParticipants</a> chat_photo:flags.2?<a href="/type/Photo">Photo</a> notify_settings:<a href="/type/PeerNotifySettings">PeerNotifySettings</a> exported_invite:flags.13?<a href="/type/ExportedChatInvite">ExportedChatInvite</a> bot_info:flags.3?<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/BotInfo">BotInfo</a>&gt; pinned_msg_id:flags.6?<a href="/type/int">int</a> folder_id:flags.11?<a href="/type/int">int</a> call:flags.12?<a href="/type/InputGroupCall">InputGroupCall</a> ttl_period:flags.14?<a href="/type/int">int</a> groupcall_default_join_as:flags.15?<a href="/type/Peer">Peer</a> theme_emoticon:flags.16?<a href="/type/string">string</a> requests_pending:flags.17?<a href="/type/int">int</a> recent_requesters:flags.17?<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/long">long</a>&gt; = <a href="/type/ChatFull">ChatFull</a>;
<a href="/constructor/chatInviteExported">chatInviteExported</a>#0ab4a819 flags:<a href="/type/%23">#</a> revoked:flags.0?<a href="/constructor/true">true</a> permanent:flags.5?<a href="/constructor/true">true</a> request_needed:flags.6?<a href="/constructor/true">true</a> link:<a href="/type/string">string</a> admin_id:<a href="/type/long">long</a> date:<a href="/type/int">int</a> start_date:flags.4?<a href="/type/int">int</a> expire_date:flags.1?<a href="/type/int">int</a> usage_limit:flags.2?<a href="/type/int">int</a> usage:flags.3?<a href="/type/int">int</a> requested:flags.7?<a href="/type/int">int</a> title:flags.8?<a href="/type/string">string</a> = <a href="/type/ExportedChatInvite">ExportedChatInvite</a>;
<a href="/constructor/chatInvite">chatInvite</a>#300c44c1 flags:<a href="/type/%23">#</a> channel:flags.0?<a href="/constructor/true">true</a> broadcast:flags.1?<a href="/constructor/true">true</a> public:flags.2?<a href="/constructor/true">true</a> megagroup:flags.3?<a href="/constructor/true">true</a> request_needed:flags.6?<a href="/constructor/true">true</a> title:<a href="/type/string">string</a> about:flags.5?<a href="/type/string">string</a> photo:<a href="/type/Photo">Photo</a> participants_count:<a href="/type/int">int</a> participants:flags.4?<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/User">User</a>&gt; = <a href="/type/ChatInvite">ChatInvite</a>;
<a href="/constructor/channelFull">channelFull</a>#59cff963 flags:<a href="/type/%23">#</a> can_view_participants:flags.3?<a href="/constructor/true">true</a> can_set_username:flags.6?<a href="/constructor/true">true</a> can_set_stickers:flags.7?<a href="/constructor/true">true</a> hidden_prehistory:flags.10?<a href="/constructor/true">true</a> can_set_location:flags.16?<a href="/constructor/true">true</a> has_scheduled:flags.19?<a href="/constructor/true">true</a> can_view_stats:flags.20?<a href="/constructor/true">true</a> blocked:flags.22?<a href="/constructor/true">true</a> id:<a href="/type/long">long</a> about:<a href="/type/string">string</a> participants_count:flags.0?<a href="/type/int">int</a> admins_count:flags.1?<a href="/type/int">int</a> kicked_count:flags.2?<a href="/type/int">int</a> banned_count:flags.2?<a href="/type/int">int</a> online_count:flags.13?<a href="/type/int">int</a> read_inbox_max_id:<a href="/type/int">int</a> read_outbox_max_id:<a href="/type/int">int</a> unread_count:<a href="/type/int">int</a> chat_photo:<a href="/type/Photo">Photo</a> notify_settings:<a href="/type/PeerNotifySettings">PeerNotifySettings</a> exported_invite:flags.23?<a href="/type/ExportedChatInvite">ExportedChatInvite</a> bot_info:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/BotInfo">BotInfo</a>&gt; migrated_from_chat_id:flags.4?<a href="/type/long">long</a> migrated_from_max_id:flags.4?<a href="/type/int">int</a> pinned_msg_id:flags.5?<a href="/type/int">int</a> stickerset:flags.8?<a href="/type/StickerSet">StickerSet</a> available_min_id:flags.9?<a href="/type/int">int</a> folder_id:flags.11?<a href="/type/int">int</a> linked_chat_id:flags.14?<a href="/type/long">long</a> location:flags.15?<a href="/type/ChannelLocation">ChannelLocation</a> slowmode_seconds:flags.17?<a href="/type/int">int</a> slowmode_next_send_date:flags.18?<a href="/type/int">int</a> stats_dc:flags.12?<a href="/type/int">int</a> pts:<a href="/type/int">int</a> call:flags.21?<a href="/type/InputGroupCall">InputGroupCall</a> ttl_period:flags.24?<a href="/type/int">int</a> pending_suggestions:flags.25?<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/string">string</a>&gt; groupcall_default_join_as:flags.26?<a href="/type/Peer">Peer</a> theme_emoticon:flags.27?<a href="/type/string">string</a> requests_pending:flags.28?<a href="/type/int">int</a> recent_requesters:flags.28?<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/long">long</a>&gt; = <a href="/type/ChatFull">ChatFull</a>;
<a href="/constructor/channelParticipantSelf">channelParticipantSelf</a>#35a8bfa7 flags:<a href="/type/%23">#</a> via_request:flags.0?<a href="/constructor/true">true</a> user_id:<a href="/type/long">long</a> inviter_id:<a href="/type/long">long</a> date:<a href="/type/int">int</a> = <a href="/type/ChannelParticipant">ChannelParticipant</a>;
<a href="/constructor/channelAdminLogEventsFilter">channelAdminLogEventsFilter</a>#ea107ae4 flags:<a href="/type/%23">#</a> join:flags.0?<a href="/constructor/true">true</a> leave:flags.1?<a href="/constructor/true">true</a> invite:flags.2?<a href="/constructor/true">true</a> ban:flags.3?<a href="/constructor/true">true</a> unban:flags.4?<a href="/constructor/true">true</a> kick:flags.5?<a href="/constructor/true">true</a> unkick:flags.6?<a href="/constructor/true">true</a> promote:flags.7?<a href="/constructor/true">true</a> demote:flags.8?<a href="/constructor/true">true</a> info:flags.9?<a href="/constructor/true">true</a> settings:flags.10?<a href="/constructor/true">true</a> pinned:flags.11?<a href="/constructor/true">true</a> edit:flags.12?<a href="/constructor/true">true</a> delete:flags.13?<a href="/constructor/true">true</a> group_call:flags.14?<a href="/constructor/true">true</a> invites:flags.15?<a href="/constructor/true">true</a> send:flags.16?<a href="/constructor/true">true</a> = <a href="/type/ChannelAdminLogEventsFilter">ChannelAdminLogEventsFilter</a>;<br>
<a href="/constructor/theme">theme</a>#a00e67d6 flags:<a href="/type/%23">#</a> creator:flags.0?<a href="/constructor/true">true</a> default:flags.1?<a href="/constructor/true">true</a> for_chat:flags.5?<a href="/constructor/true">true</a> id:<a href="/type/long">long</a> access_hash:<a href="/type/long">long</a> slug:<a href="/type/string">string</a> title:<a href="/type/string">string</a> document:flags.2?<a href="/type/Document">Document</a> settings:flags.3?<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/ThemeSettings">ThemeSettings</a>&gt; emoticon:flags.6?<a href="/type/string">string</a> installs_count:flags.4?<a href="/type/int">int</a> = <a href="/type/Theme">Theme</a>;<br>
<a href="/constructor/chatInviteImporter">chatInviteImporter</a>#8c5adfd9 flags:<a href="/type/%23">#</a> requested:flags.0?<a href="/constructor/true">true</a> user_id:<a href="/type/long">long</a> date:<a href="/type/int">int</a> about:flags.2?<a href="/type/string">string</a> approved_by:flags.1?<a href="/type/long">long</a> = <a href="/type/ChatInviteImporter">ChatInviteImporter</a>;<br>
<a href="/constructor/sponsoredMessage">sponsoredMessage</a>#d151e19a flags:<a href="/type/%23">#</a> random_id:<a href="/type/bytes">bytes</a> from_id:<a href="/type/Peer">Peer</a> channel_post:flags.2?<a href="/type/int">int</a> start_param:flags.0?<a href="/type/string">string</a> message:<a href="/type/string">string</a> entities:flags.1?<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/MessageEntity">MessageEntity</a>&gt; = <a href="/type/SponsoredMessage">SponsoredMessage</a>;
<a href="/constructor/searchResultsCalendarPeriod">searchResultsCalendarPeriod</a>#c9b0539f date:<a href="/type/int">int</a> min_msg_id:<a href="/type/int">int</a> max_msg_id:<a href="/type/int">int</a> count:<a href="/type/int">int</a> = <a href="/type/SearchResultsCalendarPeriod">SearchResultsCalendarPeriod</a>;<br>
<a href="/constructor/messages.searchResultsCalendar">messages.searchResultsCalendar</a>#147ee23c flags:<a href="/type/%23">#</a> inexact:flags.0?<a href="/constructor/true">true</a> count:<a href="/type/int">int</a> min_date:<a href="/type/int">int</a> min_msg_id:<a href="/type/int">int</a> offset_id_offset:flags.1?<a href="/type/int">int</a> periods:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/SearchResultsCalendarPeriod">SearchResultsCalendarPeriod</a>&gt; messages:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/Message">Message</a>&gt; chats:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/Chat">Chat</a>&gt; users:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/User">User</a>&gt; = <a href="/type/messages.SearchResultsCalendar">messages.SearchResultsCalendar</a>;<br>
<a href="/constructor/searchResultPosition">searchResultPosition</a>#7f648b67 msg_id:<a href="/type/int">int</a> date:<a href="/type/int">int</a> offset:<a href="/type/int">int</a> = <a href="/type/SearchResultsPosition">SearchResultsPosition</a>;<br>
<a href="/constructor/messages.searchResultsPositions">messages.searchResultsPositions</a>#53b22baf count:<a href="/type/int">int</a> positions:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/SearchResultsPosition">SearchResultsPosition</a>&gt; = <a href="/type/messages.SearchResultsPositions">messages.SearchResultsPositions</a>;
<a href="/constructor/messageActionChatJoinedByRequest">messageActionChatJoinedByRequest</a>#ebbca3cb = <a href="/type/MessageAction">MessageAction</a>;<br>
<a href="/constructor/updatePendingJoinRequests">updatePendingJoinRequests</a>#7063c3db peer:<a href="/type/Peer">Peer</a> requests_pending:<a href="/type/int">int</a> recent_requesters:<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/long">long</a>&gt; = <a href="/type/Update">Update</a>;
<a href="/constructor/updateBotChatInviteRequester">updateBotChatInviteRequester</a>#11dfa986 peer:<a href="/type/Peer">Peer</a> date:<a href="/type/int">int</a> user_id:<a href="/type/long">long</a> about:<a href="/type/string">string</a> invite:<a href="/type/ExportedChatInvite">ExportedChatInvite</a> qts:<a href="/type/int">int</a> = <a href="/type/Update">Update</a>;<br>
<a href="/constructor/channelAdminLogEventActionParticipantJoinByRequest">channelAdminLogEventActionParticipantJoinByRequest</a>#afb6144a invite:<a href="/type/ExportedChatInvite">ExportedChatInvite</a> approved_by:<a href="/type/long">long</a> = <a href="/type/ChannelAdminLogEventAction">ChannelAdminLogEventAction</a>;<br>
---functions---<br>
<a href="/method/messages.deleteHistory">messages.deleteHistory</a>#b08f922a flags:<a href="/type/%23">#</a> just_clear:flags.0?<a href="/constructor/true">true</a> revoke:flags.1?<a href="/constructor/true">true</a> peer:<a href="/type/InputPeer">InputPeer</a> max_id:<a href="/type/int">int</a> min_date:flags.2?<a href="/type/int">int</a> max_date:flags.3?<a href="/type/int">int</a> = <a href="/type/messages.AffectedHistory">messages.AffectedHistory</a>;
<a href="/method/messages.exportChatInvite">messages.exportChatInvite</a>#a02ce5d5 flags:<a href="/type/%23">#</a> legacy_revoke_permanent:flags.2?<a href="/constructor/true">true</a> request_needed:flags.3?<a href="/constructor/true">true</a> peer:<a href="/type/InputPeer">InputPeer</a> expire_date:flags.0?<a href="/type/int">int</a> usage_limit:flags.1?<a href="/type/int">int</a> title:flags.4?<a href="/type/string">string</a> = <a href="/type/ExportedChatInvite">ExportedChatInvite</a>;<br>
<a href="/method/account.createTheme">account.createTheme</a>#652e4400 flags:<a href="/type/%23">#</a> slug:<a href="/type/string">string</a> title:<a href="/type/string">string</a> document:flags.2?<a href="/type/InputDocument">InputDocument</a> settings:flags.3?<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/InputThemeSettings">InputThemeSettings</a>&gt; = <a href="/type/Theme">Theme</a>;
<a href="/method/account.updateTheme">account.updateTheme</a>#2bf40ccc flags:<a href="/type/%23">#</a> format:<a href="/type/string">string</a> theme:<a href="/type/InputTheme">InputTheme</a> slug:flags.0?<a href="/type/string">string</a> title:flags.1?<a href="/type/string">string</a> document:flags.2?<a href="/type/InputDocument">InputDocument</a> settings:flags.3?<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/InputThemeSettings">InputThemeSettings</a>&gt; = <a href="/type/Theme">Theme</a>;
<a href="/method/account.installTheme">account.installTheme</a>#c727bb3b flags:<a href="/type/%23">#</a> dark:flags.0?<a href="/constructor/true">true</a> theme:flags.1?<a href="/type/InputTheme">InputTheme</a> format:flags.2?<a href="/type/string">string</a> base_theme:flags.3?<a href="/type/BaseTheme">BaseTheme</a> = <a href="/type/Bool">Bool</a>;<br>
<a href="/method/messages.editExportedChatInvite">messages.editExportedChatInvite</a>#bdca2f75 flags:<a href="/type/%23">#</a> revoked:flags.2?<a href="/constructor/true">true</a> peer:<a href="/type/InputPeer">InputPeer</a> link:<a href="/type/string">string</a> expire_date:flags.0?<a href="/type/int">int</a> usage_limit:flags.1?<a href="/type/int">int</a> request_needed:flags.3?<a href="/type/Bool">Bool</a> title:flags.4?<a href="/type/string">string</a> = <a href="/type/messages.ExportedChatInvite">messages.ExportedChatInvite</a>;
<a href="/method/messages.getChatInviteImporters">messages.getChatInviteImporters</a>#df04dd4e flags:<a href="/type/%23">#</a> requested:flags.0?<a href="/constructor/true">true</a> peer:<a href="/type/InputPeer">InputPeer</a> link:flags.1?<a href="/type/string">string</a> q:flags.2?<a href="/type/string">string</a> offset_date:<a href="/type/int">int</a> offset_user:<a href="/type/InputUser">InputUser</a> limit:<a href="/type/int">int</a> = <a href="/type/messages.ChatInviteImporters">messages.ChatInviteImporters</a>;<br>
<a href="/method/account.getChatThemes">account.getChatThemes</a>#d638de89 hash:<a href="/type/long">long</a> = <a href="/type/account.Themes">account.Themes</a>;<br>
<a href="/method/messages.getSearchResultsCalendar">messages.getSearchResultsCalendar</a>#49f0bde9 peer:<a href="/type/InputPeer">InputPeer</a> filter:<a href="/type/MessagesFilter">MessagesFilter</a> offset_id:<a href="/type/int">int</a> offset_date:<a href="/type/int">int</a> = <a href="/type/messages.SearchResultsCalendar">messages.SearchResultsCalendar</a>;
<a href="/method/messages.getSearchResultsPositions">messages.getSearchResultsPositions</a>#6e9583a3 peer:<a href="/type/InputPeer">InputPeer</a> filter:<a href="/type/MessagesFilter">MessagesFilter</a> offset_id:<a href="/type/int">int</a> limit:<a href="/type/int">int</a> = <a href="/type/messages.SearchResultsPositions">messages.SearchResultsPositions</a>;
<a href="/method/messages.hideChatJoinRequest">messages.hideChatJoinRequest</a>#7fe7e815 flags:<a href="/type/%23">#</a> approved:flags.0?<a href="/constructor/true">true</a> peer:<a href="/type/InputPeer">InputPeer</a> user_id:<a href="/type/InputUser">InputUser</a> = <a href="/type/Updates">Updates</a>;<br></code></pre></div>
<h3><a class="anchor" href="#layer-133" id="layer-133" name="layer-133"><i class="anchor-icon"></i></a><a href="/schema?layer=133">Layer 133</a></h3>
<p>Group message receipts, <a href="/api/animated-emojis#emoji-reactions">animated emoji reactions »</a> and switch to 64-bit identifiers for users, groups, supergroups and channels.</p>
<p>Over 160 constructors and methods were changed, changing parameter types from <a href="/type/int">int</a> to <a href="/type/long">long</a>, including <a href="/constructor/user">user</a>, <a href="/constructor/chat">chat</a> and <a href="/constructor/channel">channel</a>: the full changelog is elided for space reasons.<br>
You can visit <a href="/schema">the schema</a> for an updated list of constructors.</p>
<p>Also note that the <a href="/api/offsets#hash-generation">hashing algorithm for pagination</a> was also changed to account for 64-bit IDs.</p>
<p>All layers 1-132 are deprecated due to impossible backwards compatibility between 32-bit and 64-bit IDs.</p>
<h4><a class="anchor" href="#changes" id="changes" name="changes"><i class="anchor-icon"></i></a>Changes</h4>
<ul>
<li>Added <a href="/method/messages.getMessageReadParticipants">messages.getMessageReadParticipants</a> - Get which users read a specific message</li>
<li>Added <a href="/constructor/inputStickerSetAnimatedEmojiAnimations">inputStickerSetAnimatedEmojiAnimations</a> - Animated emoji reaction stickerset (contains animations to play when a user clicks on a given animated emoji)</li>
<li>Added <a href="/constructor/sendMessageEmojiInteraction">sendMessageEmojiInteraction</a> - User has clicked on an animated emoji triggering a <a href="/api/animated-emojis#emoji-reactions">reaction, click here for more info »</a>.</li>
<li>Added <a href="/constructor/sendMessageEmojiInteractionSeen">sendMessageEmojiInteractionSeen</a> - User is watching an animated emoji reaction triggered by another user, <a href="/api/animated-emojis#emoji-reactions">click here for more info »</a>.</li>
<li>Added <a href="/constructor/inputBotInlineMessageID64">inputBotInlineMessageID64</a> - Represents a sent inline message from the perspective of a bot</li>
</ul></div>
</div>
</div>
</div>
<div class="footer_wrap">
<div class="footer_columns_wrap footer_desktop">
<div class="footer_column footer_column_telegram">
<h5>Telegram</h5>
<div class="footer_telegram_description"></div>
Telegram is a cloud-based mobile and desktop messaging app with a focus on security and speed.
</div>
<div class="footer_column">
<h5><a href="//telegram.org/faq">About</a></h5>
<ul>
<li><a href="//telegram.org/faq">FAQ</a></li>
<li><a href="//telegram.org/blog">Blog</a></li>
<li><a href="//telegram.org/jobs">Jobs</a></li>
</ul>
</div>
<div class="footer_column">
<h5><a href="//telegram.org/apps#mobile-apps">Mobile Apps</a></h5>
<ul>
<li><a href="//telegram.org/dl/ios">iPhone/iPad</a></li>
<li><a href="//telegram.org/dl/android">Android</a></li>
<li><a href="//telegram.org/dl/wp">Windows Phone</a></li>
</ul>
</div>
<div class="footer_column">
<h5><a href="//telegram.org/apps#desktop-apps">Desktop Apps</a></h5>
<ul>
<li><a href="//desktop.telegram.org/">PC/Mac/Linux</a></li>
<li><a href="//macos.telegram.org/">macOS</a></li>
<li><a href="//telegram.org/dl/web">Web-browser</a></li>
</ul>
</div>
<div class="footer_column footer_column_platform">
<h5><a href="//core.telegram.org/">Platform</a></h5>
<ul>
<li><a href="//core.telegram.org/api">API</a></li>
<li><a href="//translations.telegram.org/">Translations</a></li>
<li><a href="//instantview.telegram.org/">Instant View</a></li>
</ul>
</div>
</div>
<div class="footer_columns_wrap footer_mobile">
<div class="footer_column">
<h5><a href="//telegram.org/faq">About</a></h5>
</div>
<div class="footer_column">
<h5><a href="//telegram.org/blog">Blog</a></h5>
</div>
<div class="footer_column">
<h5><a href="//telegram.org/apps">Apps</a></h5>
</div>
<div class="footer_column">
<h5><a href="//core.telegram.org/">Platform</a></h5>
</div>
<div class="footer_column">
<h5><a href="https://twitter.com/telegram" target="_blank" data-track="Follow/Twitter" onclick="trackDlClick(this, event)">Twitter</a></h5>
</div>
</div>
</div>
</div>
<script src="/js/main.js?43"></script>
<script src="/js/jquery.min.js?1"></script>
<script src="/js/bootstrap.min.js?1"></script>
<script>window.initDevPageNav&&initDevPageNav();
backToTopInit("Go up");
removePreloadInit();
</script>
</body>
</html>