telegram-crawler/data/web/core.telegram.org/method/messages.sendMessage.html
2024-09-23 18:02:35 +00:00

557 lines
30 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.

<!DOCTYPE html>
<html class="">
<head>
<meta charset="utf-8">
<title>messages.sendMessage</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta property="description" content="Sends a message to a chat">
<meta property="og:title" content="messages.sendMessage">
<meta property="og:image" content="">
<meta property="og:description" content="Sends a message to a chat">
<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?241" 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="/methods" >All Methods</a></li><i class="icon icon-breadcrumb-divider"></i><li><a href="/method/messages.sendMessage" >messages.sendMessage</a></li></ul></div>
<h1 id="dev_page_title">messages.sendMessage</h1>
<div id="dev_page_content"><p>Sends a message to a chat</p>
<p><div class="clearfix">
<ul class="dev_layer_select slightly-pull-right nav nav-pills">
<li class="dropdown">
<a class="dropdown-toggle" onclick="return dropdownClick(this, event)" href="#">Layer 185 <b class="caret"></b></a>
<ul class="dropdown-menu">
<li><a href="?layer=1">1 &ndash; Base layer</a></li><li><a href="?layer=2">2 &ndash; New userpic notifications</a></li><li><a href="?layer=3">3 &ndash; Send message can trigger link change</a></li><li><a href="?layer=4">4 &ndash; Check-in chats</a></li><li><a href="?layer=5">5 &ndash; Localized SMS, localized notifications</a></li><li><a href="?layer=6">6 &ndash; Foursquare integration</a></li><li><a href="?layer=7">7 &ndash; Added wallPaperSolid</a></li><li><a href="?layer=8">8 &ndash; Added end-to-end encryption</a></li><li><a href="?layer=9">9 &ndash; Improved big files upload perfomance</a></li><li><a href="?layer=10">10 &ndash; Improved chat participants updates</a></li><li><a href="?layer=11">11 &ndash; Improved secret chats</a></li><li><a href="?layer=12">12 &ndash; New dynamic support</a></li><li><a href="?layer=13">13 &ndash; Audio, video MIME; contacts import retry; new secret actions</a></li><li><a href="?layer=14">14 &ndash; Notify settings sync, blacklist sync</a></li><li><a href="?layer=15">15 &ndash; Modified getHistory offset behaviour</a></li><li><a href="?layer=16">16 &ndash; Split sendCode into 2 parts</a></li><li><a href="?layer=17">17 &ndash; Added custom typing, introduced message flags</a></li><li><a href="?layer=18">18 &ndash; Added usernames</a></li><li><a href="?layer=23">23 &ndash; Stickers for secret chats</a></li><li><a href="?layer=105">105 &ndash; Scheduled messages, Cloud themes</a></li><li><a href="?layer=108">108 &ndash; Login with QR code</a></li><li><a href="?layer=109">109 &ndash; Polls v2</a></li><li><a href="?layer=110">110 &ndash; People Nearby 2.0, Bank card entity</a></li><li><a href="?layer=111">111 &ndash; Folders, Broadcast Stats</a></li><li><a href="?layer=112">112 &ndash; Old featured stickers, generic dice, poll timer, poll solution</a></li><li><a href="?layer=113">113 &ndash; PSA</a></li><li><a href="?layer=114">114 &ndash; Video thumbs for GIFs</a></li><li><a href="?layer=115">115 &ndash; Peek Channel Invite</a></li><li><a href="?layer=116">116 &ndash; Group Stats, Profile Videos</a></li><li><a href="?layer=117">117 &ndash; WebRTC Phone Calls</a></li><li><a href="?layer=118">118 &ndash; Callback with 2FA, Countries list</a></li><li><a href="?layer=119">119 &ndash; Comments in channels, Threads, Anonymous Admins</a></li><li><a href="?layer=120">120 &ndash; Multipins, Message Stats, GeoLive v2</a></li><li><a href="?layer=121">121 &ndash; SVG-based Outlines for Stickers</a></li><li><a href="?layer=122">122 &ndash; Voice Chats</a></li><li><a href="?layer=123">123 &ndash; Voice Chat improvements</a></li><li><a href="?layer=124">124 &ndash; Expiring Invite links</a></li><li><a href="?layer=125">125 &ndash; Voice Chats in Broadcasts</a></li><li><a href="?layer=126">126 &ndash; Ban channels in channels</a></li><li><a href="?layer=127">127 &ndash; Payments in channels</a></li><li><a href="?layer=128">128 &ndash; Microthumbs for User/Chat profile photos</a></li><li><a href="?layer=129">129 &ndash; Video Chats</a></li><li><a href="?layer=130">130 &ndash; Custom placeholder for bot reply keyboards</a></li><li><a href="?layer=131">131 &ndash; Reset 2FA Password after a week</a></li><li><a href="?layer=132">132 &ndash; Chat themes</a></li><li><a href="?layer=133">133 &ndash; 64-bit IDs for User/Chat</a></li><li><a href="?layer=134">134 &ndash; Chat Requests, Shared Media Calendar</a></li><li><a href="?layer=135">135 &ndash; Send Message As a Channel</a></li><li><a href="?layer=136">136 &ndash; Reactions</a></li><li><a href="?layer=137">137 &ndash; Translations</a></li><li><a href="?layer=138">138 &ndash; GIF Sticker Packs</a></li><li><a href="?layer=139">139 &ndash; RTMP streaming</a></li><li><a href="?layer=140">140 &ndash; WebApps, Cloud Ringtones</a></li><li><a href="?layer=142">142 &ndash; TCP Reflectors</a></li><li><a href="?layer=143">143 &ndash; Premium Subscription, Cloud Invoices</a></li><li><a href="?layer=144">144 &ndash; Premium as a Gift, Custom Emoji</a></li><li><a href="?layer=145">145 &ndash; Custom Reactions, Statuses, Sign In with email</a></li><li><a href="?layer=147">147 &ndash; Keywords for stickers and emojis</a></li><li><a href="?layer=148">148 &ndash; Forums, collectible usernames</a></li><li><a href="?layer=150">150 &ndash; Pinned forum topics, general topic</a></li><li><a href="?layer=151">151 &ndash; Media spoilers, suggested profile photos</a></li><li><a href="?layer=152">152 &ndash; Real-time translations, Firebase SMS authentication</a></li><li><a href="?layer=153">153 &ndash; Modify created stickersets</a></li><li><a href="?layer=155">155 &ndash; Dates for reactions</a></li><li><a href="?layer=158">158 &ndash; Shared folders, per-chat wallpapers</a></li><li><a href="?layer=159">159 &ndash; Anonymous votes</a></li><li><a href="?layer=160">160 &ndash; Stories</a></li><li><a href="?layer=164">164 &ndash; Stories in Channels</a></li><li><a href="?layer=166">166 &ndash; Giveaways in channels</a></li><li><a href="?layer=167">167 &ndash; Similar channels</a></li><li><a href="?layer=168">168 &ndash; Channel colors</a></li><li><a href="?layer=169">169 &ndash; Multiselection of chats for bots</a></li><li><a href="?layer=170">170 &ndash; Saved Messages 2.0</a></li><li><a href="?layer=171">171 &ndash; Saved Messages 2.0</a></li><li><a href="?layer=174">174 &ndash; Group boosts</a></li><li><a href="?layer=176">176 &ndash; Business</a></li><li><a href="?layer=177">177 &ndash; Business Bots, Birthdays</a></li><li><a href="?layer=178">178 &ndash; Saved Personal channel, Reactions notifications</a></li><li><a href="?layer=179">179 &ndash; Channel revenue stats, phrases in SMS</a></li><li><a href="?layer=180">180 &ndash; Message Effects, Hashtags</a></li><li><a href="?layer=181">181 &ndash; Stars</a></li><li><a href="?layer=182">182 &ndash; Stars Revenue</a></li><li><a href="?layer=183">183 &ndash; Paid posts</a></li><li><a href="?layer=184">184 &ndash; Stars Refunds</a></li><li><a href="?layer=185"><strong>185 &ndash; MiniApp Store, Star Gifts</strong></a></li>
<li class="divider"></li>
<li><a href="/api/layers">More...</a></li>
</ul>
</li>
</ul>
</div>
<pre class="page_scheme"><code><a href="/constructor/updatesTooLong" >updatesTooLong</a>#e317af7e = <a href="/type/Updates" >Updates</a>;
<a href="/constructor/updateShortMessage" >updateShortMessage</a>#313bc7f8 flags:<a href="/type/%23" >#</a> out:flags.1?true mentioned:flags.4?true media_unread:flags.5?true silent:flags.13?true id:<a href="/type/int" >int</a> user_id:<a href="/type/long" >long</a> message:<a href="/type/string" >string</a> pts:<a href="/type/int" >int</a> pts_count:<a href="/type/int" >int</a> date:<a href="/type/int" >int</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> entities:flags.7?<a href="/type/Vector%20t" >Vector</a>&lt;<a href="/type/MessageEntity" >MessageEntity</a>&gt; ttl_period:flags.25?<a href="/type/int" >int</a> = <a href="/type/Updates" >Updates</a>;
<a href="/constructor/updateShortChatMessage" >updateShortChatMessage</a>#4d6deea5 flags:<a href="/type/%23" >#</a> out:flags.1?true mentioned:flags.4?true media_unread:flags.5?true silent:flags.13?true id:<a href="/type/int" >int</a> from_id:<a href="/type/long" >long</a> chat_id:<a href="/type/long" >long</a> message:<a href="/type/string" >string</a> pts:<a href="/type/int" >int</a> pts_count:<a href="/type/int" >int</a> date:<a href="/type/int" >int</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> entities:flags.7?<a href="/type/Vector%20t" >Vector</a>&lt;<a href="/type/MessageEntity" >MessageEntity</a>&gt; ttl_period:flags.25?<a href="/type/int" >int</a> = <a href="/type/Updates" >Updates</a>;
<a href="/constructor/updateShort" >updateShort</a>#78d4dec1 update:<a href="/type/Update" >Update</a> date:<a href="/type/int" >int</a> = <a href="/type/Updates" >Updates</a>;
<a href="/constructor/updatesCombined" >updatesCombined</a>#725b04c3 updates:<a href="/type/Vector%20t" >Vector</a>&lt;<a href="/type/Update" >Update</a>&gt; users:<a href="/type/Vector%20t" >Vector</a>&lt;<a href="/type/User" >User</a>&gt; chats:<a href="/type/Vector%20t" >Vector</a>&lt;<a href="/type/Chat" >Chat</a>&gt; date:<a href="/type/int" >int</a> seq_start:<a href="/type/int" >int</a> seq:<a href="/type/int" >int</a> = <a href="/type/Updates" >Updates</a>;
<a href="/constructor/updates" >updates</a>#74ae4240 updates:<a href="/type/Vector%20t" >Vector</a>&lt;<a href="/type/Update" >Update</a>&gt; users:<a href="/type/Vector%20t" >Vector</a>&lt;<a href="/type/User" >User</a>&gt; chats:<a href="/type/Vector%20t" >Vector</a>&lt;<a href="/type/Chat" >Chat</a>&gt; date:<a href="/type/int" >int</a> seq:<a href="/type/int" >int</a> = <a href="/type/Updates" >Updates</a>;
<a href="/constructor/updateShortSentMessage" >updateShortSentMessage</a>#9015e101 flags:<a href="/type/%23" >#</a> out:flags.1?true id:<a href="/type/int" >int</a> pts:<a href="/type/int" >int</a> pts_count:<a href="/type/int" >int</a> date:<a href="/type/int" >int</a> media:flags.9?<a href="/type/MessageMedia" >MessageMedia</a> entities:flags.7?<a href="/type/Vector%20t" >Vector</a>&lt;<a href="/type/MessageEntity" >MessageEntity</a>&gt; ttl_period:flags.25?<a href="/type/int" >int</a> = <a href="/type/Updates" >Updates</a>;
---functions---
<a href="/method/messages.sendMessage" class="current_page_link" >messages.sendMessage</a>#983f9745 flags:<a href="/type/%23" >#</a> no_webpage:flags.1?true silent:flags.5?true background:flags.6?true clear_draft:flags.7?true noforwards:flags.14?true update_stickersets_order:flags.15?true invert_media:flags.16?true peer:<a href="/type/InputPeer" >InputPeer</a> reply_to:flags.0?<a href="/type/InputReplyTo" >InputReplyTo</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> quick_reply_shortcut:flags.17?<a href="/type/InputQuickReplyShortcut" >InputQuickReplyShortcut</a> effect:flags.18?<a href="/type/long" >long</a> = <a href="/type/Updates" >Updates</a>;</code></pre></p>
<h3><a class="anchor" href="#parameters" id="parameters" name="parameters"><i class="anchor-icon"></i></a>Parameters</h3>
<table class="table">
<thead>
<tr>
<th>Name</th>
<th style="text-align: center;">Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>flags</strong></td>
<td style="text-align: center;"><a href="/type/%23">#</a></td>
<td>Flags, see <a href="/mtproto/TL-combinators#conditional-fields">TL conditional fields</a></td>
</tr>
<tr>
<td><strong>no_webpage</strong></td>
<td style="text-align: center;"><a href="/mtproto/TL-combinators#conditional-fields">flags</a>.1?<a href="/constructor/true">true</a></td>
<td>Set this flag to disable generation of the webpage preview</td>
</tr>
<tr>
<td><strong>silent</strong></td>
<td style="text-align: center;"><a href="/mtproto/TL-combinators#conditional-fields">flags</a>.5?<a href="/constructor/true">true</a></td>
<td>Send this message silently (no notifications for the receivers)</td>
</tr>
<tr>
<td><strong>background</strong></td>
<td style="text-align: center;"><a href="/mtproto/TL-combinators#conditional-fields">flags</a>.6?<a href="/constructor/true">true</a></td>
<td>Send this message as background message</td>
</tr>
<tr>
<td><strong>clear_draft</strong></td>
<td style="text-align: center;"><a href="/mtproto/TL-combinators#conditional-fields">flags</a>.7?<a href="/constructor/true">true</a></td>
<td>Clear the draft field</td>
</tr>
<tr>
<td><strong>noforwards</strong></td>
<td style="text-align: center;"><a href="/mtproto/TL-combinators#conditional-fields">flags</a>.14?<a href="/constructor/true">true</a></td>
<td>Only for bots, disallows forwarding and saving of the messages, even if the destination chat doesn't have <a href="https://telegram.org/blog/protected-content-delete-by-date-and-more">content protection</a> enabled</td>
</tr>
<tr>
<td><strong>update_stickersets_order</strong></td>
<td style="text-align: center;"><a href="/mtproto/TL-combinators#conditional-fields">flags</a>.15?<a href="/constructor/true">true</a></td>
<td>Whether to move used stickersets to top, <a href="/api/stickers#recent-stickersets">see here for more info on this flag »</a></td>
</tr>
<tr>
<td><strong>invert_media</strong></td>
<td style="text-align: center;"><a href="/mtproto/TL-combinators#conditional-fields">flags</a>.16?<a href="/constructor/true">true</a></td>
<td>If set, any eventual webpage preview will be shown on top of the message instead of at the bottom.</td>
</tr>
<tr>
<td><strong>peer</strong></td>
<td style="text-align: center;"><a href="/type/InputPeer">InputPeer</a></td>
<td>The destination where the message will be sent</td>
</tr>
<tr>
<td><strong>reply_to</strong></td>
<td style="text-align: center;"><a href="/mtproto/TL-combinators#conditional-fields">flags</a>.0?<a href="/type/InputReplyTo">InputReplyTo</a></td>
<td>If set, indicates that the message should be sent in reply to the specified message or story. <br>Also used to quote other messages.</td>
</tr>
<tr>
<td><strong>message</strong></td>
<td style="text-align: center;"><a href="/type/string">string</a></td>
<td>The message</td>
</tr>
<tr>
<td><strong>random_id</strong></td>
<td style="text-align: center;"><a href="/type/long">long</a></td>
<td>Unique client message ID required to prevent message resending</td>
</tr>
<tr>
<td><strong>reply_markup</strong></td>
<td style="text-align: center;"><a href="/mtproto/TL-combinators#conditional-fields">flags</a>.2?<a href="/type/ReplyMarkup">ReplyMarkup</a></td>
<td>Reply markup for sending bot buttons</td>
</tr>
<tr>
<td><strong>entities</strong></td>
<td style="text-align: center;"><a href="/mtproto/TL-combinators#conditional-fields">flags</a>.3?<a href="/type/Vector%20t">Vector</a>&lt;<a href="/type/MessageEntity">MessageEntity</a>&gt;</td>
<td>Message <a href="/api/entities">entities</a> for sending styled text</td>
</tr>
<tr>
<td><strong>schedule_date</strong></td>
<td style="text-align: center;"><a href="/mtproto/TL-combinators#conditional-fields">flags</a>.10?<a href="/type/int">int</a></td>
<td>Scheduled message date for <a href="/api/scheduled-messages">scheduled messages</a></td>
</tr>
<tr>
<td><strong>send_as</strong></td>
<td style="text-align: center;"><a href="/mtproto/TL-combinators#conditional-fields">flags</a>.13?<a href="/type/InputPeer">InputPeer</a></td>
<td>Send this message as the specified peer</td>
</tr>
<tr>
<td><strong>quick_reply_shortcut</strong></td>
<td style="text-align: center;"><a href="/mtproto/TL-combinators#conditional-fields">flags</a>.17?<a href="/type/InputQuickReplyShortcut">InputQuickReplyShortcut</a></td>
<td>Add the message to the specified <a href="/api/business#quick-reply-shortcuts">quick reply shortcut »</a>, instead.</td>
</tr>
<tr>
<td><strong>effect</strong></td>
<td style="text-align: center;"><a href="/mtproto/TL-combinators#conditional-fields">flags</a>.18?<a href="/type/long">long</a></td>
<td>Specifies a <a href="/api/effects">message effect »</a> to use for the message.</td>
</tr>
</tbody>
</table>
<h3><a class="anchor" href="#result" id="result" name="result"><i class="anchor-icon"></i></a>Result</h3>
<p><a href="/type/Updates">Updates</a></p>
<h3><a class="anchor" href="#possible-errors" id="possible-errors" name="possible-errors"><i class="anchor-icon"></i></a>Possible errors</h3>
<table class="table">
<thead>
<tr>
<th>Code</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>400</td>
<td>ADMIN_RIGHTS_EMPTY</td>
<td>The chatAdminRights constructor passed in keyboardButtonRequestPeer.peer_type.user_admin_rights has no rights set (i.e. flags is 0).</td>
</tr>
<tr>
<td>400</td>
<td>BOT_DOMAIN_INVALID</td>
<td>Bot domain invalid.</td>
</tr>
<tr>
<td>400</td>
<td>BOT_INVALID</td>
<td>This is not a valid bot.</td>
</tr>
<tr>
<td>400</td>
<td>BUSINESS_PEER_INVALID</td>
<td>Messages can't be set to the specified peer through the current <a href="/api/business#connected-bots">business connection</a>.</td>
</tr>
<tr>
<td>400</td>
<td>BUTTON_DATA_INVALID</td>
<td>The data of one or more of the buttons you provided is invalid.</td>
</tr>
<tr>
<td>400</td>
<td>BUTTON_TYPE_INVALID</td>
<td>The type of one or more of the buttons you provided is invalid.</td>
</tr>
<tr>
<td>400</td>
<td>BUTTON_URL_INVALID</td>
<td>Button URL invalid.</td>
</tr>
<tr>
<td>400</td>
<td>BUTTON_USER_INVALID</td>
<td>The <code>user_id</code> passed to inputKeyboardButtonUserProfile is invalid!</td>
</tr>
<tr>
<td>400</td>
<td>BUTTON_USER_PRIVACY_RESTRICTED</td>
<td>The privacy setting of the user specified in a <a href="/constructor/inputKeyboardButtonUserProfile">inputKeyboardButtonUserProfile</a> button do not allow creating such a button.</td>
</tr>
<tr>
<td>400</td>
<td>CHANNEL_INVALID</td>
<td>The provided channel is invalid.</td>
</tr>
<tr>
<td>406</td>
<td>CHANNEL_PRIVATE</td>
<td>You haven't joined this channel/supergroup.</td>
</tr>
<tr>
<td>403</td>
<td>CHAT_ADMIN_REQUIRED</td>
<td>You must be an admin in this chat to do this.</td>
</tr>
<tr>
<td>403</td>
<td>CHAT_GUEST_SEND_FORBIDDEN</td>
<td>You join the discussion group before commenting, see <a href="/api/discussion#requiring-users-to-join-the-group">here »</a> for more info.</td>
</tr>
<tr>
<td>400</td>
<td>CHAT_ID_INVALID</td>
<td>The provided chat id is invalid.</td>
</tr>
<tr>
<td>400</td>
<td>CHAT_RESTRICTED</td>
<td>You can't send messages in this chat, you were restricted.</td>
</tr>
<tr>
<td>403</td>
<td>CHAT_SEND_PLAIN_FORBIDDEN</td>
<td>You can't send non-media (text) messages in this chat.</td>
</tr>
<tr>
<td>403</td>
<td>CHAT_WRITE_FORBIDDEN</td>
<td>You can't write in this chat.</td>
</tr>
<tr>
<td>400</td>
<td>DOCUMENT_INVALID</td>
<td>The specified document is invalid.</td>
</tr>
<tr>
<td>400</td>
<td>ENCRYPTION_DECLINED</td>
<td>The secret chat was declined.</td>
</tr>
<tr>
<td>400</td>
<td>ENTITIES_TOO_LONG</td>
<td>You provided too many styled message entities.</td>
</tr>
<tr>
<td>400</td>
<td>ENTITY_BOUNDS_INVALID</td>
<td>A specified <a href="/api/entities#entity-length">entity offset or length</a> is invalid, see <a href="/api/entities#entity-length">here »</a> for info on how to properly compute the entity offset/length.</td>
</tr>
<tr>
<td>400</td>
<td>ENTITY_MENTION_USER_INVALID</td>
<td>You mentioned an invalid user.</td>
</tr>
<tr>
<td>400</td>
<td>FROM_MESSAGE_BOT_DISABLED</td>
<td>Bots can't use fromMessage min constructors.</td>
</tr>
<tr>
<td>400</td>
<td>INPUT_USER_DEACTIVATED</td>
<td>The specified user was deleted.</td>
</tr>
<tr>
<td>400</td>
<td>MESSAGE_EMPTY</td>
<td>The provided message is empty.</td>
</tr>
<tr>
<td>400</td>
<td>MESSAGE_TOO_LONG</td>
<td>The provided message is too long.</td>
</tr>
<tr>
<td>400</td>
<td>MSG_ID_INVALID</td>
<td>Invalid message ID provided.</td>
</tr>
<tr>
<td>500</td>
<td>MSG_WAIT_FAILED</td>
<td>A waiting call returned an error.</td>
</tr>
<tr>
<td>406</td>
<td>PAYMENT_UNSUPPORTED</td>
<td>A detailed description of the error will be received separately as described <a href="/api/errors#406-not-acceptable">here »</a>.</td>
</tr>
<tr>
<td>400</td>
<td>PEER_ID_INVALID</td>
<td>The provided peer id is invalid.</td>
</tr>
<tr>
<td>400</td>
<td>PINNED_DIALOGS_TOO_MUCH</td>
<td>Too many pinned dialogs.</td>
</tr>
<tr>
<td>400</td>
<td>POLL_OPTION_INVALID</td>
<td>Invalid poll option provided.</td>
</tr>
<tr>
<td>406</td>
<td>PRIVACY_PREMIUM_REQUIRED</td>
<td>You need a <a href="/api/premium">Telegram Premium subscription</a> to send a message to this user.</td>
</tr>
<tr>
<td>400</td>
<td>QUICK_REPLIES_TOO_MUCH</td>
<td>A maximum of <a href="/api/config#quick-replies-limit">appConfig.<code>quick_replies_limit</code></a> shortcuts may be created, the limit was reached.</td>
</tr>
<tr>
<td>400</td>
<td>QUOTE_TEXT_INVALID</td>
<td>The specified <code>reply_to</code>.<code>quote_text</code> field is invalid.</td>
</tr>
<tr>
<td>500</td>
<td>RANDOM_ID_DUPLICATE</td>
<td>You provided a random ID that was already used.</td>
</tr>
<tr>
<td>400</td>
<td>REPLY_MARKUP_INVALID</td>
<td>The provided reply markup is invalid.</td>
</tr>
<tr>
<td>400</td>
<td>REPLY_MARKUP_TOO_LONG</td>
<td>The specified reply_markup is too long.</td>
</tr>
<tr>
<td>400</td>
<td>REPLY_MESSAGES_TOO_MUCH</td>
<td>Each shortcut can contain a maximum of <a href="/api/config#quick-reply-messages-limit">appConfig.<code>quick_reply_messages_limit</code></a> messages, the limit was reached.</td>
</tr>
<tr>
<td>400</td>
<td>REPLY_MESSAGE_ID_INVALID</td>
<td>The specified reply-to message ID is invalid.</td>
</tr>
<tr>
<td>400</td>
<td>REPLY_TO_INVALID</td>
<td>The specified <code>reply_to</code> field is invalid.</td>
</tr>
<tr>
<td>400</td>
<td>REPLY_TO_USER_INVALID</td>
<td>The replied-to user is invalid.</td>
</tr>
<tr>
<td>400</td>
<td>SCHEDULE_BOT_NOT_ALLOWED</td>
<td>Bots cannot schedule messages.</td>
</tr>
<tr>
<td>400</td>
<td>SCHEDULE_DATE_TOO_LATE</td>
<td>You can't schedule a message this far in the future.</td>
</tr>
<tr>
<td>400</td>
<td>SCHEDULE_STATUS_PRIVATE</td>
<td>Can't schedule until user is online, if the user's last seen timestamp is hidden by their privacy settings.</td>
</tr>
<tr>
<td>400</td>
<td>SCHEDULE_TOO_MUCH</td>
<td>There are too many scheduled messages.</td>
</tr>
<tr>
<td>400</td>
<td>SEND_AS_PEER_INVALID</td>
<td>You can't send messages as the specified peer.</td>
</tr>
<tr>
<td>420</td>
<td>SLOWMODE_WAIT_%d</td>
<td>Slowmode is enabled in this chat: wait %d seconds before sending another message to this chat.</td>
</tr>
<tr>
<td>400</td>
<td>STORY_ID_INVALID</td>
<td>The specified story ID is invalid.</td>
</tr>
<tr>
<td>406</td>
<td>TOPIC_CLOSED</td>
<td>This topic was closed, you can't send messages to it anymore.</td>
</tr>
<tr>
<td>406</td>
<td>TOPIC_DELETED</td>
<td>The specified topic was deleted.</td>
</tr>
<tr>
<td>400</td>
<td>USER_BANNED_IN_CHANNEL</td>
<td>You're banned from sending messages in supergroups/channels.</td>
</tr>
<tr>
<td>403</td>
<td>USER_IS_BLOCKED</td>
<td>You were blocked by this user.</td>
</tr>
<tr>
<td>400</td>
<td>USER_IS_BOT</td>
<td>Bots can't send messages to other bots.</td>
</tr>
<tr>
<td>400</td>
<td>WC_CONVERT_URL_INVALID</td>
<td>WC convert URL invalid.</td>
</tr>
<tr>
<td>400</td>
<td>YOU_BLOCKED_USER</td>
<td>You blocked this user.</td>
</tr>
</tbody>
</table>
<h3><a class="anchor" href="#bots-can-use-this-method" id="bots-can-use-this-method" name="bots-can-use-this-method"><i class="anchor-icon"></i></a>Bots can use this method</h3>
<h3><a class="anchor" href="#related-pages" id="related-pages" name="related-pages"><i class="anchor-icon"></i></a>Related pages</h3>
<h4><a class="anchor" href="#stickers" id="stickers" name="stickers"><i class="anchor-icon"></i></a><a href="/api/stickers">Stickers</a></h4>
<p>Telegram clients support displaying static and animated stickers.</p>
<h4><a class="anchor" href="#styled-text-with-message-entities" id="styled-text-with-message-entities" name="styled-text-with-message-entities"><i class="anchor-icon"></i></a><a href="/api/entities">Styled text with message entities</a></h4>
<p>How to create styled text with message entities</p>
<h4><a class="anchor" href="#scheduled-messages" id="scheduled-messages" name="scheduled-messages"><i class="anchor-icon"></i></a><a href="/api/scheduled-messages">Scheduled messages</a></h4>
<p>Telegram allows scheduling messages</p>
<h4><a class="anchor" href="#business" id="business" name="business"><i class="anchor-icon"></i></a><a href="/api/business">Business</a></h4>
<p>Users can turn their Telegram account into a business account, gaining access to business features such as opening hours, location, quick replies, automated messages, custom start pages, chatbot support, and more.</p>
<h4><a class="anchor" href="#animated-message-effects" id="animated-message-effects" name="animated-message-effects"><i class="anchor-icon"></i></a><a href="/api/effects">Animated message effects</a></h4>
<p>Telegram allows adding spectacular animated effects to messages you send.</p>
<h4><a class="anchor" href="#inputkeyboardbuttonuserprofile" id="inputkeyboardbuttonuserprofile" name="inputkeyboardbuttonuserprofile"><i class="anchor-icon"></i></a><a href="/constructor/inputKeyboardButtonUserProfile">inputKeyboardButtonUserProfile</a></h4>
<p>Button that links directly to a user profile</p>
<h4><a class="anchor" href="#discussion-groups" id="discussion-groups" name="discussion-groups"><i class="anchor-icon"></i></a><a href="/api/discussion">Discussion groups</a></h4>
<p>Groups can be associated to a channel as a discussion group, to allow users to discuss about posts.</p>
<h4><a class="anchor" href="#error-handling" id="error-handling" name="error-handling"><i class="anchor-icon"></i></a><a href="/api/errors">Error handling </a></h4>
<p>How to handle API return errors correctly.</p>
<h4><a class="anchor" href="#telegram-premium" id="telegram-premium" name="telegram-premium"><i class="anchor-icon"></i></a><a href="/api/premium">Telegram Premium</a></h4>
<p>Telegram Premium is an optional subscription service that unlocks additional exclusive client-side and API-side features, while helping support the development of the app.</p>
<h4><a class="anchor" href="#client-configuration" id="client-configuration" name="client-configuration"><i class="anchor-icon"></i></a><a href="/api/config">Client configuration</a></h4>
<p>The MTProto API has multiple configuration parameters that can be fetched with the appropriate methods.</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>backToTopInit("Go up");
removePreloadInit();
</script>
</body>
</html>