messages.forwardMessages
messages.forwardMessages
Section titled “messages.forwardMessages”No description provided by the pinned schema.
Signature
Section titled “Signature”messages.forwardMessages#13704a7c flags:# silent:flags.5?true background:flags.6?true with_my_score:flags.8?true drop_author:flags.11?true drop_media_captions:flags.12?true noforwards:flags.14?true allow_paid_floodskip:flags.19?true from_peer:InputPeer id:Vector<int> random_id:Vector<long> to_peer:InputPeer top_msg_id:flags.9?int reply_to:flags.22?InputReplyTo schedule_date:flags.10?int schedule_repeat_period:flags.24?int send_as:flags.13?InputPeer quick_reply_shortcut:flags.17?InputQuickReplyShortcut effect:flags.18?long video_timestamp:flags.20?int allow_paid_stars:flags.21?long suggested_post:flags.23?SuggestedPost = Updates;Result type
Section titled “Result type”Updates
Parameters
Section titled “Parameters”| Name | Type | Flag | Default | Description |
|---|---|---|---|---|
| flags | # | flag word | — | No description provided by the pinned schema. |
| silent | flags.5?true | flags.5 | — | No description provided by the pinned schema. |
| background | flags.6?true | flags.6 | — | No description provided by the pinned schema. |
| with_my_score | flags.8?true | flags.8 | — | No description provided by the pinned schema. |
| drop_author | flags.11?true | flags.11 | — | No description provided by the pinned schema. |
| drop_media_captions | flags.12?true | flags.12 | — | No description provided by the pinned schema. |
| noforwards | flags.14?true | flags.14 | — | No description provided by the pinned schema. |
| allow_paid_floodskip | flags.19?true | flags.19 | — | No description provided by the pinned schema. |
| from_peer | InputPeer | — | — | No description provided by the pinned schema. |
| id | Vector | — | — | No description provided by the pinned schema. |
| random_id | Vector | — | — | No description provided by the pinned schema. |
| to_peer | InputPeer | — | — | No description provided by the pinned schema. |
| top_msg_id | flags.9?int | flags.9 | — | No description provided by the pinned schema. |
| reply_to | flags.22?InputReplyTo | flags.22 | — | No description provided by the pinned schema. |
| schedule_date | flags.10?int | flags.10 | — | No description provided by the pinned schema. |
| schedule_repeat_period | flags.24?int | flags.24 | — | No description provided by the pinned schema. |
| send_as | flags.13?InputPeer | flags.13 | — | No description provided by the pinned schema. |
| quick_reply_shortcut | flags.17?InputQuickReplyShortcut | flags.17 | — | No description provided by the pinned schema. |
| effect | flags.18?long | flags.18 | — | No description provided by the pinned schema. |
| video_timestamp | flags.20?int | flags.20 | — | No description provided by the pinned schema. |
| allow_paid_stars | flags.21?long | flags.21 | — | No description provided by the pinned schema. |
| suggested_post | flags.23?SuggestedPost | flags.23 | — | No description provided by the pinned schema. |
| Parameter | Bit | Meaning |
|---|---|---|
| silent | 5 | Controlled by flags; present when this bit is set. |
| background | 6 | Controlled by flags; present when this bit is set. |
| with_my_score | 8 | Controlled by flags; present when this bit is set. |
| drop_author | 11 | Controlled by flags; present when this bit is set. |
| drop_media_captions | 12 | Controlled by flags; present when this bit is set. |
| noforwards | 14 | Controlled by flags; present when this bit is set. |
| allow_paid_floodskip | 19 | Controlled by flags; present when this bit is set. |
| top_msg_id | 9 | Controlled by flags; present when this bit is set. |
| reply_to | 22 | Controlled by flags; present when this bit is set. |
| schedule_date | 10 | Controlled by flags; present when this bit is set. |
| schedule_repeat_period | 24 | Controlled by flags; present when this bit is set. |
| send_as | 13 | Controlled by flags; present when this bit is set. |
| quick_reply_shortcut | 17 | Controlled by flags; present when this bit is set. |
| effect | 18 | Controlled by flags; present when this bit is set. |
| video_timestamp | 20 | Controlled by flags; present when this bit is set. |
| allow_paid_stars | 21 | Controlled by flags; present when this bit is set. |
| suggested_post | 23 | Controlled by flags; present when this bit is set. |
Python binding
Section titled “Python binding”from miniproto.raw.functions import MessagesForwardMessagesPublic access: miniproto.raw.functions.MessagesForwardMessages.
Safe usage shape
Section titled “Safe usage shape”from miniproto.raw.functions import MessagesForwardMessages
# Naming the raw request class is local only; it performs no I/O or network request.request_type = MessagesForwardMessagesResult family
Section titled “Result family”RPC errors
Section titled “RPC errors”| Code | Error | Description |
|---|---|---|
| 400 | BROADCAST_PUBLIC_VOTERS_FORBIDDEN | You can’t forward polls with public voters. |
| 400 | BUSINESS_CONNECTION_NOT_ALLOWED | This method was invoked over a business connection using invokeWithBusinessConnection, but either (1) we’re a user, and users cannot invoke methods over a business connection; (2) we’re a bot, but business mode was disabled in @botfather or (3); we’re a bot, but this method cannot be invoked over a business connection. |
| 400 | CHANNEL_INVALID | The provided channel is invalid. |
| 400 | CHANNEL_PRIVATE | You haven’t joined this channel/supergroup. |
| 400 | CHAT_ADMIN_REQUIRED | You must be an admin in this chat to do this. |
| 400 | CHAT_FORWARDS_RESTRICTED | You can’t forward messages from a protected chat. |
| 400 | CHAT_ID_INVALID | The provided chat id is invalid. |
| 400 | CHAT_RESTRICTED | You can’t send messages in this chat, you were restricted. |
| 400 | GROUPED_MEDIA_INVALID | Invalid grouped media. |
| 400 | INPUT_USER_DEACTIVATED | The specified user was deleted. |
| 400 | MEDIA_EMPTY | The provided media object is invalid. |
| 400 | MEDIA_FILE_INVALID | The specified media file is invalid. |
| 400 | MESSAGE_IDS_EMPTY | No message ids were provided. |
| 400 | MESSAGE_ID_INVALID | The provided message id is invalid. |
| 400 | MSG_ID_INVALID | Invalid message ID provided. |
| 400 | PEER_ID_INVALID | The provided peer id is invalid. |
| 400 | QUICK_REPLIES_BOT_NOT_ALLOWED | Quick replies cannot be used by bots. |
| 400 | QUICK_REPLIES_TOO_MUCH | A maximum of appConfig.quick_replies_limit shortcuts may be created, the limit was reached. |
| 400 | QUIZ_ANSWER_MISSING | You can forward a quiz while hiding the original author only after choosing an option in the quiz. |
| 400 | RANDOM_ID_INVALID | A provided random ID is invalid. |
| 400 | REPLY_MESSAGES_TOO_MUCH | Each shortcut can contain a maximum of appConfig.quick_reply_messages_limit messages, the limit was reached. |
| 400 | REPLY_TO_MONOFORUM_PEER_INVALID | The specified inputReplyToMonoForum.monoforum_peer_id is invalid. |
| 400 | SCHEDULE_BOT_NOT_ALLOWED | Bots cannot schedule messages. |
| 400 | SCHEDULE_DATE_TOO_LATE | You can’t schedule a message this far in the future. |
| 400 | SCHEDULE_TOO_MUCH | There are too many scheduled messages. |
| 400 | SEND_AS_PEER_INVALID | You can’t send messages as the specified peer. |
| 400 | SLOWMODE_MULTI_MSGS_DISABLED | Slowmode is enabled, you cannot forward multiple messages to this group. |
| 400 | SUGGESTED_POST_PEER_INVALID | You cannot send suggested posts to non-monoforum peers. |
| 400 | TOPIC_CLOSED | This topic was closed, you can’t send messages to it anymore. |
| 400 | TOPIC_DELETED | The specified topic was deleted. |
| 400 | USER_BANNED_IN_CHANNEL | You’re banned from sending messages in supergroups/channels. |
| 400 | USER_BOT_TO_BOT_DISABLED | Bot-to-bot messaging is disabled because one of the two bots hasn’t enabled the Bot to Bot setting in @BotFather. |
| 400 | USER_IS_BLOCKED | You were blocked by this user. |
| 400 | USER_IS_BOT | Bots can’t send messages to other bots. |
| 400 | YOU_BLOCKED_USER | You blocked this user. |
| 401 | AUTH_KEY_UNREGISTERED | The specified authorization key is not registered in the system (for example, a PFS temporary key has expired). |
| 403 | ALLOW_PAYMENT_REQUIRED_%d | This peer charges %d Telegram Stars per message, but the allow_paid_stars was not set or its value is smaller than %d. |
| 403 | CHAT_ADMIN_REQUIRED | You must be an admin in this chat to do this. |
| 403 | CHAT_GUEST_SEND_FORBIDDEN | You join the discussion group before commenting, see here » for more info. |
| 403 | CHAT_SEND_AUDIOS_FORBIDDEN | You can’t send audio messages in this chat. |
| 403 | CHAT_SEND_DOCS_FORBIDDEN | You can’t send documents in this chat. |
| 403 | CHAT_SEND_GAME_FORBIDDEN | You can’t send a game to this chat. |
| 403 | CHAT_SEND_GIFS_FORBIDDEN | You can’t send gifs in this chat. |
| 403 | CHAT_SEND_INLINE_FORBIDDEN | You can’t send inline messages in this group. |
| 403 | CHAT_SEND_MEDIA_FORBIDDEN | You can’t send media in this chat. |
| 403 | CHAT_SEND_PHOTOS_FORBIDDEN | You can’t send photos in this chat. |
| 403 | CHAT_SEND_PLAIN_FORBIDDEN | You can’t send non-media (text) messages in this chat. |
| 403 | CHAT_SEND_POLL_FORBIDDEN | You can’t send polls in this chat. |
| 403 | CHAT_SEND_STICKERS_FORBIDDEN | You can’t send stickers in this chat. |
| 403 | CHAT_SEND_VIDEOS_FORBIDDEN | You can’t send videos in this chat. |
| 403 | CHAT_SEND_VOICES_FORBIDDEN | You can’t send voice recordings in this chat. |
| 403 | CHAT_SEND_WEBPAGE_FORBIDDEN | You can’t send webpage previews to this chat. |
| 403 | CHAT_WRITE_FORBIDDEN | You can’t write in this chat. |
| 403 | PREMIUM_ACCOUNT_REQUIRED | A premium account is required to execute this action. |
| 403 | PRIVACY_PREMIUM_REQUIRED | You need a Telegram Premium subscription to send a message to this user. |
| 403 | USER_IS_BLOCKED | You were blocked by this user. |
| 403 | VOICE_MESSAGES_FORBIDDEN | This user’s privacy settings forbid you from sending voice messages. |
| 406 | ALLOW_PAYMENT_REQUIRED | This peer only accepts paid messages »: this error is only emitted for older layers without paid messages support, so the client must be updated in order to use paid messages. . |
| 406 | CHANNEL_PRIVATE | You haven’t joined this channel/supergroup. |
| 406 | CHAT_FORWARDS_RESTRICTED | You can’t forward messages from a protected chat. |
| 406 | PAYMENT_UNSUPPORTED | A detailed description of the error will be received separately as described here ». |
| 406 | PEER_ID_INVALID | The provided peer id is invalid. |
| 406 | PRIVACY_PREMIUM_REQUIRED | You need a Telegram Premium subscription to send a message to this user. |
| 406 | TOPIC_CLOSED | This topic was closed, you can’t send messages to it anymore. |
| 406 | TOPIC_DELETED | The specified topic was deleted. |
| 420 | SLOWMODE_WAIT_%d | Slowmode is enabled in this chat: wait %d seconds before sending another message to this chat. |
| 500 | RANDOM_ID_DUPLICATE | You provided a random ID that was already used. |
Accepted types
Section titled “Accepted types”InputPeer, InputQuickReplyShortcut, InputReplyTo, SuggestedPost
Known selected constructors: inputPeerChannel, inputPeerChannelFromMessage, inputPeerChat, inputPeerEmpty, inputPeerSelf, inputPeerUser, inputPeerUserFromMessage, inputQuickReplyShortcut, inputQuickReplyShortcutId, inputReplyToEphemeralMessage, inputReplyToMessage, inputReplyToMonoForum, inputReplyToStory, suggestedPost
Returned types
Section titled “Returned types”Updates
Known selected constructors: updateShort, updateShortChatMessage, updateShortMessage, updateShortSentMessage, updates, updatesCombined, updatesTooLong
Related methods
Section titled “Related methods”account.disablePeerConnectedBot, account.getBotBusinessConnection, account.getNotifyExceptions, account.getPaidMessagesRevenue, account.reportPeer, account.reportProfilePhoto, account.saveAutoSaveSettings, account.toggleConnectedBotPaused, account.toggleNoPaidMessagesException, account.toggleWebBrowserSettingsException, account.updateConnectedBot, bots.allowSendMessage, bots.setCustomVerification, channels.convertToGigagroup, channels.createChannel, channels.deleteChannel, channels.deleteHistory, channels.deleteParticipantHistory, channels.editAdmin, channels.editBanned, channels.editPhoto, channels.editTitle, channels.getParticipant, channels.getSendAs, channels.leaveChannel, channels.reportSpam, channels.restrictSponsoredMessages, channels.searchPosts, channels.setBoostsToUnblockRestrictions, channels.toggleAntiSpam, channels.toggleAutotranslation, channels.toggleForum, channels.toggleJoinRequest, channels.toggleJoinToSend, channels.toggleParticipantsHidden, channels.togglePreHistoryHidden, channels.toggleSignatures, channels.toggleSlowMode, channels.toggleViewForumAsMessages, channels.updateColor, channels.updateEmojiStatus, channels.updatePaidMessagesPrice, chatlists.editExportedInvite, chatlists.exportChatlistInvite, chatlists.joinChatlistInvite, chatlists.joinChatlistUpdates, chatlists.leaveChatlist, communities.create, communities.getParticipantJoinedChats, communities.toggleCommunityCollapsedInDialogs, communities.toggleParticipantBanned, communities.togglePeerLink, communities.togglePeerLinkRequestApproval, contacts.acceptContact, contacts.addContact, contacts.block, contacts.blockFromReplies, contacts.deleteContacts, contacts.getLocated, contacts.resetTopPeerRating, contacts.setBlocked, contacts.unblock, ephemeral.deleteMessage, ephemeral.editMessage, ephemeral.getCallbackAnswer, ephemeral.reportMessage, ephemeral.sendMessage, folders.editPeerFolders, help.dismissSuggestion, help.hidePromoData, messages.acceptUrlAuth, messages.addPollAnswer, messages.appendTodoList, messages.checkHistoryImportPeer, messages.createForumTopic, messages.deleteChatUser, messages.deleteExportedChatInvite, messages.deleteFactCheck, messages.deleteHistory, messages.deleteParticipantReaction, messages.deleteParticipantReactions, messages.deletePollAnswer, messages.deleteQuickReplyMessages, messages.deleteRevokedExportedChatInvites, messages.deleteSavedHistory, messages.deleteScheduledMessages, messages.deleteTopicHistory, messages.editChatAbout, messages.editChatCreator, messages.editChatDefaultBannedRights, messages.editChatParticipantRank, messages.editChatPhoto, messages.editChatTitle, messages.editExportedChatInvite, messages.editFactCheck, messages.editForumTopic, messages.editMessage, messages.exportChatInvite, messages.getAdminsWithInvites, messages.getAllDrafts, messages.getBotCallbackAnswer, messages.getChatInviteImporters, messages.getDialogUnreadMarks, messages.getDialogs, messages.getDiscussionMessage, messages.getExportedChatInvite, messages.getExportedChatInvites, messages.getExtendedMedia, messages.getFactCheck, messages.getForumTopics, messages.getForumTopicsByID, messages.getFutureChatCreatorAfterLeave, messages.getGameHighScores, messages.getHistory, messages.getInlineBotResults, messages.getMessageEditData, messages.getMessageReactionsList, messages.getMessageReadParticipants, messages.getMessagesReactions, messages.getMessagesViews, messages.getOnlines, messages.getOutboxReadDate, messages.getPaidReactionPrivacy, messages.getPeerSettings, messages.getPollResults, messages.getPollVotes, messages.getRecentLocations, messages.getReplies, messages.getRichMessage, messages.getSavedDialogs, messages.getSavedDialogsByID, messages.getSavedHistory, messages.getSavedReactionTags, messages.getScheduledHistory, messages.getScheduledMessages, messages.getSearchCounters, messages.getSearchResultsCalendar, messages.getSearchResultsPositions, messages.getSponsoredMessages, messages.getUnreadMentions, messages.getUnreadPollVotes, messages.getUnreadReactions, messages.hideAllChatJoinRequests, messages.hideChatJoinRequest, messages.hidePeerSettingsBar, messages.initHistoryImport, messages.markDialogUnread, messages.migrateChat, messages.prolongWebView, messages.rateTranscribedAudio, messages.readDiscussion, messages.readHistory, messages.readMentions, messages.readPollVotes, messages.readReactions, messages.readSavedHistory, messages.reorderPinnedForumTopics, messages.report, messages.reportMessagesDelivery, messages.reportReaction, messages.reportReadMetrics, messages.reportSpam, messages.requestAppWebView, messages.requestMainWebView, messages.requestUrlAuth, messages.requestWebView, messages.saveDefaultSendAs, messages.saveDraft, messages.search, messages.searchGlobal, messages.sendBotRequestedPeer, messages.sendInlineBotResult, messages.sendMedia, messages.sendMessage, messages.sendMultiMedia, messages.sendPaidReaction, messages.sendQuickReplyMessages, messages.sendReaction, messages.sendScheduledMessages, messages.sendScreenshotNotification, messages.sendVote, messages.sendWebViewData, messages.setChatAvailableReactions, messages.setChatTheme, messages.setChatWallPaper, messages.setGameScore, messages.setHistoryTTL, messages.setTyping, messages.startBot, messages.startHistoryImport, messages.summarizeText, messages.toggleNoForwards, messages.togglePaidReactionPrivacy, messages.togglePeerTranslations, messages.toggleSuggestedPostApproval, messages.toggleTodoCompleted, messages.transcribeAudio, messages.translateRichMessage, messages.translateText, messages.unpinAllMessages, messages.updatePinnedForumTopic, messages.updatePinnedMessage, messages.uploadImportedMedia, messages.uploadMedia, payments.applyGiftCode, payments.assignAppStoreTransaction, payments.assignPlayMarketTransaction, payments.changeStarsSubscription, payments.connectStarRefBot, payments.craftStarGift, payments.createStarGiftCollection, payments.deleteStarGiftCollection, payments.editConnectedStarRefBot, payments.fulfillStarsSubscription, payments.getConnectedStarRefBot, payments.getConnectedStarRefBots, payments.getGiveawayInfo, payments.getPaymentReceipt, payments.getPremiumGiftCodeOptions, payments.getSavedStarGifts, payments.getStarGiftCollections, payments.getStarsRevenueAdsAccountUrl, payments.getStarsRevenueStats, payments.getStarsRevenueWithdrawalUrl, payments.getStarsStatus, payments.getStarsSubscriptions, payments.getStarsTransactions, payments.getStarsTransactionsByID, payments.getSuggestedStarRefBots, payments.launchPrepaidGiveaway, payments.refundStarsCharge, payments.reorderStarGiftCollections, payments.resolveStarGiftOffer, payments.sendStarGiftOffer, payments.toggleChatStarGiftNotifications, payments.toggleStarGiftsPinnedToTop, payments.transferStarGift, payments.updateStarGiftCollection, payments.updateStarGiftPrice, payments.upgradeStarGift, phone.createConferenceCall, phone.createGroupCall, phone.declineConferenceCallInvite, phone.deleteConferenceCallParticipants, phone.deleteGroupCallMessages, phone.deleteGroupCallParticipantMessages, phone.discardCall, phone.discardGroupCall, phone.editGroupCallParticipant, phone.editGroupCallTitle, phone.getGroupCallChainBlocks, phone.getGroupCallJoinAs, phone.getGroupCallStreamRtmpUrl, phone.getGroupParticipants, phone.inviteConferenceCallParticipant, phone.inviteToGroupCall, phone.joinGroupCall, phone.joinGroupCallPresentation, phone.leaveGroupCall, phone.leaveGroupCallPresentation, phone.saveDefaultGroupCallJoinAs, phone.saveDefaultSendAs, phone.sendConferenceCallBroadcast, phone.sendGroupCallMessage, phone.setCallRating, phone.startScheduledGroupCall, phone.toggleGroupCallRecord, phone.toggleGroupCallSettings, phone.toggleGroupCallStartSubscription, premium.applyBoost, premium.getBoostsList, premium.getBoostsStatus, premium.getUserBoosts, stats.getPollStats, stats.getStoryPublicForwards, stats.getStoryStats, stories.activateStealthMode, stories.canSendStory, stories.createAlbum, stories.deleteAlbum, stories.deleteStories, stories.editStory, stories.exportStoryLink, stories.getAlbumStories, stories.getAlbums, stories.getAllReadPeerStories, stories.getPeerMaxIDs, stories.getPeerStories, stories.getPinnedStories, stories.getStoriesArchive, stories.getStoriesByID, stories.getStoriesViews, stories.getStoryReactionsList, stories.getStoryViewsList, stories.incrementStoryViews, stories.readStories, stories.reorderAlbums, stories.report, stories.searchPosts, stories.sendReaction, stories.sendStory, stories.startLive, stories.togglePeerStoriesHidden, stories.togglePinned, stories.togglePinnedToTop, stories.updateAlbum, users.suggestBirthday
Provenance
Section titled “Provenance”- layer: 228
- structural source:
tdlib - canonical schema: https://raw.githubusercontent.com/tdlib/td/refs/heads/master/td/generate/scheme/telegram_api.tl
- prose merge precedence: TDLib → Telegram Desktop → Core JSON
- source note: Canonical structure is the pinned TDLib telegram_api.tl; Layer 228 comes only from the matching Telegram Desktop end-of-file marker; core.telegram.org inputs enrich documentation and RPC error metadata without overriding structure.
Source-diff notes
Section titled “Source-diff notes”- tdlib_vs_core: changed_count=68; core_only_count=1; overlap_count=2302; tdlib_only_count=158
- tdlib_vs_tdesktop: changed_count=0; overlap_count=2448; tdesktop_only=null; tdlib_only=accessPointRule, ephemeral.editMessage, help.configSimple, inputPeerPhotoFileLocationLegacy, inputStickerSetThumbLegacy, invokeWithApnsSecretPrefix, invokeWithBusinessConnectionPrefix, invokeWithGooglePlayIntegrityPrefix, invokeWithReCaptchaPrefix, ipPort, ipPortSecret, updateEphemeralBotCallbackQuery