telegram-crawler/data/web/blogfork.telegram.org/api/boost.html
2024-09-17 22:21:45 +00:00

223 lines
41 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html class="">
<head>
<meta charset="utf-8">
<title>Channel and supergroup boosts</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta property="description" content="Telegram Premium users can grant their favorite channels and supergroups additional features like the ability to post stories by giving them boosts.">
<meta property="og:title" content="Channel and supergroup boosts">
<meta property="og:image" content="">
<meta property="og:description" content="Telegram Premium users can grant their favorite channels and supergroups additional features like the ability to post stories by giving them boosts.">
<link rel="icon" type="image/svg+xml" href="/img/website_icon.svg?4">
<link rel="apple-touch-icon" sizes="180x180" href="/img/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/img/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/img/favicon-16x16.png">
<link rel="alternate icon" href="/img/favicon.ico" type="image/x-icon" />
<link href="/css/bootstrap.min.css?3" rel="stylesheet">
<link href="/css/telegram.css?240" 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/boost" >Channel and supergroup boosts</a></li></ul></div>
<h1 id="dev_page_title">Channel and supergroup boosts</h1>
<div id="dev_page_content"><!-- scroll_nav -->
<p><a href="/api/premium">Telegram Premium</a> users can grant their favorite channels and supergroups additional features like the ability to post <a href="/api/stories">stories</a> by giving them <strong>boosts</strong>. </p>
<p>Channels and supergroups level up as they gain more boosts and for each level, they gain additional features. </p>
<p>Additionally, channel admins may gain even more boosts by starting <a href="/api/giveaways">giveaways »</a>. </p>
<p>The maximum possible boost level for a channel is specified in the <a href="/api/config#boosts-channel-level-max">boosts_channel_level_max</a> config key.</p>
<p>Schema:</p>
<pre><code><a href='/constructor/myBoost'>myBoost</a>#c448415c flags:<a href='/type/%23'>#</a> slot:<a href='/type/int'>int</a> peer:flags.0?<a href='/type/Peer'>Peer</a> date:<a href='/type/int'>int</a> expires:<a href='/type/int'>int</a> cooldown_until_date:flags.1?<a href='/type/int'>int</a> = <a href='/type/MyBoost'>MyBoost</a>;
<a href='/constructor/premium.myBoosts'>premium.myBoosts</a>#9ae228e2 my_boosts:<a href='/type/Vector%20t'>Vector</a>&lt;<a href='/type/MyBoost'>MyBoost</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/premium.MyBoosts'>premium.MyBoosts</a>;
<a href='/constructor/prepaidGiveaway'>prepaidGiveaway</a>#b2539d54 id:<a href='/type/long'>long</a> months:<a href='/type/int'>int</a> quantity:<a href='/type/int'>int</a> date:<a href='/type/int'>int</a> = <a href='/type/PrepaidGiveaway'>PrepaidGiveaway</a>;
<a href='/constructor/premium.boostsStatus'>premium.boostsStatus</a>#4959427a flags:<a href='/type/%23'>#</a> my_boost:flags.2?<a href='/constructor/true'>true</a> level:<a href='/type/int'>int</a> current_level_boosts:<a href='/type/int'>int</a> boosts:<a href='/type/int'>int</a> gift_boosts:flags.4?<a href='/type/int'>int</a> next_level_boosts:flags.0?<a href='/type/int'>int</a> premium_audience:flags.1?<a href='/type/StatsPercentValue'>StatsPercentValue</a> boost_url:<a href='/type/string'>string</a> prepaid_giveaways:flags.3?<a href='/type/Vector%20t'>Vector</a>&lt;<a href='/type/PrepaidGiveaway'>PrepaidGiveaway</a>&gt; my_boost_slots:flags.2?<a href='/type/Vector%20t'>Vector</a>&lt;<a href='/type/int'>int</a>&gt; = <a href='/type/premium.BoostsStatus'>premium.BoostsStatus</a>;
<a href='/constructor/boost'>boost</a>#2a1c8c71 flags:<a href='/type/%23'>#</a> gift:flags.1?<a href='/constructor/true'>true</a> giveaway:flags.2?<a href='/constructor/true'>true</a> unclaimed:flags.3?<a href='/constructor/true'>true</a> id:<a href='/type/string'>string</a> user_id:flags.0?<a href='/type/long'>long</a> giveaway_msg_id:flags.2?<a href='/type/int'>int</a> date:<a href='/type/int'>int</a> expires:<a href='/type/int'>int</a> used_gift_slug:flags.4?<a href='/type/string'>string</a> multiplier:flags.5?<a href='/type/int'>int</a> = <a href='/type/Boost'>Boost</a>;
<a href='/constructor/premium.boostsList'>premium.boostsList</a>#86f8613c flags:<a href='/type/%23'>#</a> count:<a href='/type/int'>int</a> boosts:<a href='/type/Vector%20t'>Vector</a>&lt;<a href='/type/Boost'>Boost</a>&gt; next_offset:flags.0?<a href='/type/string'>string</a> users:<a href='/type/Vector%20t'>Vector</a>&lt;<a href='/type/User'>User</a>&gt; = <a href='/type/premium.BoostsList'>premium.BoostsList</a>;
<a href='/constructor/message'>message</a>#94345242 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> invert_media:flags.27?<a href='/constructor/true'>true</a> flags2:<a href='/type/%23'>#</a> offline:flags2.1?<a href='/constructor/true'>true</a> id:<a href='/type/int'>int</a> from_id:flags.8?<a href='/type/Peer'>Peer</a> from_boosts_applied:flags.29?<a href='/type/int'>int</a> peer_id:<a href='/type/Peer'>Peer</a> saved_peer_id:flags.28?<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> via_business_bot_id:flags2.0?<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> quick_reply_shortcut_id:flags.30?<a href='/type/int'>int</a> effect:flags2.2?<a href='/type/long'>long</a> factcheck:flags2.3?<a href='/type/FactCheck'>FactCheck</a> = <a href='/type/Message'>Message</a>;
<a href='/constructor/channelFull'>channelFull</a>#bbab348d 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> flags2:<a href='/type/%23'>#</a> can_delete_channel:flags2.0?<a href='/constructor/true'>true</a> antispam:flags2.1?<a href='/constructor/true'>true</a> participants_hidden:flags2.2?<a href='/constructor/true'>true</a> translations_disabled:flags2.3?<a href='/constructor/true'>true</a> stories_pinned_available:flags2.5?<a href='/constructor/true'>true</a> view_forum_as_messages:flags2.6?<a href='/constructor/true'>true</a> restricted_sponsored:flags2.11?<a href='/constructor/true'>true</a> can_view_revenue:flags2.12?<a href='/constructor/true'>true</a> paid_media_allowed:flags2.14?<a href='/constructor/true'>true</a> can_view_stars_revenue:flags2.15?<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/ChatReactions'>ChatReactions</a> reactions_limit:flags2.13?<a href='/type/int'>int</a> stories:flags2.4?<a href='/type/PeerStories'>PeerStories</a> wallpaper:flags2.7?<a href='/type/WallPaper'>WallPaper</a> boosts_applied:flags2.8?<a href='/type/int'>int</a> boosts_unrestrict:flags2.9?<a href='/type/int'>int</a> emojiset:flags2.10?<a href='/type/StickerSet'>StickerSet</a> = <a href='/type/ChatFull'>ChatFull</a>;
<a href='/constructor/messageActionBoostApply'>messageActionBoostApply</a>#cc02aa6d boosts:<a href='/type/int'>int</a> = <a href='/type/MessageAction'>MessageAction</a>;
<a href='/constructor/messageService'>messageService</a>#2b085862 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> legacy:flags.19?<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> reply_to:flags.3?<a href='/type/MessageReplyHeader'>MessageReplyHeader</a> date:<a href='/type/int'>int</a> action:<a href='/type/MessageAction'>MessageAction</a> ttl_period:flags.25?<a href='/type/int'>int</a> = <a href='/type/Message'>Message</a>;
---functions---
<a href='/method/premium.getMyBoosts'>premium.getMyBoosts</a>#0be77b4a = <a href='/type/premium.MyBoosts'>premium.MyBoosts</a>;
<a href='/method/premium.applyBoost'>premium.applyBoost</a>#6b7da746 flags:<a href='/type/%23'>#</a> slots:flags.0?<a href='/type/Vector%20t'>Vector</a>&lt;<a href='/type/int'>int</a>&gt; peer:<a href='/type/InputPeer'>InputPeer</a> = <a href='/type/premium.MyBoosts'>premium.MyBoosts</a>;
<a href='/method/premium.getBoostsStatus'>premium.getBoostsStatus</a>#042f1f61 peer:<a href='/type/InputPeer'>InputPeer</a> = <a href='/type/premium.BoostsStatus'>premium.BoostsStatus</a>;
<a href='/method/premium.getUserBoosts'>premium.getUserBoosts</a>#39854d1f peer:<a href='/type/InputPeer'>InputPeer</a> user_id:<a href='/type/InputUser'>InputUser</a> = <a href='/type/premium.BoostsList'>premium.BoostsList</a>;
<a href='/method/premium.getBoostsList'>premium.getBoostsList</a>#60f67660 flags:<a href='/type/%23'>#</a> gifts:flags.0?<a href='/constructor/true'>true</a> peer:<a href='/type/InputPeer'>InputPeer</a> offset:<a href='/type/string'>string</a> limit:<a href='/type/int'>int</a> = <a href='/type/premium.BoostsList'>premium.BoostsList</a>;</code></pre>
<p>Each user has a certain number of boost slots that can be assigned to channels and supergroups: the precise number depends on whether they bought or were gifted a <a href="/api/premium">Premium</a> subscription, and can be fetched using <a href="/method/premium.getMyBoosts">premium.getMyBoosts</a>, along with info about the channels and supergroups currently occupying each slot, if any. </p>
<p><a href="/api/premium#gifting-telegram-premium">Gifting a Telegram Premium</a> subscription to another user will create <a href="/api/config#boosts-per-sent-gift">boosts_per_sent_gift</a> new boost slots for us, and one boost slot for the destination user. </p>
<p>Use <a href="/method/premium.applyBoost">premium.applyBoost</a> to assign some of your boost slots to a channel or supergroup. </p>
<p>A <code>PREMIUM_ACCOUNT_REQUIRED</code> error will be returned if the current account does not have a <a href="/api/premium">Telegram Premium</a> subscription.<br>
A <code>BOOST_NOT_MODIFIED</code> RPC error will be returned when calling any of the two methods if the user is already boosting the specified channel or supergroup with the same slots. </p>
<p>After assigning a slot a channel or supergroup, the user may not change the boosted channel or supergroup for that slot for a certain cooldown period, specified in the <a href="/constructor/myBoost">myBoost</a>.<code>cooldown_until_date</code> field: if the cooldown period isn't over yet, the method will return a 420 <code>FLOOD_WAIT_X</code> error, indicating the number of seconds left before a different channel or supergroup can be boosted. </p>
<p>Users may also invoke <a href="/method/premium.getBoostsStatus">premium.getBoostsStatus</a>, to get the current boost status of a channel or supergroup as a <a href="/constructor/premium.boostsStatus">premium.boostsStatus</a> constructor, check out the <a href="/constructor/premium.boostsStatus">constructor page</a> for more info.</p>
<p>The number of boosts we have currently assigned to the channel/supergroup will also be visible in <a href="/constructor/channelFull">channelFull</a>.<code>boosts_applied</code>. </p>
<p>Channel or supergroup administrators may invoke <a href="/method/premium.getBoostsList">premium.getBoostsList</a> to fetch the list of users currently boosting the channel or supergroup, and <a href="/method/premium.getUserBoosts">premium.getUserBoosts</a> to get info about the boosts sent to a channel or supergroup by a specific user.</p>
<p>Boosting a channel or supergroup will emit (not immediately, after max 15 seconds to allow grouping of repeated boosts) a <a href="/constructor/messageService">messageService</a> with a <a href="/constructor/messageActionBoostApply">messageActionBoostApply</a> to all users (supergroups) or for just the sender (channels), with <code>from_id</code> equal to the sender of the boosts. </p>
<h3><a class="anchor" href="#features" id="features" name="features"><i class="anchor-icon"></i></a>Features</h3>
<h4><a class="anchor" href="#posting-stories-as-a-channel-or-supergroup" id="posting-stories-as-a-channel-or-supergroup" name="posting-stories-as-a-channel-or-supergroup"><i class="anchor-icon"></i></a>Posting stories as a channel or supergroup</h4>
<p>With each boost, channels and supergroups can post 1 additional story per day to their subscribers' story feeds.</p>
<pre><code><a href='/constructor/inputPeerChannel'>inputPeerChannel</a>#27bcbbfc channel_id:<a href='/type/long'>long</a> access_hash:<a href='/type/long'>long</a> = <a href='/type/InputPeer'>InputPeer</a>;
<a href='/constructor/messages.chats'>messages.chats</a>#64ff9fd5 chats:<a href='/type/Vector%20t'>Vector</a>&lt;<a href='/type/Chat'>Chat</a>&gt; = <a href='/type/messages.Chats'>messages.Chats</a>;
---functions---
<a href='/method/stories.getChatsToSend'>stories.getChatsToSend</a>#a56a8b60 = <a href='/type/messages.Chats'>messages.Chats</a>;</code></pre>
<p>Everything works exactly the same as when <a href="/api/stories#posting-stories">posting stories as a user</a>, with the only difference that clients should pass the appropriate <a href="/constructor/inputPeerChannel">inputPeerChannel</a> instead of <a href="/constructor/inputPeerSelf">inputPeerSelf</a> to <a href="/method/stories.canSendStory">stories.canSendStory</a>, <a href="/method/stories.sendStory">stories.sendStory</a> and all the other story methods, see the <a href="/api/stories#posting-stories">main documentation »</a> for more info. </p>
<p>Use <a href="/method/stories.getChatsToSend">stories.getChatsToSend</a> to obtain a list of channels or supergroups where the user can post stories; <a href="/method/stories.canSendStory">stories.canSendStory</a> must still be used before uploading a story to make sure no other limit was reached, as described in the <a href="/api/stories#posting-stories">main documentation »</a>.</p>
<h4><a class="anchor" href="#boost-indicator-for-supergroup-messages" id="boost-indicator-for-supergroup-messages" name="boost-indicator-for-supergroup-messages"><i class="anchor-icon"></i></a>Boost indicator for supergroup messages</h4>
<p>In incoming supergroup messages from non-anonymous group members only, <a href="/constructor/message">message</a>.<code>from_boosts_applied</code> contains the number of boosts that the message's author has assigned to the supergroup.<br>
This counter should be shown in the UI, in the header of the message.<br>
Note that <a href="/constructor/message">message</a>.<code>from_boosts_applied</code> should be locally overridden for non-anonymous <em>outgoing</em> supergroup messages, according to the current value of <a href="/constructor/channelFull">channelFull</a>.<code>boosts_applied</code>, to ensure the value is correct even for messages sent by the current user before a supergroup was boosted (or after a boost has expired or the number of boosts has changed); do not update this value for incoming messages from other users, even if their boosts have changed.</p>
<h4><a class="anchor" href="#changing-message-accent-color" id="changing-message-accent-color" name="changing-message-accent-color"><i class="anchor-icon"></i></a>Changing message accent color</h4>
<p>After reaching at least the boost level specified in the <code>channel_min_level</code> field of the <a href="/constructor/help.peerColorOption">help.peerColorOption</a> constructor for the chosen palette, (only) channels gain the ability to change their <a href="/api/colors">message accent palette »</a>. </p>
<h4><a class="anchor" href="#changing-message-accent-emoji" id="changing-message-accent-emoji" name="changing-message-accent-emoji"><i class="anchor-icon"></i></a>Changing message accent emoji</h4>
<p>After reaching at least the boost level specified in the <a href="/api/config#channel-bg-icon-level-min"><code>channel_bg_icon_level_min</code> config parameter</a>, (only) channels gain the ability to change the emoji used in the <a href="/api/colors">message accent palette »</a>. </p>
<h4><a class="anchor" href="#changing-profile-accent-color-emoji" id="changing-profile-accent-color-emoji" name="changing-profile-accent-color-emoji"><i class="anchor-icon"></i></a>Changing profile accent color/emoji</h4>
<p>After reaching at least the boost level specified in the <a href="/api/config#channel-profile-bg-icon-level-min"><code>channel_profile_bg_icon_level_min</code> »</a>/<a href="/api/config#group-profile-bg-icon-level-min"><code>group_profile_bg_icon_level_min</code> »</a> config parameters and the boost level specified in the <code>channel_min_level</code>/<code>group_min_level</code> field of the <a href="/constructor/help.peerColorOption">help.peerColorOption</a> constructor for the chosen palette, channels/supergroups gain the ability to change the emoji and color used in the <a href="/api/colors">profile accent palette »</a>. </p>
<h4><a class="anchor" href="#setting-wallpapers" id="setting-wallpapers" name="setting-wallpapers"><i class="anchor-icon"></i></a>Setting wallpapers</h4>
<p>After reaching at least the boost level specified in the <a href="/api/config#channel-wallpaper-level-min"><code>channel_wallpaper_level_min</code> »</a>/<a href="/api/config#group-wallpaper-level-min"><code>group_wallpaper_level_min</code> »</a> config parameters, channels/supergroups gain the ability to set a <a href="/api/wallpapers#channel-and-supergroup-wallpapers">fill channel/supergroup wallpaper, see here » for more info</a>.<br>
After reaching at least the boost level specified in the <a href="/api/config#channel-custom-wallpaper-level-min"><code>channel_custom_wallpaper_level_min</code> »</a>/<a href="/api/config#group-custom-wallpaper-level-min"><code>group_custom_wallpaper_level_min</code> »</a> config parameters, channels/supergroups gain the ability to set any custom <a href="/api/wallpapers">wallpaper</a>, not just <a href="/api/wallpapers">fill channel/supergroup wallpapers, see here » for more info</a>. </p>
<h4><a class="anchor" href="#setting-a-custom-emoji-status" id="setting-a-custom-emoji-status" name="setting-a-custom-emoji-status"><i class="anchor-icon"></i></a>Setting a custom emoji status</h4>
<p>After reaching at least the boost level specified in the <a href="/api/config#channel-emoji-status-level-min"><code>channel_emoji_status_level_min</code> »</a>/<a href="/api/config#group-emoji-status-level-min"><code>group_emoji_status_level_min</code> »</a> config parameters, channels/supergroups gain the ability to change their <a href="/api/emoji-status">status emoji »</a>. </p>
<h4><a class="anchor" href="#bypass-slowmode-and-chat-restrictions" id="bypass-slowmode-and-chat-restrictions" name="bypass-slowmode-and-chat-restrictions"><i class="anchor-icon"></i></a>Bypass slowmode and chat restrictions</h4>
<pre><code><a href='/constructor/channelFull'>channelFull</a>#bbab348d 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> flags2:<a href='/type/%23'>#</a> can_delete_channel:flags2.0?<a href='/constructor/true'>true</a> antispam:flags2.1?<a href='/constructor/true'>true</a> participants_hidden:flags2.2?<a href='/constructor/true'>true</a> translations_disabled:flags2.3?<a href='/constructor/true'>true</a> stories_pinned_available:flags2.5?<a href='/constructor/true'>true</a> view_forum_as_messages:flags2.6?<a href='/constructor/true'>true</a> restricted_sponsored:flags2.11?<a href='/constructor/true'>true</a> can_view_revenue:flags2.12?<a href='/constructor/true'>true</a> paid_media_allowed:flags2.14?<a href='/constructor/true'>true</a> can_view_stars_revenue:flags2.15?<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/ChatReactions'>ChatReactions</a> reactions_limit:flags2.13?<a href='/type/int'>int</a> stories:flags2.4?<a href='/type/PeerStories'>PeerStories</a> wallpaper:flags2.7?<a href='/type/WallPaper'>WallPaper</a> boosts_applied:flags2.8?<a href='/type/int'>int</a> boosts_unrestrict:flags2.9?<a href='/type/int'>int</a> emojiset:flags2.10?<a href='/type/StickerSet'>StickerSet</a> = <a href='/type/ChatFull'>ChatFull</a>;
---functions---
<a href='/method/channels.setBoostsToUnblockRestrictions'>channels.setBoostsToUnblockRestrictions</a>#ad399cee channel:<a href='/type/InputChannel'>InputChannel</a> boosts:<a href='/type/int'>int</a> = <a href='/type/Updates'>Updates</a>;</code></pre>
<p>Supergroup admins with <a href="/constructor/chatAdminRights">ban_users admin rights »</a> may allow users that apply a certain number of boosts to the group to bypass <a href="/method/channels.toggleSlowMode">slow mode »</a> and <a href="/api/rights#default-rights">other »</a> supergroup restrictions using <a href="/method/channels.setBoostsToUnblockRestrictions">channels.setBoostsToUnblockRestrictions</a>. </p>
<p>The number of required boosts must be specified in the <code>boosts</code> parameter (1-8, 0 to disable), and will be returned in <a href="/constructor/channelFull">channelFull</a>.<code>boosts_unrestrict</code>. </p>
<h4><a class="anchor" href="#setting-a-custom-emoji-stickerset-for-supergroups" id="setting-a-custom-emoji-stickerset-for-supergroups" name="setting-a-custom-emoji-stickerset-for-supergroups"><i class="anchor-icon"></i></a>Setting a custom emoji stickerset for supergroups</h4>
<pre><code><a href='/constructor/channelFull'>channelFull</a>#bbab348d 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> flags2:<a href='/type/%23'>#</a> can_delete_channel:flags2.0?<a href='/constructor/true'>true</a> antispam:flags2.1?<a href='/constructor/true'>true</a> participants_hidden:flags2.2?<a href='/constructor/true'>true</a> translations_disabled:flags2.3?<a href='/constructor/true'>true</a> stories_pinned_available:flags2.5?<a href='/constructor/true'>true</a> view_forum_as_messages:flags2.6?<a href='/constructor/true'>true</a> restricted_sponsored:flags2.11?<a href='/constructor/true'>true</a> can_view_revenue:flags2.12?<a href='/constructor/true'>true</a> paid_media_allowed:flags2.14?<a href='/constructor/true'>true</a> can_view_stars_revenue:flags2.15?<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/ChatReactions'>ChatReactions</a> reactions_limit:flags2.13?<a href='/type/int'>int</a> stories:flags2.4?<a href='/type/PeerStories'>PeerStories</a> wallpaper:flags2.7?<a href='/type/WallPaper'>WallPaper</a> boosts_applied:flags2.8?<a href='/type/int'>int</a> boosts_unrestrict:flags2.9?<a href='/type/int'>int</a> emojiset:flags2.10?<a href='/type/StickerSet'>StickerSet</a> = <a href='/type/ChatFull'>ChatFull</a>;
<a href='/constructor/channelAdminLogEventActionChangeEmojiStickerSet'>channelAdminLogEventActionChangeEmojiStickerSet</a>#46d840ab prev_stickerset:<a href='/type/InputStickerSet'>InputStickerSet</a> new_stickerset:<a href='/type/InputStickerSet'>InputStickerSet</a> = <a href='/type/ChannelAdminLogEventAction'>ChannelAdminLogEventAction</a>;
---functions---
<a href='/method/channels.setEmojiStickers'>channels.setEmojiStickers</a>#3cd930b7 channel:<a href='/type/InputChannel'>InputChannel</a> stickerset:<a href='/type/InputStickerSet'>InputStickerSet</a> = <a href='/type/Bool'>Bool</a>;</code></pre>
<p>After reaching at least the boost level specified in the <a href="/api/config#group-emoji-stickers-level-min"><code>group_emoji_stickers_level_min</code> »</a> config parameter, supergroups gain the ability to associate a <a href="/api/custom-emoji">custom emoji stickerset »</a>, which can be used by all users of the group (including non-<a href="/api/premium">Premium</a> users!), for messages sent within the group. </p>
<p>This feature is the custom emoji stickerset counterpart of the supergroup stickerset feature, available through <a href="/method/channels.setStickers">channels.setStickers</a>. </p>
<p>Invoke <a href="/method/channels.setEmojiStickers">channels.setEmojiStickers</a> to choose the custom emoji stickerset to associate to the supergroup, which will be available to users in <a href="/constructor/channelFull">channelFull</a>.<code>emojiset</code>, and should be prioritized when choosing a custom emoji; a <a href="/constructor/channelAdminLogEventActionChangeEmojiStickerSet">channelAdminLogEventActionChangeEmojiStickerSet</a> will be emitted to the <a href="/api/recent-actions">admin log</a> after invoking that method. </p>
<h4><a class="anchor" href="#unlimited-voice-message-transcriptions-for-supergroups" id="unlimited-voice-message-transcriptions-for-supergroups" name="unlimited-voice-message-transcriptions-for-supergroups"><i class="anchor-icon"></i></a>Unlimited voice message transcriptions for supergroups</h4>
<p>After reaching at least the boost level specified in the <a href="/api/config#group-transcribe-level-min"><code>group_transcribe_level_min</code> »</a> config parameter, non-<a href="/api/premium">Premium</a> users in the supergroup gain the ability to <a href="/api/transcribe">transcribe any voice message</a>, without using up their free transcription quota.</p>
<h4><a class="anchor" href="#disable-ads-on-the-channel" id="disable-ads-on-the-channel" name="disable-ads-on-the-channel"><i class="anchor-icon"></i></a>Disable ads on the channel</h4>
<pre><code><a href='/constructor/channelFull'>channelFull</a>#bbab348d 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> flags2:<a href='/type/%23'>#</a> can_delete_channel:flags2.0?<a href='/constructor/true'>true</a> antispam:flags2.1?<a href='/constructor/true'>true</a> participants_hidden:flags2.2?<a href='/constructor/true'>true</a> translations_disabled:flags2.3?<a href='/constructor/true'>true</a> stories_pinned_available:flags2.5?<a href='/constructor/true'>true</a> view_forum_as_messages:flags2.6?<a href='/constructor/true'>true</a> restricted_sponsored:flags2.11?<a href='/constructor/true'>true</a> can_view_revenue:flags2.12?<a href='/constructor/true'>true</a> paid_media_allowed:flags2.14?<a href='/constructor/true'>true</a> can_view_stars_revenue:flags2.15?<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/ChatReactions'>ChatReactions</a> reactions_limit:flags2.13?<a href='/type/int'>int</a> stories:flags2.4?<a href='/type/PeerStories'>PeerStories</a> wallpaper:flags2.7?<a href='/type/WallPaper'>WallPaper</a> boosts_applied:flags2.8?<a href='/type/int'>int</a> boosts_unrestrict:flags2.9?<a href='/type/int'>int</a> emojiset:flags2.10?<a href='/type/StickerSet'>StickerSet</a> = <a href='/type/ChatFull'>ChatFull</a>;
---functions---
<a href='/method/channels.restrictSponsoredMessages'>channels.restrictSponsoredMessages</a>#9ae91519 channel:<a href='/type/InputChannel'>InputChannel</a> restricted:<a href='/type/Bool'>Bool</a> = <a href='/type/Updates'>Updates</a>;</code></pre>
<p>After reaching at least the boost level specified in the <a href="/api/config#channel-restrict-sponsored-level-min"><code>channel_restrict_sponsored_level_min</code> »</a> config parameter, channel owners may disable ads on the channel for all users using <a href="/method/channels.restrictSponsoredMessages">channels.restrictSponsoredMessages</a>. </p>
<p>If ads are disabled on the channel, the <a href="/constructor/channelFull">channelFull</a>.<code>restricted_sponsored</code> flag will be set (owners only).</p></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/privacy">Privacy</a></li>
<li><a href="//telegram.org/press">Press</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/android">Android</a></li>
<li><a href="//telegram.org/dl/web">Mobile Web</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="/">Platform</a></h5>
<ul>
<li><a href="/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="/">Platform</a></h5>
</div>
<div class="footer_column">
<h5><a href="//telegram.org/press">Press</a></h5>
</div>
</div>
</div>
</div>
<script src="/js/main.js?47"></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>