<metaproperty="description"content="Telegram Premium users can grant their favorite channels and supergroups additional features like the ability to post stories by giving them boosts.">
<metaproperty="og:title"content="Channel and supergroup boosts">
<metaproperty="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.">
<p><ahref="/api/premium">Telegram Premium</a> users can grant their favorite channels and supergroups additional features like the ability to post <ahref="/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 <ahref="/api/giveaways">giveaways»</a>. </p>
<p>The maximum possible boost level for a channel is specified in the <ahref="/api/config#boosts-channel-level-max">boosts_channel_level_max</a> config key.</p>
<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 <ahref="/api/premium">Premium</a> subscription, and can be fetched using <ahref="/method/premium.getMyBoosts">premium.getMyBoosts</a>, along with info about the channels and supergroups currently occupying each slot, if any. </p>
<p><ahref="/api/premium#gifting-telegram-premium">Gifting a Telegram Premium</a> subscription to another user will create <ahref="/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>A <code>PREMIUM_ACCOUNT_REQUIRED</code> error will be returned if the current account does not have a <ahref="/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 <ahref="/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 <ahref="/method/premium.getBoostsStatus">premium.getBoostsStatus</a>, to get the current boost status of a channel or supergroup as a <ahref="/constructor/premium.boostsStatus">premium.boostsStatus</a> constructor, check out the <ahref="/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 <ahref="/constructor/channelFull">channelFull</a>.<code>boosts_applied</code>. </p>
<p>Channel or supergroup administrators may invoke <ahref="/method/premium.getBoostsList">premium.getBoostsList</a> to fetch the list of users currently boosting the channel or supergroup, and <ahref="/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 <ahref="/constructor/messageService">messageService</a> with a <ahref="/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>
<h4><aclass="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"><iclass="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>
<p>Everything works exactly the same as when <ahref="/api/stories#posting-stories">posting stories as a user</a>, with the only difference that clients should pass the appropriate <ahref="/constructor/inputPeerChannel">inputPeerChannel</a> instead of <ahref="/constructor/inputPeerSelf">inputPeerSelf</a> to <ahref="/method/stories.canSendStory">stories.canSendStory</a>, <ahref="/method/stories.sendStory">stories.sendStory</a> and all the other story methods, see the <ahref="/api/stories#posting-stories">main documentation»</a> for more info. </p>
<p>Use <ahref="/method/stories.getChatsToSend">stories.getChatsToSend</a> to obtain a list of channels or supergroups where the user can post stories; <ahref="/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 <ahref="/api/stories#posting-stories">main documentation»</a>.</p>
<h4><aclass="anchor"href="#boost-indicator-for-supergroup-messages"id="boost-indicator-for-supergroup-messages"name="boost-indicator-for-supergroup-messages"><iclass="anchor-icon"></i></a>Boost indicator for supergroup messages</h4>
<p>In incoming supergroup messages from non-anonymous group members only, <ahref="/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 <ahref="/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 <ahref="/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>
<p>After reaching at least the boost level specified in the <code>channel_min_level</code> field of the <ahref="/constructor/help.peerColorOption">help.peerColorOption</a> constructor for the chosen palette, (only) channels gain the ability to change their <ahref="/api/colors">message accent palette»</a>. </p>
<p>After reaching at least the boost level specified in the <ahref="/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 <ahref="/api/colors">message accent palette»</a>. </p>
<p>After reaching at least the boost level specified in the <ahref="/api/config#channel-profile-bg-icon-level-min"><code>channel_profile_bg_icon_level_min</code> »</a>/<ahref="/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 <ahref="/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 <ahref="/api/colors">profile accent palette»</a>. </p>
<p>After reaching at least the boost level specified in the <ahref="/api/config#channel-wallpaper-level-min"><code>channel_wallpaper_level_min</code> »</a>/<ahref="/api/config#group-wallpaper-level-min"><code>group_wallpaper_level_min</code> »</a> config parameters, channels/supergroups gain the ability to set a <ahref="/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 <ahref="/api/config#channel-custom-wallpaper-level-min"><code>channel_custom_wallpaper_level_min</code> »</a>/<ahref="/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 <ahref="/api/wallpapers">wallpaper</a>, not just <ahref="/api/wallpapers">fill channel/supergroup wallpapers, see here » for more info</a>. </p>
<h4><aclass="anchor"href="#setting-a-custom-emoji-status"id="setting-a-custom-emoji-status"name="setting-a-custom-emoji-status"><iclass="anchor-icon"></i></a>Setting a custom emoji status</h4>
<p>After reaching at least the boost level specified in the <ahref="/api/config#channel-emoji-status-level-min"><code>channel_emoji_status_level_min</code> »</a>/<ahref="/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 <ahref="/api/emoji-status">status emoji»</a>. </p>
<h4><aclass="anchor"href="#bypass-slowmode-and-chat-restrictions"id="bypass-slowmode-and-chat-restrictions"name="bypass-slowmode-and-chat-restrictions"><iclass="anchor-icon"></i></a>Bypass slowmode and chat restrictions</h4>
<p>Supergroup admins with <ahref="/constructor/chatAdminRights">ban_users admin rights»</a> may allow users that apply a certain number of boosts to the group to bypass <ahref="/method/channels.toggleSlowMode">slow mode»</a> and <ahref="/api/rights#default-rights">other»</a> supergroup restrictions using <ahref="/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 <ahref="/constructor/channelFull">channelFull</a>.<code>boosts_unrestrict</code>. </p>
<h4><aclass="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"><iclass="anchor-icon"></i></a>Setting a custom emoji stickerset for supergroups</h4>
<p>After reaching at least the boost level specified in the <ahref="/api/config#group-emoji-stickers-level-min"><code>group_emoji_stickers_level_min</code> »</a> config parameter, supergroups gain the ability to associate a <ahref="/api/custom-emoji">custom emoji stickerset»</a>, which can be used by all users of the group (including non-<ahref="/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 <ahref="/method/channels.setStickers">channels.setStickers</a>. </p>
<p>Invoke <ahref="/method/channels.setEmojiStickers">channels.setEmojiStickers</a> to choose the custom emoji stickerset to associate to the supergroup, which will be available to users in <ahref="/constructor/channelFull">channelFull</a>.<code>emojiset</code>, and should be prioritized when choosing a custom emoji; a <ahref="/constructor/channelAdminLogEventActionChangeEmojiStickerSet">channelAdminLogEventActionChangeEmojiStickerSet</a> will be emitted to the <ahref="/api/recent-actions">admin log</a> after invoking that method. </p>
<h4><aclass="anchor"href="#unlimited-voice-message-transcriptions-for-supergroups"id="unlimited-voice-message-transcriptions-for-supergroups"name="unlimited-voice-message-transcriptions-for-supergroups"><iclass="anchor-icon"></i></a>Unlimited voice message transcriptions for supergroups</h4>
<p>After reaching at least the boost level specified in the <ahref="/api/config#group-transcribe-level-min"><code>group_transcribe_level_min</code> »</a> config parameter, non-<ahref="/api/premium">Premium</a> users in the supergroup gain the ability to <ahref="/api/transcribe">transcribe any voice message</a>, without using up their free transcription quota.</p>
<h4><aclass="anchor"href="#disable-ads-on-the-channel"id="disable-ads-on-the-channel"name="disable-ads-on-the-channel"><iclass="anchor-icon"></i></a>Disable ads on the channel</h4>
<p>After reaching at least the boost level specified in the <ahref="/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 <ahref="/method/channels.restrictSponsoredMessages">channels.restrictSponsoredMessages</a>. </p>
<p>If ads are disabled on the channel, the <ahref="/constructor/channelFull">channelFull</a>.<code>restricted_sponsored</code> flag will be set (owners only).</p></div>