diff --git a/docs/API_docs/constructors/index.md b/docs/API_docs/constructors/index.md
index a2885e5d4f..acee30c63c 100644
--- a/docs/API_docs/constructors/index.md
+++ b/docs/API_docs/constructors/index.md
@@ -1958,7 +1958,7 @@ image: https://docs.madelineproto.xyz/favicons/android-chrome-256x256.png
[$mediaAreaWeather](/API_docs/constructors/mediaAreaWeather.html) = \['coordinates' => [MediaAreaCoordinates](/API_docs/types/MediaAreaCoordinates.html), 'emoji' => [string](/API_docs/types/string.html), 'temperature_c' => [double](/API_docs/types/double.html), 'color' => [int](/API_docs/types/int.html), \];
***
-
[$message](/API_docs/constructors/message.html) = \['out' => [Bool](/API_docs/types/Bool.html), 'mentioned' => [Bool](/API_docs/types/Bool.html), 'media_unread' => [Bool](/API_docs/types/Bool.html), 'silent' => [Bool](/API_docs/types/Bool.html), 'post' => [Bool](/API_docs/types/Bool.html), 'from_scheduled' => [Bool](/API_docs/types/Bool.html), 'legacy' => [Bool](/API_docs/types/Bool.html), 'edit_hide' => [Bool](/API_docs/types/Bool.html), 'pinned' => [Bool](/API_docs/types/Bool.html), 'noforwards' => [Bool](/API_docs/types/Bool.html), 'invert_media' => [Bool](/API_docs/types/Bool.html), 'offline' => [Bool](/API_docs/types/Bool.html), 'id' => [int](/API_docs/types/int.html), 'from_id' => [Peer](/API_docs/types/Peer.html), 'from_boosts_applied' => [int](/API_docs/types/int.html), 'peer_id' => [Peer](/API_docs/types/Peer.html), 'saved_peer_id' => [Peer](/API_docs/types/Peer.html), 'fwd_from' => [MessageFwdHeader](/API_docs/types/MessageFwdHeader.html), 'via_bot_id' => [long](/API_docs/types/long.html), 'via_business_bot_id' => [long](/API_docs/types/long.html), 'reply_to' => [MessageReplyHeader](/API_docs/types/MessageReplyHeader.html), 'date' => [int](/API_docs/types/int.html), 'message' => [string](/API_docs/types/string.html), 'media' => [MessageMedia](/API_docs/types/MessageMedia.html), 'reply_markup' => [ReplyMarkup](/API_docs/types/ReplyMarkup.html), 'entities' => \[[MessageEntity](/API_docs/types/MessageEntity.html)\], 'views' => [int](/API_docs/types/int.html), 'forwards' => [int](/API_docs/types/int.html), 'replies' => [MessageReplies](/API_docs/types/MessageReplies.html), 'edit_date' => [int](/API_docs/types/int.html), 'post_author' => [string](/API_docs/types/string.html), 'grouped_id' => [long](/API_docs/types/long.html), 'reactions' => [MessageReactions](/API_docs/types/MessageReactions.html), 'restriction_reason' => \[[RestrictionReason](/API_docs/types/RestrictionReason.html)\], 'ttl_period' => [int](/API_docs/types/int.html), 'quick_reply_shortcut_id' => [int](/API_docs/types/int.html), 'effect' => [long](/API_docs/types/long.html), 'factcheck' => [FactCheck](/API_docs/types/FactCheck.html), \];
+
[$message](/API_docs/constructors/message.html) = \['out' => [Bool](/API_docs/types/Bool.html), 'mentioned' => [Bool](/API_docs/types/Bool.html), 'media_unread' => [Bool](/API_docs/types/Bool.html), 'silent' => [Bool](/API_docs/types/Bool.html), 'post' => [Bool](/API_docs/types/Bool.html), 'from_scheduled' => [Bool](/API_docs/types/Bool.html), 'legacy' => [Bool](/API_docs/types/Bool.html), 'edit_hide' => [Bool](/API_docs/types/Bool.html), 'pinned' => [Bool](/API_docs/types/Bool.html), 'noforwards' => [Bool](/API_docs/types/Bool.html), 'invert_media' => [Bool](/API_docs/types/Bool.html), 'offline' => [Bool](/API_docs/types/Bool.html), 'video_processing_pending' => [Bool](/API_docs/types/Bool.html), 'id' => [int](/API_docs/types/int.html), 'from_id' => [Peer](/API_docs/types/Peer.html), 'from_boosts_applied' => [int](/API_docs/types/int.html), 'peer_id' => [Peer](/API_docs/types/Peer.html), 'saved_peer_id' => [Peer](/API_docs/types/Peer.html), 'fwd_from' => [MessageFwdHeader](/API_docs/types/MessageFwdHeader.html), 'via_bot_id' => [long](/API_docs/types/long.html), 'via_business_bot_id' => [long](/API_docs/types/long.html), 'reply_to' => [MessageReplyHeader](/API_docs/types/MessageReplyHeader.html), 'date' => [int](/API_docs/types/int.html), 'message' => [string](/API_docs/types/string.html), 'media' => [MessageMedia](/API_docs/types/MessageMedia.html), 'reply_markup' => [ReplyMarkup](/API_docs/types/ReplyMarkup.html), 'entities' => \[[MessageEntity](/API_docs/types/MessageEntity.html)\], 'views' => [int](/API_docs/types/int.html), 'forwards' => [int](/API_docs/types/int.html), 'replies' => [MessageReplies](/API_docs/types/MessageReplies.html), 'edit_date' => [int](/API_docs/types/int.html), 'post_author' => [string](/API_docs/types/string.html), 'grouped_id' => [long](/API_docs/types/long.html), 'reactions' => [MessageReactions](/API_docs/types/MessageReactions.html), 'restriction_reason' => \[[RestrictionReason](/API_docs/types/RestrictionReason.html)\], 'ttl_period' => [int](/API_docs/types/int.html), 'quick_reply_shortcut_id' => [int](/API_docs/types/int.html), 'effect' => [long](/API_docs/types/long.html), 'factcheck' => [FactCheck](/API_docs/types/FactCheck.html), \];
***
[$messageActionBoostApply](/API_docs/constructors/messageActionBoostApply.html) = \['boosts' => [int](/API_docs/types/int.html), \];
@@ -3278,7 +3278,7 @@ image: https://docs.madelineproto.xyz/favicons/android-chrome-256x256.png
[$sponsoredMessageReportOption](/API_docs/constructors/sponsoredMessageReportOption.html) = \['text' => [string](/API_docs/types/string.html), 'option' => [bytes](/API_docs/types/bytes.html), \];
***
-
[$starGift](/API_docs/constructors/starGift.html) = \['limited' => [Bool](/API_docs/types/Bool.html), 'id' => [long](/API_docs/types/long.html), 'sticker' => [Document](/API_docs/types/Document.html), 'stars' => [long](/API_docs/types/long.html), 'availability_remains' => [int](/API_docs/types/int.html), 'availability_total' => [int](/API_docs/types/int.html), 'convert_stars' => [long](/API_docs/types/long.html), \];
+
[$starGift](/API_docs/constructors/starGift.html) = \['limited' => [Bool](/API_docs/types/Bool.html), 'sold_out' => [Bool](/API_docs/types/Bool.html), 'id' => [long](/API_docs/types/long.html), 'sticker' => [Document](/API_docs/types/Document.html), 'stars' => [long](/API_docs/types/long.html), 'availability_remains' => [int](/API_docs/types/int.html), 'availability_total' => [int](/API_docs/types/int.html), 'convert_stars' => [long](/API_docs/types/long.html), 'first_sale_date' => [int](/API_docs/types/int.html), 'last_sale_date' => [int](/API_docs/types/int.html), \];
***
[$starsGiftOption](/API_docs/constructors/starsGiftOption.html) = \['extended' => [Bool](/API_docs/types/Bool.html), 'stars' => [long](/API_docs/types/long.html), 'store_product' => [string](/API_docs/types/string.html), 'currency' => [string](/API_docs/types/string.html), 'amount' => [long](/API_docs/types/long.html), \];
@@ -3302,11 +3302,14 @@ image: https://docs.madelineproto.xyz/favicons/android-chrome-256x256.png
[$starsTopupOption](/API_docs/constructors/starsTopupOption.html) = \['extended' => [Bool](/API_docs/types/Bool.html), 'stars' => [long](/API_docs/types/long.html), 'store_product' => [string](/API_docs/types/string.html), 'currency' => [string](/API_docs/types/string.html), 'amount' => [long](/API_docs/types/long.html), \];
***
-
[$starsTransaction](/API_docs/constructors/starsTransaction.html) = \['refund' => [Bool](/API_docs/types/Bool.html), 'pending' => [Bool](/API_docs/types/Bool.html), 'failed' => [Bool](/API_docs/types/Bool.html), 'gift' => [Bool](/API_docs/types/Bool.html), 'reaction' => [Bool](/API_docs/types/Bool.html), 'id' => [string](/API_docs/types/string.html), 'stars' => [long](/API_docs/types/long.html), 'date' => [int](/API_docs/types/int.html), 'peer' => [StarsTransactionPeer](/API_docs/types/StarsTransactionPeer.html), 'title' => [string](/API_docs/types/string.html), 'description' => [string](/API_docs/types/string.html), 'photo' => [WebDocument](/API_docs/types/WebDocument.html), 'transaction_date' => [int](/API_docs/types/int.html), 'transaction_url' => [string](/API_docs/types/string.html), 'bot_payload' => [bytes](/API_docs/types/bytes.html), 'msg_id' => [int](/API_docs/types/int.html), 'extended_media' => \[[MessageMedia](/API_docs/types/MessageMedia.html)\], 'subscription_period' => [int](/API_docs/types/int.html), 'giveaway_post_id' => [int](/API_docs/types/int.html), 'stargift' => [StarGift](/API_docs/types/StarGift.html), \];
+
[$starsTransaction](/API_docs/constructors/starsTransaction.html) = \['refund' => [Bool](/API_docs/types/Bool.html), 'pending' => [Bool](/API_docs/types/Bool.html), 'failed' => [Bool](/API_docs/types/Bool.html), 'gift' => [Bool](/API_docs/types/Bool.html), 'reaction' => [Bool](/API_docs/types/Bool.html), 'id' => [string](/API_docs/types/string.html), 'stars' => [long](/API_docs/types/long.html), 'date' => [int](/API_docs/types/int.html), 'peer' => [StarsTransactionPeer](/API_docs/types/StarsTransactionPeer.html), 'title' => [string](/API_docs/types/string.html), 'description' => [string](/API_docs/types/string.html), 'photo' => [WebDocument](/API_docs/types/WebDocument.html), 'transaction_date' => [int](/API_docs/types/int.html), 'transaction_url' => [string](/API_docs/types/string.html), 'bot_payload' => [bytes](/API_docs/types/bytes.html), 'msg_id' => [int](/API_docs/types/int.html), 'extended_media' => \[[MessageMedia](/API_docs/types/MessageMedia.html)\], 'subscription_period' => [int](/API_docs/types/int.html), 'giveaway_post_id' => [int](/API_docs/types/int.html), 'stargift' => [StarGift](/API_docs/types/StarGift.html), 'floodskip_number' => [int](/API_docs/types/int.html), \];
***
[$starsTransactionPeer](/API_docs/constructors/starsTransactionPeer.html) = \['peer' => [long](/API_docs/types/long.html), \];
+***
+
[$starsTransactionPeerAPI](/API_docs/constructors/starsTransactionPeerAPI.html) = \[\];
+
***
[$starsTransactionPeerAds](/API_docs/constructors/starsTransactionPeerAds.html) = \[\];
@@ -3740,7 +3743,7 @@ image: https://docs.madelineproto.xyz/favicons/android-chrome-256x256.png
[$updateDeleteQuickReplyMessages](/API_docs/constructors/updateDeleteQuickReplyMessages.html) = \['shortcut_id' => [int](/API_docs/types/int.html), 'messages' => \[[int](/API_docs/types/int.html)\], \];
***
-
[$updateDeleteScheduledMessages](/API_docs/constructors/updateDeleteScheduledMessages.html) = \['peer' => [long](/API_docs/types/long.html), 'messages' => \[[int](/API_docs/types/int.html)\], \];
+
[$updateDeleteScheduledMessages](/API_docs/constructors/updateDeleteScheduledMessages.html) = \['peer' => [long](/API_docs/types/long.html), 'messages' => \[[int](/API_docs/types/int.html)\], 'sent_messages' => \[[int](/API_docs/types/int.html)\], \];
***
[$updateDialogFilter](/API_docs/constructors/updateDialogFilter.html) = \['id' => [int](/API_docs/types/int.html), 'filter' => [DialogFilter](/API_docs/types/DialogFilter.html), \];
@@ -4088,7 +4091,7 @@ image: https://docs.madelineproto.xyz/favicons/android-chrome-256x256.png
[$userEmpty](/API_docs/constructors/userEmpty.html) = \['id' => [long](/API_docs/types/long.html), \];
***
-
[$userFull](/API_docs/constructors/userFull.html) = \['blocked' => [Bool](/API_docs/types/Bool.html), 'phone_calls_available' => [Bool](/API_docs/types/Bool.html), 'phone_calls_private' => [Bool](/API_docs/types/Bool.html), 'can_pin_message' => [Bool](/API_docs/types/Bool.html), 'has_scheduled' => [Bool](/API_docs/types/Bool.html), 'video_calls_available' => [Bool](/API_docs/types/Bool.html), 'voice_messages_forbidden' => [Bool](/API_docs/types/Bool.html), 'translations_disabled' => [Bool](/API_docs/types/Bool.html), 'stories_pinned_available' => [Bool](/API_docs/types/Bool.html), 'blocked_my_stories_from' => [Bool](/API_docs/types/Bool.html), 'wallpaper_overridden' => [Bool](/API_docs/types/Bool.html), 'contact_require_premium' => [Bool](/API_docs/types/Bool.html), 'read_dates_private' => [Bool](/API_docs/types/Bool.html), 'sponsored_enabled' => [Bool](/API_docs/types/Bool.html), 'id' => [long](/API_docs/types/long.html), 'about' => [string](/API_docs/types/string.html), 'settings' => [PeerSettings](/API_docs/types/PeerSettings.html), 'personal_photo' => [Photo](/API_docs/types/Photo.html), 'profile_photo' => [Photo](/API_docs/types/Photo.html), 'fallback_photo' => [Photo](/API_docs/types/Photo.html), 'notify_settings' => [PeerNotifySettings](/API_docs/types/PeerNotifySettings.html), 'bot_info' => [BotInfo](/API_docs/types/BotInfo.html), 'pinned_msg_id' => [int](/API_docs/types/int.html), 'common_chats_count' => [int](/API_docs/types/int.html), 'folder_id' => [int](/API_docs/types/int.html), 'ttl_period' => [int](/API_docs/types/int.html), 'theme_emoticon' => [string](/API_docs/types/string.html), 'private_forward_name' => [string](/API_docs/types/string.html), 'bot_group_admin_rights' => [ChatAdminRights](/API_docs/types/ChatAdminRights.html), 'bot_broadcast_admin_rights' => [ChatAdminRights](/API_docs/types/ChatAdminRights.html), 'premium_gifts' => \[[PremiumGiftOption](/API_docs/types/PremiumGiftOption.html)\], 'wallpaper' => [WallPaper](/API_docs/types/WallPaper.html), 'stories' => [PeerStories](/API_docs/types/PeerStories.html), 'business_work_hours' => [BusinessWorkHours](/API_docs/types/BusinessWorkHours.html), 'business_location' => [BusinessLocation](/API_docs/types/BusinessLocation.html), 'business_greeting_message' => [BusinessGreetingMessage](/API_docs/types/BusinessGreetingMessage.html), 'business_away_message' => [BusinessAwayMessage](/API_docs/types/BusinessAwayMessage.html), 'business_intro' => [BusinessIntro](/API_docs/types/BusinessIntro.html), 'birthday' => [Birthday](/API_docs/types/Birthday.html), 'personal_channel_id' => [long](/API_docs/types/long.html), 'personal_channel_message' => [int](/API_docs/types/int.html), 'stargifts_count' => [int](/API_docs/types/int.html), \];
+
[$userFull](/API_docs/constructors/userFull.html) = \['blocked' => [Bool](/API_docs/types/Bool.html), 'phone_calls_available' => [Bool](/API_docs/types/Bool.html), 'phone_calls_private' => [Bool](/API_docs/types/Bool.html), 'can_pin_message' => [Bool](/API_docs/types/Bool.html), 'has_scheduled' => [Bool](/API_docs/types/Bool.html), 'video_calls_available' => [Bool](/API_docs/types/Bool.html), 'voice_messages_forbidden' => [Bool](/API_docs/types/Bool.html), 'translations_disabled' => [Bool](/API_docs/types/Bool.html), 'stories_pinned_available' => [Bool](/API_docs/types/Bool.html), 'blocked_my_stories_from' => [Bool](/API_docs/types/Bool.html), 'wallpaper_overridden' => [Bool](/API_docs/types/Bool.html), 'contact_require_premium' => [Bool](/API_docs/types/Bool.html), 'read_dates_private' => [Bool](/API_docs/types/Bool.html), 'sponsored_enabled' => [Bool](/API_docs/types/Bool.html), 'can_view_revenue' => [Bool](/API_docs/types/Bool.html), 'id' => [long](/API_docs/types/long.html), 'about' => [string](/API_docs/types/string.html), 'settings' => [PeerSettings](/API_docs/types/PeerSettings.html), 'personal_photo' => [Photo](/API_docs/types/Photo.html), 'profile_photo' => [Photo](/API_docs/types/Photo.html), 'fallback_photo' => [Photo](/API_docs/types/Photo.html), 'notify_settings' => [PeerNotifySettings](/API_docs/types/PeerNotifySettings.html), 'bot_info' => [BotInfo](/API_docs/types/BotInfo.html), 'pinned_msg_id' => [int](/API_docs/types/int.html), 'common_chats_count' => [int](/API_docs/types/int.html), 'folder_id' => [int](/API_docs/types/int.html), 'ttl_period' => [int](/API_docs/types/int.html), 'theme_emoticon' => [string](/API_docs/types/string.html), 'private_forward_name' => [string](/API_docs/types/string.html), 'bot_group_admin_rights' => [ChatAdminRights](/API_docs/types/ChatAdminRights.html), 'bot_broadcast_admin_rights' => [ChatAdminRights](/API_docs/types/ChatAdminRights.html), 'premium_gifts' => \[[PremiumGiftOption](/API_docs/types/PremiumGiftOption.html)\], 'wallpaper' => [WallPaper](/API_docs/types/WallPaper.html), 'stories' => [PeerStories](/API_docs/types/PeerStories.html), 'business_work_hours' => [BusinessWorkHours](/API_docs/types/BusinessWorkHours.html), 'business_location' => [BusinessLocation](/API_docs/types/BusinessLocation.html), 'business_greeting_message' => [BusinessGreetingMessage](/API_docs/types/BusinessGreetingMessage.html), 'business_away_message' => [BusinessAwayMessage](/API_docs/types/BusinessAwayMessage.html), 'business_intro' => [BusinessIntro](/API_docs/types/BusinessIntro.html), 'birthday' => [Birthday](/API_docs/types/Birthday.html), 'personal_channel_id' => [long](/API_docs/types/long.html), 'personal_channel_message' => [int](/API_docs/types/int.html), 'stargifts_count' => [int](/API_docs/types/int.html), \];
***
[$userProfilePhoto](/API_docs/constructors/userProfilePhoto.html) = \['has_video' => [Bool](/API_docs/types/Bool.html), 'personal' => [Bool](/API_docs/types/Bool.html), 'photo_id' => [long](/API_docs/types/long.html), 'stripped_thumb' => [bytes](/API_docs/types/bytes.html), 'dc_id' => [int](/API_docs/types/int.html), \];
diff --git a/docs/API_docs/constructors/message.md b/docs/API_docs/constructors/message.md
index 2d14afec1f..960386b162 100644
--- a/docs/API_docs/constructors/message.md
+++ b/docs/API_docs/constructors/message.md
@@ -27,6 +27,7 @@ A message
|noforwards|[Bool](/API_docs/types/Bool.html) | Optional|Whether this message is [protected](https://telegram.org/blog/protected-content-delete-by-date-and-more) and thus cannot be forwarded; clients should also prevent users from saving attached media (i.e. videos should only be streamed, photos should be kept in RAM, et cetera).|
|invert\_media|[Bool](/API_docs/types/Bool.html) | Optional|If set, any eventual webpage preview will be shown on top of the message instead of at the bottom.|
|offline|[Bool](/API_docs/types/Bool.html) | Optional|
+|video\_processing\_pending|[Bool](/API_docs/types/Bool.html) | Optional|
|id|[int](/API_docs/types/int.html) | Yes|ID of the message|
|from\_id|[Peer](/API_docs/types/Peer.html) | Optional|ID of the sender of the message|
|from\_boosts\_applied|[int](/API_docs/types/int.html) | Optional|
@@ -123,5 +124,5 @@ pre-formatted fixed-width code block written in the PHP programming language
### Example:
```
-$message = ['_' => 'message', 'out' => Bool, 'mentioned' => Bool, 'media_unread' => Bool, 'silent' => Bool, 'post' => Bool, 'from_scheduled' => Bool, 'legacy' => Bool, 'edit_hide' => Bool, 'pinned' => Bool, 'noforwards' => Bool, 'invert_media' => Bool, 'offline' => Bool, 'id' => int, 'from_id' => Peer, 'from_boosts_applied' => int, 'peer_id' => Peer, 'saved_peer_id' => Peer, 'fwd_from' => MessageFwdHeader, 'via_bot_id' => long, 'via_business_bot_id' => long, 'reply_to' => MessageReplyHeader, 'date' => int, 'message' => 'string', 'media' => MessageMedia, 'reply_markup' => ReplyMarkup, 'entities' => [MessageEntity, MessageEntity]parse_mode: 'string', , 'views' => int, 'forwards' => int, 'replies' => MessageReplies, 'edit_date' => int, 'post_author' => 'string', 'grouped_id' => long, 'reactions' => MessageReactions, 'restriction_reason' => [RestrictionReason, RestrictionReason], 'ttl_period' => int, 'quick_reply_shortcut_id' => int, 'effect' => long, 'factcheck' => FactCheck];
+$message = ['_' => 'message', 'out' => Bool, 'mentioned' => Bool, 'media_unread' => Bool, 'silent' => Bool, 'post' => Bool, 'from_scheduled' => Bool, 'legacy' => Bool, 'edit_hide' => Bool, 'pinned' => Bool, 'noforwards' => Bool, 'invert_media' => Bool, 'offline' => Bool, 'video_processing_pending' => Bool, 'id' => int, 'from_id' => Peer, 'from_boosts_applied' => int, 'peer_id' => Peer, 'saved_peer_id' => Peer, 'fwd_from' => MessageFwdHeader, 'via_bot_id' => long, 'via_business_bot_id' => long, 'reply_to' => MessageReplyHeader, 'date' => int, 'message' => 'string', 'media' => MessageMedia, 'reply_markup' => ReplyMarkup, 'entities' => [MessageEntity, MessageEntity]parse_mode: 'string', , 'views' => int, 'forwards' => int, 'replies' => MessageReplies, 'edit_date' => int, 'post_author' => 'string', 'grouped_id' => long, 'reactions' => MessageReactions, 'restriction_reason' => [RestrictionReason, RestrictionReason], 'ttl_period' => int, 'quick_reply_shortcut_id' => int, 'effect' => long, 'factcheck' => FactCheck];
```
diff --git a/docs/API_docs/constructors/starGift.md b/docs/API_docs/constructors/starGift.md
index 0326e2cf92..248edfcb76 100644
--- a/docs/API_docs/constructors/starGift.md
+++ b/docs/API_docs/constructors/starGift.md
@@ -14,12 +14,15 @@ image: https://docs.madelineproto.xyz/favicons/android-chrome-256x256.png
| Name | Type | Required |
|----------|---------------|----------|
|limited|[Bool](/API_docs/types/Bool.html) | Optional|
+|sold\_out|[Bool](/API_docs/types/Bool.html) | Optional|
|id|[long](/API_docs/types/long.html) | Yes|
|sticker|[Document](/API_docs/types/Document.html) | Optional|
|stars|[long](/API_docs/types/long.html) | Yes|
|availability\_remains|[int](/API_docs/types/int.html) | Optional|
|availability\_total|[int](/API_docs/types/int.html) | Optional|
|convert\_stars|[long](/API_docs/types/long.html) | Yes|
+|first\_sale\_date|[int](/API_docs/types/int.html) | Optional|
+|last\_sale\_date|[int](/API_docs/types/int.html) | Optional|
@@ -29,5 +32,5 @@ image: https://docs.madelineproto.xyz/favicons/android-chrome-256x256.png
### Example:
```
-$starGift = ['_' => 'starGift', 'limited' => Bool, 'id' => long, 'sticker' => Document, 'stars' => long, 'availability_remains' => int, 'availability_total' => int, 'convert_stars' => long];
+$starGift = ['_' => 'starGift', 'limited' => Bool, 'sold_out' => Bool, 'id' => long, 'sticker' => Document, 'stars' => long, 'availability_remains' => int, 'availability_total' => int, 'convert_stars' => long, 'first_sale_date' => int, 'last_sale_date' => int];
```
diff --git a/docs/API_docs/constructors/starsTransaction.md b/docs/API_docs/constructors/starsTransaction.md
index 1a47bdd163..ae7811943f 100644
--- a/docs/API_docs/constructors/starsTransaction.md
+++ b/docs/API_docs/constructors/starsTransaction.md
@@ -33,6 +33,7 @@ image: https://docs.madelineproto.xyz/favicons/android-chrome-256x256.png
|subscription\_period|[int](/API_docs/types/int.html) | Optional|
|giveaway\_post\_id|[int](/API_docs/types/int.html) | Optional|
|stargift|[StarGift](/API_docs/types/StarGift.html) | Optional|
+|floodskip\_number|[int](/API_docs/types/int.html) | Optional|
@@ -42,5 +43,5 @@ image: https://docs.madelineproto.xyz/favicons/android-chrome-256x256.png
### Example:
```
-$starsTransaction = ['_' => 'starsTransaction', 'refund' => Bool, 'pending' => Bool, 'failed' => Bool, 'gift' => Bool, 'reaction' => Bool, 'id' => 'string', 'stars' => long, 'date' => int, 'peer' => StarsTransactionPeer, 'title' => 'string', 'description' => 'string', 'photo' => WebDocument, 'transaction_date' => int, 'transaction_url' => 'string', 'bot_payload' => 'bytes', 'msg_id' => int, 'extended_media' => [MessageMedia, MessageMedia], 'subscription_period' => int, 'giveaway_post_id' => int, 'stargift' => StarGift];
+$starsTransaction = ['_' => 'starsTransaction', 'refund' => Bool, 'pending' => Bool, 'failed' => Bool, 'gift' => Bool, 'reaction' => Bool, 'id' => 'string', 'stars' => long, 'date' => int, 'peer' => StarsTransactionPeer, 'title' => 'string', 'description' => 'string', 'photo' => WebDocument, 'transaction_date' => int, 'transaction_url' => 'string', 'bot_payload' => 'bytes', 'msg_id' => int, 'extended_media' => [MessageMedia, MessageMedia], 'subscription_period' => int, 'giveaway_post_id' => int, 'stargift' => StarGift, 'floodskip_number' => int];
```
diff --git a/docs/API_docs/constructors/starsTransactionPeerAPI.md b/docs/API_docs/constructors/starsTransactionPeerAPI.md
new file mode 100644
index 0000000000..8730a3308f
--- /dev/null
+++ b/docs/API_docs/constructors/starsTransactionPeerAPI.md
@@ -0,0 +1,22 @@
+---
+title: "starsTransactionPeerAPI"
+description: "starsTransactionPeerAPI attributes, type and example"
+nav_exclude: true
+image: https://docs.madelineproto.xyz/favicons/android-chrome-256x256.png
+---
+# Constructor: starsTransactionPeerAPI
+[Back to constructors index](/API_docs/constructors/index.html)
+
+
+
+
+
+
+### Type: [StarsTransactionPeer](/API_docs/types/StarsTransactionPeer.html)
+
+
+### Example:
+
+```
+$starsTransactionPeerAPI = ['_' => 'starsTransactionPeerAPI'];
+```
diff --git a/docs/API_docs/constructors/updateDeleteScheduledMessages.md b/docs/API_docs/constructors/updateDeleteScheduledMessages.md
index 3bd9ab8ca5..8a4d8506dd 100644
--- a/docs/API_docs/constructors/updateDeleteScheduledMessages.md
+++ b/docs/API_docs/constructors/updateDeleteScheduledMessages.md
@@ -17,6 +17,7 @@ Some [scheduled messages](https://core.telegram.org/api/scheduled-messages) were
|----------|---------------|----------|-------------|
|peer|[long](/API_docs/types/long.html) | Yes|Peer|
|messages|Array of [int](/API_docs/types/int.html) | Yes|Deleted scheduled messages|
+|sent\_messages|Array of [int](/API_docs/types/int.html) | Optional|
@@ -26,5 +27,5 @@ Some [scheduled messages](https://core.telegram.org/api/scheduled-messages) were
### Example:
```
-$updateDeleteScheduledMessages = ['_' => 'updateDeleteScheduledMessages', 'peer' => long, 'messages' => [int, int]];
+$updateDeleteScheduledMessages = ['_' => 'updateDeleteScheduledMessages', 'peer' => long, 'messages' => [int, int], 'sent_messages' => [int, int]];
```
diff --git a/docs/API_docs/constructors/userFull.md b/docs/API_docs/constructors/userFull.md
index 50630bbca7..5414d13b2a 100644
--- a/docs/API_docs/constructors/userFull.md
+++ b/docs/API_docs/constructors/userFull.md
@@ -29,6 +29,7 @@ Extended user info
|contact\_require\_premium|[Bool](/API_docs/types/Bool.html) | Optional|
|read\_dates\_private|[Bool](/API_docs/types/Bool.html) | Optional|
|sponsored\_enabled|[Bool](/API_docs/types/Bool.html) | Optional|
+|can\_view\_revenue|[Bool](/API_docs/types/Bool.html) | Optional|
|id|[long](/API_docs/types/long.html) | Yes|User ID|
|about|[string](/API_docs/types/string.html) | Optional|Bio of the user|
|settings|[PeerSettings](/API_docs/types/PeerSettings.html) | Yes|Peer settings|
@@ -66,5 +67,5 @@ Extended user info
### Example:
```
-$userFull = ['_' => 'userFull', 'blocked' => Bool, 'phone_calls_available' => Bool, 'phone_calls_private' => Bool, 'can_pin_message' => Bool, 'has_scheduled' => Bool, 'video_calls_available' => Bool, 'voice_messages_forbidden' => Bool, 'translations_disabled' => Bool, 'stories_pinned_available' => Bool, 'blocked_my_stories_from' => Bool, 'wallpaper_overridden' => Bool, 'contact_require_premium' => Bool, 'read_dates_private' => Bool, 'sponsored_enabled' => Bool, 'id' => long, 'about' => 'string', 'settings' => PeerSettings, 'personal_photo' => Photo, 'profile_photo' => Photo, 'fallback_photo' => Photo, 'notify_settings' => PeerNotifySettings, 'bot_info' => BotInfo, 'pinned_msg_id' => int, 'common_chats_count' => int, 'folder_id' => int, 'ttl_period' => int, 'theme_emoticon' => 'string', 'private_forward_name' => 'string', 'bot_group_admin_rights' => ChatAdminRights, 'bot_broadcast_admin_rights' => ChatAdminRights, 'premium_gifts' => [PremiumGiftOption, PremiumGiftOption], 'wallpaper' => WallPaper, 'stories' => PeerStories, 'business_work_hours' => BusinessWorkHours, 'business_location' => BusinessLocation, 'business_greeting_message' => BusinessGreetingMessage, 'business_away_message' => BusinessAwayMessage, 'business_intro' => BusinessIntro, 'birthday' => Birthday, 'personal_channel_id' => long, 'personal_channel_message' => int, 'stargifts_count' => int];
+$userFull = ['_' => 'userFull', 'blocked' => Bool, 'phone_calls_available' => Bool, 'phone_calls_private' => Bool, 'can_pin_message' => Bool, 'has_scheduled' => Bool, 'video_calls_available' => Bool, 'voice_messages_forbidden' => Bool, 'translations_disabled' => Bool, 'stories_pinned_available' => Bool, 'blocked_my_stories_from' => Bool, 'wallpaper_overridden' => Bool, 'contact_require_premium' => Bool, 'read_dates_private' => Bool, 'sponsored_enabled' => Bool, 'can_view_revenue' => Bool, 'id' => long, 'about' => 'string', 'settings' => PeerSettings, 'personal_photo' => Photo, 'profile_photo' => Photo, 'fallback_photo' => Photo, 'notify_settings' => PeerNotifySettings, 'bot_info' => BotInfo, 'pinned_msg_id' => int, 'common_chats_count' => int, 'folder_id' => int, 'ttl_period' => int, 'theme_emoticon' => 'string', 'private_forward_name' => 'string', 'bot_group_admin_rights' => ChatAdminRights, 'bot_broadcast_admin_rights' => ChatAdminRights, 'premium_gifts' => [PremiumGiftOption, PremiumGiftOption], 'wallpaper' => WallPaper, 'stories' => PeerStories, 'business_work_hours' => BusinessWorkHours, 'business_location' => BusinessLocation, 'business_greeting_message' => BusinessGreetingMessage, 'business_away_message' => BusinessAwayMessage, 'business_intro' => BusinessIntro, 'birthday' => Birthday, 'personal_channel_id' => long, 'personal_channel_message' => int, 'stargifts_count' => int];
```
diff --git a/docs/API_docs/index.md b/docs/API_docs/index.md
index 8d4f65b457..5984eb09a1 100644
--- a/docs/API_docs/index.md
+++ b/docs/API_docs/index.md
@@ -1,6 +1,6 @@
---
title: "Telegram RPC API"
-description: "MadelineProto API documentation (layer 190)"
+description: "MadelineProto API documentation (layer 192)"
has_children: true
has_toc: false
image: https://docs.madelineproto.xyz/favicons/android-chrome-256x256.png
diff --git a/docs/API_docs/methods/api_index.md b/docs/API_docs/methods/api_index.md
index 914f27006e..6741e43646 100644
--- a/docs/API_docs/methods/api_index.md
+++ b/docs/API_docs/methods/api_index.md
@@ -671,10 +671,6 @@ $MadelineProto->[bots->toggleUsername](/API_docs/methods/bots.toggleUsername.htm
$MadelineProto->[channels->checkUsername](/API_docs/methods/channels.checkUsername.html)(\[channel: $[InputChannel](/API_docs/types/InputChannel.html), username: $[string](/API_docs/types/string.html), \]) === [$Bool](/API_docs/types/Bool.html)
-***
-
-$MadelineProto->[channels->clickSponsoredMessage](/API_docs/methods/channels.clickSponsoredMessage.html)(\[media: $[Bool](/API_docs/types/Bool.html), fullscreen: $[Bool](/API_docs/types/Bool.html), channel: $[InputChannel](/API_docs/types/InputChannel.html), \]) === [$Bool](/API_docs/types/Bool.html)
-
***
$MadelineProto->[channels->convertToGigagroup](/API_docs/methods/channels.convertToGigagroup.html)(\[channel: $[InputChannel](/API_docs/types/InputChannel.html), \]) === [$Updates](/API_docs/types/Updates.html)
@@ -799,10 +795,6 @@ $MadelineProto->[channels->getParticipants](/API_docs/methods/channels.getPartic
$MadelineProto->[channels->getSendAs](/API_docs/methods/channels.getSendAs.html)(\[peer: $[InputPeer](/API_docs/types/InputPeer.html), \]) === [$channels.SendAsPeers](/API_docs/types/channels.SendAsPeers.html)
-***
-
-$MadelineProto->[channels->getSponsoredMessages](/API_docs/methods/channels.getSponsoredMessages.html)(\[channel: $[InputChannel](/API_docs/types/InputChannel.html), \]) === [$messages.SponsoredMessages](/API_docs/types/messages.SponsoredMessages.html)
-
***
$MadelineProto->[channels->inviteToChannel](/API_docs/methods/channels.inviteToChannel.html)(\[channel: $[InputChannel](/API_docs/types/InputChannel.html), users: \[$[InputUser](/API_docs/types/InputUser.html)\], \]) === [$messages.InvitedUsers](/API_docs/types/messages.InvitedUsers.html)
@@ -839,10 +831,6 @@ $MadelineProto->[channels->reportAntiSpamFalsePositive](/API_docs/methods/channe
$MadelineProto->[channels->reportSpam](/API_docs/methods/channels.reportSpam.html)(\[channel: $[InputChannel](/API_docs/types/InputChannel.html), participant: $[InputPeer](/API_docs/types/InputPeer.html), id: \[$[int](/API_docs/types/int.html)\], \]) === [$Bool](/API_docs/types/Bool.html)
-***
-
-$MadelineProto->[channels->reportSponsoredMessage](/API_docs/methods/channels.reportSponsoredMessage.html)(\[channel: $[InputChannel](/API_docs/types/InputChannel.html), option: $[bytes](/API_docs/types/bytes.html), \]) === [$channels.SponsoredMessageReportResult](/API_docs/types/channels.SponsoredMessageReportResult.html)
-
***
$MadelineProto->[channels->restrictSponsoredMessages](/API_docs/methods/channels.restrictSponsoredMessages.html)(\[channel: $[InputChannel](/API_docs/types/InputChannel.html), restricted: $[Bool](/API_docs/types/Bool.html), \]) === [$Updates](/API_docs/types/Updates.html)
@@ -923,10 +911,6 @@ $MadelineProto->[channels->updatePinnedForumTopic](/API_docs/methods/channels.up
$MadelineProto->[channels->updateUsername](/API_docs/methods/channels.updateUsername.html)(\[channel: $[InputChannel](/API_docs/types/InputChannel.html), username: $[string](/API_docs/types/string.html), \]) === [$Bool](/API_docs/types/Bool.html)
-***
-
-$MadelineProto->[channels->viewSponsoredMessage](/API_docs/methods/channels.viewSponsoredMessage.html)(\[channel: $[InputChannel](/API_docs/types/InputChannel.html), \]) === [$Bool](/API_docs/types/Bool.html)
-
***
$MadelineProto->[chatlists->checkChatlistInvite](/API_docs/methods/chatlists.checkChatlistInvite.html)(\[slug: $[string](/API_docs/types/string.html), \]) === [$chatlists.ChatlistInvite](/API_docs/types/chatlists.ChatlistInvite.html)
@@ -1283,6 +1267,10 @@ $MadelineProto->[messages->clearRecentReactions](/API_docs/methods/messages.clea
$MadelineProto->[messages->clearRecentStickers](/API_docs/methods/messages.clearRecentStickers.html)(\[attached: $[Bool](/API_docs/types/Bool.html), \]) === [$Bool](/API_docs/types/Bool.html)
+***
+
+$MadelineProto->[messages->clickSponsoredMessage](/API_docs/methods/messages.clickSponsoredMessage.html)(\[media: $[Bool](/API_docs/types/Bool.html), fullscreen: $[Bool](/API_docs/types/Bool.html), peer: $[InputPeer](/API_docs/types/InputPeer.html), \]) === [$Bool](/API_docs/types/Bool.html)
+
***
$MadelineProto->[messages->createChat](/API_docs/methods/messages.createChat.html)(\[users: \[$[InputUser](/API_docs/types/InputUser.html)\], title: $[string](/API_docs/types/string.html), ttl_period: $[int](/API_docs/types/int.html), \]) === [$messages.InvitedUsers](/API_docs/types/messages.InvitedUsers.html)
@@ -1389,7 +1377,7 @@ $MadelineProto->[messages->faveSticker](/API_docs/methods/messages.faveSticker.h
***
-$MadelineProto->[messages->forwardMessages](/API_docs/methods/messages.forwardMessages.html)(\[silent: $[Bool](/API_docs/types/Bool.html), background: $[Bool](/API_docs/types/Bool.html), with_my_score: $[Bool](/API_docs/types/Bool.html), drop_author: $[Bool](/API_docs/types/Bool.html), drop_media_captions: $[Bool](/API_docs/types/Bool.html), noforwards: $[Bool](/API_docs/types/Bool.html), from_peer: $[InputPeer](/API_docs/types/InputPeer.html), id: \[$[int](/API_docs/types/int.html)\], to_peer: $[InputPeer](/API_docs/types/InputPeer.html), top_msg_id: $[int](/API_docs/types/int.html), schedule_date: $[int](/API_docs/types/int.html), send_as: $[InputPeer](/API_docs/types/InputPeer.html), quick_reply_shortcut: $[InputQuickReplyShortcut](/API_docs/types/InputQuickReplyShortcut.html), \]) === [$Updates](/API_docs/types/Updates.html)
+$MadelineProto->[messages->forwardMessages](/API_docs/methods/messages.forwardMessages.html)(\[silent: $[Bool](/API_docs/types/Bool.html), background: $[Bool](/API_docs/types/Bool.html), with_my_score: $[Bool](/API_docs/types/Bool.html), drop_author: $[Bool](/API_docs/types/Bool.html), drop_media_captions: $[Bool](/API_docs/types/Bool.html), noforwards: $[Bool](/API_docs/types/Bool.html), allow_paid_floodskip: $[Bool](/API_docs/types/Bool.html), from_peer: $[InputPeer](/API_docs/types/InputPeer.html), id: \[$[int](/API_docs/types/int.html)\], to_peer: $[InputPeer](/API_docs/types/InputPeer.html), top_msg_id: $[int](/API_docs/types/int.html), schedule_date: $[int](/API_docs/types/int.html), send_as: $[InputPeer](/API_docs/types/InputPeer.html), quick_reply_shortcut: $[InputQuickReplyShortcut](/API_docs/types/InputQuickReplyShortcut.html), \]) === [$Updates](/API_docs/types/Updates.html)
***
@@ -1703,6 +1691,10 @@ $MadelineProto->[messages->getSearchResultsPositions](/API_docs/methods/messages
$MadelineProto->[messages->getSplitRanges](/API_docs/methods/messages.getSplitRanges.html)(\[\]) === [$Vector\_of\_MessageRange](/API_docs/types/MessageRange.html)
+***
+
+$MadelineProto->[messages->getSponsoredMessages](/API_docs/methods/messages.getSponsoredMessages.html)(\[peer: $[InputPeer](/API_docs/types/InputPeer.html), \]) === [$messages.SponsoredMessages](/API_docs/types/messages.SponsoredMessages.html)
+
***
$MadelineProto->[messages->getStickerSet](/API_docs/methods/messages.getStickerSet.html)(\[stickerset: $[InputStickerSet](/API_docs/types/InputStickerSet.html), hash: $[int](/API_docs/types/int.html), \]) === [$messages.StickerSet](/API_docs/types/messages.StickerSet.html)
@@ -1843,6 +1835,10 @@ $MadelineProto->[messages->reportReaction](/API_docs/methods/messages.reportReac
$MadelineProto->[messages->reportSpam](/API_docs/methods/messages.reportSpam.html)(\[peer: $[InputPeer](/API_docs/types/InputPeer.html), \]) === [$Bool](/API_docs/types/Bool.html)
+***
+
+$MadelineProto->[messages->reportSponsoredMessage](/API_docs/methods/messages.reportSponsoredMessage.html)(\[peer: $[InputPeer](/API_docs/types/InputPeer.html), option: $[bytes](/API_docs/types/bytes.html), \]) === [$channels.SponsoredMessageReportResult](/API_docs/types/channels.SponsoredMessageReportResult.html)
+
***
$MadelineProto->[messages->requestAppWebView](/API_docs/methods/messages.requestAppWebView.html)(\[write_allowed: $[Bool](/API_docs/types/Bool.html), compact: $[Bool](/API_docs/types/Bool.html), peer: $[InputPeer](/API_docs/types/InputPeer.html), app: $[InputBotApp](/API_docs/types/InputBotApp.html), start_param: $[string](/API_docs/types/string.html), theme_params: $[DataJSON](/API_docs/types/DataJSON.html), platform: $[string](/API_docs/types/string.html), \]) === [$WebViewResult](/API_docs/types/WebViewResult.html)
@@ -1929,15 +1925,15 @@ $MadelineProto->[messages->sendInlineBotResult](/API_docs/methods/messages.sendI
***
-$MadelineProto->[messages->sendMedia](/API_docs/methods/messages.sendMedia.html)(\[silent: $[Bool](/API_docs/types/Bool.html), background: $[Bool](/API_docs/types/Bool.html), clear_draft: $[Bool](/API_docs/types/Bool.html), noforwards: $[Bool](/API_docs/types/Bool.html), update_stickersets_order: $[Bool](/API_docs/types/Bool.html), invert_media: $[Bool](/API_docs/types/Bool.html), peer: $[InputPeer](/API_docs/types/InputPeer.html), reply_to: $[InputReplyTo](/API_docs/types/InputReplyTo.html), media: $[InputMedia](/API_docs/types/InputMedia.html), message: $[string](/API_docs/types/string.html), reply_markup: $[ReplyMarkup](/API_docs/types/ReplyMarkup.html), entities: \[$[MessageEntity](/API_docs/types/MessageEntity.html)\], schedule_date: $[int](/API_docs/types/int.html), send_as: $[InputPeer](/API_docs/types/InputPeer.html), quick_reply_shortcut: $[InputQuickReplyShortcut](/API_docs/types/InputQuickReplyShortcut.html), effect: $[long](/API_docs/types/long.html), \]) === [$Updates](/API_docs/types/Updates.html)
+$MadelineProto->[messages->sendMedia](/API_docs/methods/messages.sendMedia.html)(\[silent: $[Bool](/API_docs/types/Bool.html), background: $[Bool](/API_docs/types/Bool.html), clear_draft: $[Bool](/API_docs/types/Bool.html), noforwards: $[Bool](/API_docs/types/Bool.html), update_stickersets_order: $[Bool](/API_docs/types/Bool.html), invert_media: $[Bool](/API_docs/types/Bool.html), allow_paid_floodskip: $[Bool](/API_docs/types/Bool.html), peer: $[InputPeer](/API_docs/types/InputPeer.html), reply_to: $[InputReplyTo](/API_docs/types/InputReplyTo.html), media: $[InputMedia](/API_docs/types/InputMedia.html), message: $[string](/API_docs/types/string.html), reply_markup: $[ReplyMarkup](/API_docs/types/ReplyMarkup.html), entities: \[$[MessageEntity](/API_docs/types/MessageEntity.html)\], schedule_date: $[int](/API_docs/types/int.html), send_as: $[InputPeer](/API_docs/types/InputPeer.html), quick_reply_shortcut: $[InputQuickReplyShortcut](/API_docs/types/InputQuickReplyShortcut.html), effect: $[long](/API_docs/types/long.html), \]) === [$Updates](/API_docs/types/Updates.html)
***
-$MadelineProto->[messages->sendMessage](/API_docs/methods/messages.sendMessage.html)(\[no_webpage: $[Bool](/API_docs/types/Bool.html), silent: $[Bool](/API_docs/types/Bool.html), background: $[Bool](/API_docs/types/Bool.html), clear_draft: $[Bool](/API_docs/types/Bool.html), noforwards: $[Bool](/API_docs/types/Bool.html), update_stickersets_order: $[Bool](/API_docs/types/Bool.html), invert_media: $[Bool](/API_docs/types/Bool.html), peer: $[InputPeer](/API_docs/types/InputPeer.html), reply_to: $[InputReplyTo](/API_docs/types/InputReplyTo.html), message: $[string](/API_docs/types/string.html), reply_markup: $[ReplyMarkup](/API_docs/types/ReplyMarkup.html), entities: \[$[MessageEntity](/API_docs/types/MessageEntity.html)\], schedule_date: $[int](/API_docs/types/int.html), send_as: $[InputPeer](/API_docs/types/InputPeer.html), quick_reply_shortcut: $[InputQuickReplyShortcut](/API_docs/types/InputQuickReplyShortcut.html), effect: $[long](/API_docs/types/long.html), \]) === [$Updates](/API_docs/types/Updates.html)
+$MadelineProto->[messages->sendMessage](/API_docs/methods/messages.sendMessage.html)(\[no_webpage: $[Bool](/API_docs/types/Bool.html), silent: $[Bool](/API_docs/types/Bool.html), background: $[Bool](/API_docs/types/Bool.html), clear_draft: $[Bool](/API_docs/types/Bool.html), noforwards: $[Bool](/API_docs/types/Bool.html), update_stickersets_order: $[Bool](/API_docs/types/Bool.html), invert_media: $[Bool](/API_docs/types/Bool.html), allow_paid_floodskip: $[Bool](/API_docs/types/Bool.html), peer: $[InputPeer](/API_docs/types/InputPeer.html), reply_to: $[InputReplyTo](/API_docs/types/InputReplyTo.html), message: $[string](/API_docs/types/string.html), reply_markup: $[ReplyMarkup](/API_docs/types/ReplyMarkup.html), entities: \[$[MessageEntity](/API_docs/types/MessageEntity.html)\], schedule_date: $[int](/API_docs/types/int.html), send_as: $[InputPeer](/API_docs/types/InputPeer.html), quick_reply_shortcut: $[InputQuickReplyShortcut](/API_docs/types/InputQuickReplyShortcut.html), effect: $[long](/API_docs/types/long.html), \]) === [$Updates](/API_docs/types/Updates.html)
***
-$MadelineProto->[messages->sendMultiMedia](/API_docs/methods/messages.sendMultiMedia.html)(\[silent: $[Bool](/API_docs/types/Bool.html), background: $[Bool](/API_docs/types/Bool.html), clear_draft: $[Bool](/API_docs/types/Bool.html), noforwards: $[Bool](/API_docs/types/Bool.html), update_stickersets_order: $[Bool](/API_docs/types/Bool.html), invert_media: $[Bool](/API_docs/types/Bool.html), peer: $[InputPeer](/API_docs/types/InputPeer.html), reply_to: $[InputReplyTo](/API_docs/types/InputReplyTo.html), multi_media: \[$[InputSingleMedia](/API_docs/types/InputSingleMedia.html)\], schedule_date: $[int](/API_docs/types/int.html), send_as: $[InputPeer](/API_docs/types/InputPeer.html), quick_reply_shortcut: $[InputQuickReplyShortcut](/API_docs/types/InputQuickReplyShortcut.html), effect: $[long](/API_docs/types/long.html), \]) === [$Updates](/API_docs/types/Updates.html)
+$MadelineProto->[messages->sendMultiMedia](/API_docs/methods/messages.sendMultiMedia.html)(\[silent: $[Bool](/API_docs/types/Bool.html), background: $[Bool](/API_docs/types/Bool.html), clear_draft: $[Bool](/API_docs/types/Bool.html), noforwards: $[Bool](/API_docs/types/Bool.html), update_stickersets_order: $[Bool](/API_docs/types/Bool.html), invert_media: $[Bool](/API_docs/types/Bool.html), allow_paid_floodskip: $[Bool](/API_docs/types/Bool.html), peer: $[InputPeer](/API_docs/types/InputPeer.html), reply_to: $[InputReplyTo](/API_docs/types/InputReplyTo.html), multi_media: \[$[InputSingleMedia](/API_docs/types/InputSingleMedia.html)\], schedule_date: $[int](/API_docs/types/int.html), send_as: $[InputPeer](/API_docs/types/InputPeer.html), quick_reply_shortcut: $[InputQuickReplyShortcut](/API_docs/types/InputQuickReplyShortcut.html), effect: $[long](/API_docs/types/long.html), \]) === [$Updates](/API_docs/types/Updates.html)
***
@@ -2111,6 +2107,10 @@ $MadelineProto->[messages->uploadImportedMedia](/API_docs/methods/messages.uploa
$MadelineProto->[messages->uploadMedia](/API_docs/methods/messages.uploadMedia.html)(\[business_connection_id: $[string](/API_docs/types/string.html), peer: $[InputPeer](/API_docs/types/InputPeer.html), media: $[InputMedia](/API_docs/types/InputMedia.html), \]) === [$MessageMedia](/API_docs/types/MessageMedia.html)
+***
+
+$MadelineProto->[messages->viewSponsoredMessage](/API_docs/methods/messages.viewSponsoredMessage.html)(\[peer: $[InputPeer](/API_docs/types/InputPeer.html), \]) === [$Bool](/API_docs/types/Bool.html)
+
***
$MadelineProto->[payments->applyGiftCode](/API_docs/methods/payments.applyGiftCode.html)(\[slug: $[string](/API_docs/types/string.html), \]) === [$Updates](/API_docs/types/Updates.html)
@@ -2441,15 +2441,15 @@ $MadelineProto->[smsjobs->updateSettings](/API_docs/methods/smsjobs.updateSettin
***
-$MadelineProto->[stats->getBroadcastRevenueStats](/API_docs/methods/stats.getBroadcastRevenueStats.html)(\[dark: $[Bool](/API_docs/types/Bool.html), channel: $[InputChannel](/API_docs/types/InputChannel.html), \]) === [$stats.BroadcastRevenueStats](/API_docs/types/stats.BroadcastRevenueStats.html)
+$MadelineProto->[stats->getBroadcastRevenueStats](/API_docs/methods/stats.getBroadcastRevenueStats.html)(\[dark: $[Bool](/API_docs/types/Bool.html), peer: $[InputPeer](/API_docs/types/InputPeer.html), \]) === [$stats.BroadcastRevenueStats](/API_docs/types/stats.BroadcastRevenueStats.html)
***
-$MadelineProto->[stats->getBroadcastRevenueTransactions](/API_docs/methods/stats.getBroadcastRevenueTransactions.html)(\[channel: $[InputChannel](/API_docs/types/InputChannel.html), offset: $[int](/API_docs/types/int.html), limit: $[int](/API_docs/types/int.html), \]) === [$stats.BroadcastRevenueTransactions](/API_docs/types/stats.BroadcastRevenueTransactions.html)
+$MadelineProto->[stats->getBroadcastRevenueTransactions](/API_docs/methods/stats.getBroadcastRevenueTransactions.html)(\[peer: $[InputPeer](/API_docs/types/InputPeer.html), offset: $[int](/API_docs/types/int.html), limit: $[int](/API_docs/types/int.html), \]) === [$stats.BroadcastRevenueTransactions](/API_docs/types/stats.BroadcastRevenueTransactions.html)
***
-$MadelineProto->[stats->getBroadcastRevenueWithdrawalUrl](/API_docs/methods/stats.getBroadcastRevenueWithdrawalUrl.html)(\[channel: $[InputChannel](/API_docs/types/InputChannel.html), password: $[InputCheckPasswordSRP](/API_docs/types/InputCheckPasswordSRP.html), \]) === [$stats.BroadcastRevenueWithdrawalUrl](/API_docs/types/stats.BroadcastRevenueWithdrawalUrl.html)
+$MadelineProto->[stats->getBroadcastRevenueWithdrawalUrl](/API_docs/methods/stats.getBroadcastRevenueWithdrawalUrl.html)(\[peer: $[InputPeer](/API_docs/types/InputPeer.html), password: $[InputCheckPasswordSRP](/API_docs/types/InputCheckPasswordSRP.html), \]) === [$stats.BroadcastRevenueWithdrawalUrl](/API_docs/types/stats.BroadcastRevenueWithdrawalUrl.html)
***
@@ -2601,7 +2601,7 @@ $MadelineProto->[stories->report](/API_docs/methods/stories.report.html)(\[peer:
***
-$MadelineProto->[stories->searchPosts](/API_docs/methods/stories.searchPosts.html)(\[hashtag: $[string](/API_docs/types/string.html), area: $[MediaArea](/API_docs/types/MediaArea.html), offset: $[string](/API_docs/types/string.html), limit: $[int](/API_docs/types/int.html), \]) === [$stories.FoundStories](/API_docs/types/stories.FoundStories.html)
+$MadelineProto->[stories->searchPosts](/API_docs/methods/stories.searchPosts.html)(\[hashtag: $[string](/API_docs/types/string.html), area: $[MediaArea](/API_docs/types/MediaArea.html), peer: $[InputPeer](/API_docs/types/InputPeer.html), offset: $[string](/API_docs/types/string.html), limit: $[int](/API_docs/types/int.html), \]) === [$stories.FoundStories](/API_docs/types/stories.FoundStories.html)
***
diff --git a/docs/API_docs/methods/channels.clickSponsoredMessage.md b/docs/API_docs/methods/channels.clickSponsoredMessage.md
deleted file mode 100644
index 65025da8f0..0000000000
--- a/docs/API_docs/methods/channels.clickSponsoredMessage.md
+++ /dev/null
@@ -1,48 +0,0 @@
----
-title: "channels.clickSponsoredMessage"
-description: "Informs the server that the user has either"
-grand_parent: "Telegram RPC API"
-parent: "Methods"
-image: https://docs.madelineproto.xyz/favicons/android-chrome-256x256.png
-redirect_from: /API_docs/methods/channels_clickSponsoredMessage.html
----
-# Method: channels.clickSponsoredMessage
-[Back to methods index](index.html)
-
-
-
-Informs the server that the user has either:
-
-- Clicked on a link in the sponsored message
-- Has opened a sponsored chat or a sponsored website via the associated button
-- Has opened the sponsored chat via the sponsored message name, the sponsored message photo, or a mention in the sponsored message
-
-### Parameters:
-
-| Name | Type | Description | Required |
-|----------|---------------|-------------|----------|
-|media|[Bool](/API_docs/types/Bool.html) | | Optional|
-|fullscreen|[Bool](/API_docs/types/Bool.html) | | Optional|
-|channel|[Username, chat ID, Update, Message or InputChannel](/API_docs/types/InputChannel.html) | Channel where the sponsored message was posted | Optional|
-
-
-### Return type: [Bool](/API_docs/types/Bool.html)
-
-### Can bots use this method: **NO**
-
-
-### MadelineProto Example ([now async for huge speed and parallelism!](https://docs.madelineproto.xyz/docs/ASYNC.html)):
-
-
-```php
-if (!file_exists('madeline.php')) {
- copy('https://phar.madelineproto.xyz/madeline.php', 'madeline.php');
-}
-include 'madeline.php';
-
-$MadelineProto = new \danog\MadelineProto\API('session.madeline');
-$MadelineProto->start();
-
-$Bool = $MadelineProto->channels->clickSponsoredMessage(media: $Bool, fullscreen: $Bool, channel: $InputChannel, );
-```
-
diff --git a/docs/API_docs/methods/index.md b/docs/API_docs/methods/index.md
index 99a5b1e549..39b78cded6 100644
--- a/docs/API_docs/methods/index.md
+++ b/docs/API_docs/methods/index.md
@@ -458,8 +458,6 @@ image: https://docs.madelineproto.xyz/favicons/android-chrome-256x256.png
* Get a list of peers that can be used to join a group call, presenting yourself as a specific user/channel: phone.getGroupCallJoinAs
-* Get a list of sponsored messages: channels.getSponsoredMessages
-
* Get a message to show to the user when starting the bot: getWebMessage
* Get a payment form: payments.getPaymentForm
@@ -814,8 +812,6 @@ image: https://docs.madelineproto.xyz/favicons/android-chrome-256x256.png
* Informs the server about the number of pending bot updates if they haven't been processed for a long time; for bots only: help.setBotUpdatesStatus
-* Informs the server that the user has either:: channels.clickSponsoredMessage
-
* Initialize a takeout session, see here » for more info: account.initTakeoutSession
* Initialize connection: initConnection
@@ -908,8 +904,6 @@ image: https://docs.madelineproto.xyz/favicons/android-chrome-256x256.png
* Manually mark dialog as unread: messages.markDialogUnread
-* Mark a specific sponsored message as read: channels.viewSponsoredMessage
-
* Mark a thread as read: messages.readDiscussion
* Mark all stories up to a certain ID as read, for a given peer; will emit an updateReadStories update to all logged-in sessions: stories.readStories
@@ -1636,8 +1630,6 @@ image: https://docs.madelineproto.xyz/favicons/android-chrome-256x256.png
* bots.reorderPreviewMedias
-* channels.reportSponsoredMessage
-
* channels.restrictSponsoredMessages
* channels.searchPosts
@@ -1660,6 +1652,8 @@ image: https://docs.madelineproto.xyz/favicons/android-chrome-256x256.png
* messages.checkQuickReplyShortcut
+* messages.clickSponsoredMessage
+
* messages.deleteFactCheck
* messages.deleteQuickReplyMessages
@@ -1690,8 +1684,12 @@ image: https://docs.madelineproto.xyz/favicons/android-chrome-256x256.png
* messages.getSavedReactionTags
+* messages.getSponsoredMessages
+
* messages.reorderQuickReplies
+* messages.reportSponsoredMessage
+
* messages.requestMainWebView
* messages.sendPaidReaction
@@ -1704,6 +1702,8 @@ image: https://docs.madelineproto.xyz/favicons/android-chrome-256x256.png
* messages.updateSavedReactionTag
+* messages.viewSponsoredMessage
+
* null-byte RLE decode: rleDecode
* null-byte RLE encode: rleEncode
diff --git a/docs/API_docs/methods/messages.clickSponsoredMessage.md b/docs/API_docs/methods/messages.clickSponsoredMessage.md
new file mode 100644
index 0000000000..a30c598932
--- /dev/null
+++ b/docs/API_docs/methods/messages.clickSponsoredMessage.md
@@ -0,0 +1,42 @@
+---
+title: "messages.clickSponsoredMessage"
+description: "messages.clickSponsoredMessage parameters, return type and example"
+grand_parent: "Telegram RPC API"
+parent: "Methods"
+image: https://docs.madelineproto.xyz/favicons/android-chrome-256x256.png
+redirect_from: /API_docs/methods/messages_clickSponsoredMessage.html
+---
+# Method: messages.clickSponsoredMessage
+[Back to methods index](index.html)
+
+
+
+### Parameters:
+
+| Name | Type | Required |
+|----------|---------------|----------|
+|media|[Bool](/API_docs/types/Bool.html) | Optional|
+|fullscreen|[Bool](/API_docs/types/Bool.html) | Optional|
+|peer|[Username, chat ID, Update, Message or InputPeer](/API_docs/types/InputPeer.html) | Optional|
+
+
+### Return type: [Bool](/API_docs/types/Bool.html)
+
+### Can bots use this method: **YES**
+
+
+### MadelineProto Example ([now async for huge speed and parallelism!](https://docs.madelineproto.xyz/docs/ASYNC.html)):
+
+
+```php
+if (!file_exists('madeline.php')) {
+ copy('https://phar.madelineproto.xyz/madeline.php', 'madeline.php');
+}
+include 'madeline.php';
+
+$MadelineProto = new \danog\MadelineProto\API('session.madeline');
+$MadelineProto->start();
+
+$Bool = $MadelineProto->messages->clickSponsoredMessage(media: $Bool, fullscreen: $Bool, peer: $InputPeer, );
+```
+
diff --git a/docs/API_docs/methods/messages.forwardMessages.md b/docs/API_docs/methods/messages.forwardMessages.md
index aa34cda693..d4e3abcd96 100644
--- a/docs/API_docs/methods/messages.forwardMessages.md
+++ b/docs/API_docs/methods/messages.forwardMessages.md
@@ -23,6 +23,7 @@ Forwards messages by their IDs.
|drop\_author|[Bool](/API_docs/types/Bool.html) | Whether to forward messages without quoting the original author | Optional|
|drop\_media\_captions|[Bool](/API_docs/types/Bool.html) | Whether to strip captions from media | Optional|
|noforwards|[Bool](/API_docs/types/Bool.html) | Only for bots, disallows further re-forwarding and saving of the messages, even if the destination chat doesn't have [content protection](https://telegram.org/blog/protected-content-delete-by-date-and-more) enabled | Optional|
+|allow\_paid\_floodskip|[Bool](/API_docs/types/Bool.html) | | Optional|
|from\_peer|[Username, chat ID, Update, Message or InputPeer](/API_docs/types/InputPeer.html) | Source of messages | Optional|
|id|Array of [int](/API_docs/types/int.html) | IDs of messages | Yes|
|to\_peer|[Username, chat ID, Update, Message or InputPeer](/API_docs/types/InputPeer.html) | Destination peer | Optional|
@@ -49,6 +50,6 @@ include 'madeline.php';
$MadelineProto = new \danog\MadelineProto\API('session.madeline');
$MadelineProto->start();
-$Updates = $MadelineProto->messages->forwardMessages(silent: $Bool, background: $Bool, with_my_score: $Bool, drop_author: $Bool, drop_media_captions: $Bool, noforwards: $Bool, from_peer: $InputPeer, id: [$int, $int], to_peer: $InputPeer, top_msg_id: $int, schedule_date: $int, send_as: $InputPeer, quick_reply_shortcut: $InputQuickReplyShortcut, );
+$Updates = $MadelineProto->messages->forwardMessages(silent: $Bool, background: $Bool, with_my_score: $Bool, drop_author: $Bool, drop_media_captions: $Bool, noforwards: $Bool, allow_paid_floodskip: $Bool, from_peer: $InputPeer, id: [$int, $int], to_peer: $InputPeer, top_msg_id: $int, schedule_date: $int, send_as: $InputPeer, quick_reply_shortcut: $InputQuickReplyShortcut, );
```
diff --git a/docs/API_docs/methods/channels.getSponsoredMessages.md b/docs/API_docs/methods/messages.getSponsoredMessages.md
similarity index 52%
rename from docs/API_docs/methods/channels.getSponsoredMessages.md
rename to docs/API_docs/methods/messages.getSponsoredMessages.md
index 2343039f98..dc5996387d 100644
--- a/docs/API_docs/methods/channels.getSponsoredMessages.md
+++ b/docs/API_docs/methods/messages.getSponsoredMessages.md
@@ -1,28 +1,26 @@
---
-title: "channels.getSponsoredMessages"
-description: "Get a list of sponsored messages"
+title: "messages.getSponsoredMessages"
+description: "messages.getSponsoredMessages parameters, return type and example"
grand_parent: "Telegram RPC API"
parent: "Methods"
image: https://docs.madelineproto.xyz/favicons/android-chrome-256x256.png
-redirect_from: /API_docs/methods/channels_getSponsoredMessages.html
+redirect_from: /API_docs/methods/messages_getSponsoredMessages.html
---
-# Method: channels.getSponsoredMessages
+# Method: messages.getSponsoredMessages
[Back to methods index](index.html)
-Get a list of sponsored messages
-
### Parameters:
-| Name | Type | Description | Required |
-|----------|---------------|-------------|----------|
-|channel|[Username, chat ID, Update, Message or InputChannel](/API_docs/types/InputChannel.html) | Peer | Optional|
+| Name | Type | Required |
+|----------|---------------|----------|
+|peer|[Username, chat ID, Update, Message or InputPeer](/API_docs/types/InputPeer.html) | Optional|
### Return type: [messages.SponsoredMessages](/API_docs/types/messages.SponsoredMessages.html)
-### Can bots use this method: **NO**
+### Can bots use this method: **YES**
### MadelineProto Example ([now async for huge speed and parallelism!](https://docs.madelineproto.xyz/docs/ASYNC.html)):
@@ -37,6 +35,6 @@ include 'madeline.php';
$MadelineProto = new \danog\MadelineProto\API('session.madeline');
$MadelineProto->start();
-$messages_SponsoredMessages = $MadelineProto->channels->getSponsoredMessages(channel: $InputChannel, );
+$messages_SponsoredMessages = $MadelineProto->messages->getSponsoredMessages(peer: $InputPeer, );
```
diff --git a/docs/API_docs/methods/channels.reportSponsoredMessage.md b/docs/API_docs/methods/messages.reportSponsoredMessage.md
similarity index 62%
rename from docs/API_docs/methods/channels.reportSponsoredMessage.md
rename to docs/API_docs/methods/messages.reportSponsoredMessage.md
index 09072ed728..39aa866b52 100644
--- a/docs/API_docs/methods/channels.reportSponsoredMessage.md
+++ b/docs/API_docs/methods/messages.reportSponsoredMessage.md
@@ -1,12 +1,12 @@
---
-title: "channels.reportSponsoredMessage"
-description: "channels.reportSponsoredMessage parameters, return type and example"
+title: "messages.reportSponsoredMessage"
+description: "messages.reportSponsoredMessage parameters, return type and example"
grand_parent: "Telegram RPC API"
parent: "Methods"
image: https://docs.madelineproto.xyz/favicons/android-chrome-256x256.png
-redirect_from: /API_docs/methods/channels_reportSponsoredMessage.html
+redirect_from: /API_docs/methods/messages_reportSponsoredMessage.html
---
-# Method: channels.reportSponsoredMessage
+# Method: messages.reportSponsoredMessage
[Back to methods index](index.html)
@@ -15,13 +15,13 @@ redirect_from: /API_docs/methods/channels_reportSponsoredMessage.html
| Name | Type | Required |
|----------|---------------|----------|
-|channel|[Username, chat ID, Update, Message or InputChannel](/API_docs/types/InputChannel.html) | Optional|
+|peer|[Username, chat ID, Update, Message or InputPeer](/API_docs/types/InputPeer.html) | Optional|
|option|[bytes](/API_docs/types/bytes.html) | Yes|
### Return type: [channels.SponsoredMessageReportResult](/API_docs/types/channels.SponsoredMessageReportResult.html)
-### Can bots use this method: **NO**
+### Can bots use this method: **YES**
### MadelineProto Example ([now async for huge speed and parallelism!](https://docs.madelineproto.xyz/docs/ASYNC.html)):
@@ -36,6 +36,6 @@ include 'madeline.php';
$MadelineProto = new \danog\MadelineProto\API('session.madeline');
$MadelineProto->start();
-$channels_SponsoredMessageReportResult = $MadelineProto->channels->reportSponsoredMessage(channel: $InputChannel, option: 'bytes', );
+$channels_SponsoredMessageReportResult = $MadelineProto->messages->reportSponsoredMessage(peer: $InputPeer, option: 'bytes', );
```
diff --git a/docs/API_docs/methods/messages.sendMedia.md b/docs/API_docs/methods/messages.sendMedia.md
index 1086334d47..177856d3d2 100644
--- a/docs/API_docs/methods/messages.sendMedia.md
+++ b/docs/API_docs/methods/messages.sendMedia.md
@@ -23,6 +23,7 @@ Send a media
|noforwards|[Bool](/API_docs/types/Bool.html) | Only for bots, disallows forwarding and saving of the messages, even if the destination chat doesn't have [content protection](https://telegram.org/blog/protected-content-delete-by-date-and-more) enabled | Optional|
|update\_stickersets\_order|[Bool](/API_docs/types/Bool.html) | Whether to move used stickersets to top, [see here for more info on this flag »](https://core.telegram.org/api/stickers#recent-stickersets) | Optional|
|invert\_media|[Bool](/API_docs/types/Bool.html) | If set, any eventual webpage preview will be shown on top of the message instead of at the bottom. | Optional|
+|allow\_paid\_floodskip|[Bool](/API_docs/types/Bool.html) | | Optional|
|peer|[Username, chat ID, Update, Message or InputPeer](/API_docs/types/InputPeer.html) | Destination | Optional|
|reply\_to|[InputReplyTo](/API_docs/types/InputReplyTo.html) | If set, indicates that the message should be sent in reply to the specified message or story. | Optional|
|media|[MessageMedia, Update, Message or InputMedia](/API_docs/types/InputMedia.html) | Attached media | Optional|
@@ -53,7 +54,7 @@ include 'madeline.php';
$MadelineProto = new \danog\MadelineProto\API('session.madeline');
$MadelineProto->start();
-$Updates = $MadelineProto->messages->sendMedia(silent: $Bool, background: $Bool, clear_draft: $Bool, noforwards: $Bool, update_stickersets_order: $Bool, invert_media: $Bool, peer: $InputPeer, reply_to: $InputReplyTo, media: $InputMedia, message: 'string', reply_markup: $ReplyMarkup, entities: [$MessageEntity, $MessageEntity], parse_mode: 'string', schedule_date: $int, send_as: $InputPeer, quick_reply_shortcut: $InputQuickReplyShortcut, effect: $long, );
+$Updates = $MadelineProto->messages->sendMedia(silent: $Bool, background: $Bool, clear_draft: $Bool, noforwards: $Bool, update_stickersets_order: $Bool, invert_media: $Bool, allow_paid_floodskip: $Bool, peer: $InputPeer, reply_to: $InputReplyTo, media: $InputMedia, message: 'string', reply_markup: $ReplyMarkup, entities: [$MessageEntity, $MessageEntity], parse_mode: 'string', schedule_date: $int, send_as: $InputPeer, quick_reply_shortcut: $InputQuickReplyShortcut, effect: $long, );
```
diff --git a/docs/API_docs/methods/messages.sendMessage.md b/docs/API_docs/methods/messages.sendMessage.md
index 9e843baccf..0e1faf05c9 100644
--- a/docs/API_docs/methods/messages.sendMessage.md
+++ b/docs/API_docs/methods/messages.sendMessage.md
@@ -24,6 +24,7 @@ Sends a message to a chat
|noforwards|[Bool](/API_docs/types/Bool.html) | Only for bots, disallows forwarding and saving of the messages, even if the destination chat doesn't have [content protection](https://telegram.org/blog/protected-content-delete-by-date-and-more) enabled | Optional|
|update\_stickersets\_order|[Bool](/API_docs/types/Bool.html) | Whether to move used stickersets to top, [see here for more info on this flag »](https://core.telegram.org/api/stickers#recent-stickersets) | Optional|
|invert\_media|[Bool](/API_docs/types/Bool.html) | If set, any eventual webpage preview will be shown on top of the message instead of at the bottom. | Optional|
+|allow\_paid\_floodskip|[Bool](/API_docs/types/Bool.html) | | Optional|
|peer|[Username, chat ID, Update, Message or InputPeer](/API_docs/types/InputPeer.html) | The destination where the message will be sent | Optional|
|reply\_to|[InputReplyTo](/API_docs/types/InputReplyTo.html) | If set, indicates that the message should be sent in reply to the specified message or story. | Optional|
|message|[string](/API_docs/types/string.html) | The message | Optional|
@@ -53,7 +54,7 @@ include 'madeline.php';
$MadelineProto = new \danog\MadelineProto\API('session.madeline');
$MadelineProto->start();
-$Updates = $MadelineProto->messages->sendMessage(no_webpage: $Bool, silent: $Bool, background: $Bool, clear_draft: $Bool, noforwards: $Bool, update_stickersets_order: $Bool, invert_media: $Bool, peer: $InputPeer, reply_to: $InputReplyTo, message: 'string', reply_markup: $ReplyMarkup, entities: [$MessageEntity, $MessageEntity], parse_mode: 'string', schedule_date: $int, send_as: $InputPeer, quick_reply_shortcut: $InputQuickReplyShortcut, effect: $long, );
+$Updates = $MadelineProto->messages->sendMessage(no_webpage: $Bool, silent: $Bool, background: $Bool, clear_draft: $Bool, noforwards: $Bool, update_stickersets_order: $Bool, invert_media: $Bool, allow_paid_floodskip: $Bool, peer: $InputPeer, reply_to: $InputReplyTo, message: 'string', reply_markup: $ReplyMarkup, entities: [$MessageEntity, $MessageEntity], parse_mode: 'string', schedule_date: $int, send_as: $InputPeer, quick_reply_shortcut: $InputQuickReplyShortcut, effect: $long, );
```
diff --git a/docs/API_docs/methods/messages.sendMultiMedia.md b/docs/API_docs/methods/messages.sendMultiMedia.md
index 11d87bb07a..b29b86a49d 100644
--- a/docs/API_docs/methods/messages.sendMultiMedia.md
+++ b/docs/API_docs/methods/messages.sendMultiMedia.md
@@ -23,6 +23,7 @@ Send an [album or grouped media](https://core.telegram.org/api/files#albums-grou
|noforwards|[Bool](/API_docs/types/Bool.html) | Only for bots, disallows forwarding and saving of the messages, even if the destination chat doesn't have [content protection](https://telegram.org/blog/protected-content-delete-by-date-and-more) enabled | Optional|
|update\_stickersets\_order|[Bool](/API_docs/types/Bool.html) | Whether to move used stickersets to top, [see here for more info on this flag »](https://core.telegram.org/api/stickers#recent-stickersets) | Optional|
|invert\_media|[Bool](/API_docs/types/Bool.html) | If set, any eventual webpage preview will be shown on top of the message instead of at the bottom. | Optional|
+|allow\_paid\_floodskip|[Bool](/API_docs/types/Bool.html) | | Optional|
|peer|[Username, chat ID, Update, Message or InputPeer](/API_docs/types/InputPeer.html) | The destination chat | Optional|
|reply\_to|[InputReplyTo](/API_docs/types/InputReplyTo.html) | If set, indicates that the message should be sent in reply to the specified message or story. | Optional|
|multi\_media|Array of [InputSingleMedia](/API_docs/types/InputSingleMedia.html) | The medias to send | Yes|
@@ -49,6 +50,6 @@ include 'madeline.php';
$MadelineProto = new \danog\MadelineProto\API('session.madeline');
$MadelineProto->start();
-$Updates = $MadelineProto->messages->sendMultiMedia(silent: $Bool, background: $Bool, clear_draft: $Bool, noforwards: $Bool, update_stickersets_order: $Bool, invert_media: $Bool, peer: $InputPeer, reply_to: $InputReplyTo, multi_media: [$InputSingleMedia, $InputSingleMedia], schedule_date: $int, send_as: $InputPeer, quick_reply_shortcut: $InputQuickReplyShortcut, effect: $long, );
+$Updates = $MadelineProto->messages->sendMultiMedia(silent: $Bool, background: $Bool, clear_draft: $Bool, noforwards: $Bool, update_stickersets_order: $Bool, invert_media: $Bool, allow_paid_floodskip: $Bool, peer: $InputPeer, reply_to: $InputReplyTo, multi_media: [$InputSingleMedia, $InputSingleMedia], schedule_date: $int, send_as: $InputPeer, quick_reply_shortcut: $InputQuickReplyShortcut, effect: $long, );
```
diff --git a/docs/API_docs/methods/channels.viewSponsoredMessage.md b/docs/API_docs/methods/messages.viewSponsoredMessage.md
similarity index 51%
rename from docs/API_docs/methods/channels.viewSponsoredMessage.md
rename to docs/API_docs/methods/messages.viewSponsoredMessage.md
index 10f8f1b726..6fe863b067 100644
--- a/docs/API_docs/methods/channels.viewSponsoredMessage.md
+++ b/docs/API_docs/methods/messages.viewSponsoredMessage.md
@@ -1,28 +1,26 @@
---
-title: "channels.viewSponsoredMessage"
-description: "Mark a specific sponsored message as read"
+title: "messages.viewSponsoredMessage"
+description: "messages.viewSponsoredMessage parameters, return type and example"
grand_parent: "Telegram RPC API"
parent: "Methods"
image: https://docs.madelineproto.xyz/favicons/android-chrome-256x256.png
-redirect_from: /API_docs/methods/channels_viewSponsoredMessage.html
+redirect_from: /API_docs/methods/messages_viewSponsoredMessage.html
---
-# Method: channels.viewSponsoredMessage
+# Method: messages.viewSponsoredMessage
[Back to methods index](index.html)
-Mark a specific sponsored message as read
-
### Parameters:
-| Name | Type | Description | Required |
-|----------|---------------|-------------|----------|
-|channel|[Username, chat ID, Update, Message or InputChannel](/API_docs/types/InputChannel.html) | Peer | Optional|
+| Name | Type | Required |
+|----------|---------------|----------|
+|peer|[Username, chat ID, Update, Message or InputPeer](/API_docs/types/InputPeer.html) | Optional|
### Return type: [Bool](/API_docs/types/Bool.html)
-### Can bots use this method: **NO**
+### Can bots use this method: **YES**
### MadelineProto Example ([now async for huge speed and parallelism!](https://docs.madelineproto.xyz/docs/ASYNC.html)):
@@ -37,6 +35,6 @@ include 'madeline.php';
$MadelineProto = new \danog\MadelineProto\API('session.madeline');
$MadelineProto->start();
-$Bool = $MadelineProto->channels->viewSponsoredMessage(channel: $InputChannel, );
+$Bool = $MadelineProto->messages->viewSponsoredMessage(peer: $InputPeer, );
```
diff --git a/docs/API_docs/methods/stats.getBroadcastRevenueStats.md b/docs/API_docs/methods/stats.getBroadcastRevenueStats.md
index 615df4d464..3d2fbf8967 100644
--- a/docs/API_docs/methods/stats.getBroadcastRevenueStats.md
+++ b/docs/API_docs/methods/stats.getBroadcastRevenueStats.md
@@ -16,7 +16,7 @@ redirect_from: /API_docs/methods/stats_getBroadcastRevenueStats.html
| Name | Type | Required |
|----------|---------------|----------|
|dark|[Bool](/API_docs/types/Bool.html) | Optional|
-|channel|[Username, chat ID, Update, Message or InputChannel](/API_docs/types/InputChannel.html) | Optional|
+|peer|[Username, chat ID, Update, Message or InputPeer](/API_docs/types/InputPeer.html) | Optional|
### Return type: [stats.BroadcastRevenueStats](/API_docs/types/stats.BroadcastRevenueStats.html)
@@ -36,6 +36,6 @@ include 'madeline.php';
$MadelineProto = new \danog\MadelineProto\API('session.madeline');
$MadelineProto->start();
-$stats_BroadcastRevenueStats = $MadelineProto->stats->getBroadcastRevenueStats(dark: $Bool, channel: $InputChannel, );
+$stats_BroadcastRevenueStats = $MadelineProto->stats->getBroadcastRevenueStats(dark: $Bool, peer: $InputPeer, );
```
diff --git a/docs/API_docs/methods/stats.getBroadcastRevenueTransactions.md b/docs/API_docs/methods/stats.getBroadcastRevenueTransactions.md
index 01213aa9ab..1a424bde05 100644
--- a/docs/API_docs/methods/stats.getBroadcastRevenueTransactions.md
+++ b/docs/API_docs/methods/stats.getBroadcastRevenueTransactions.md
@@ -15,7 +15,7 @@ redirect_from: /API_docs/methods/stats_getBroadcastRevenueTransactions.html
| Name | Type | Required |
|----------|---------------|----------|
-|channel|[Username, chat ID, Update, Message or InputChannel](/API_docs/types/InputChannel.html) | Optional|
+|peer|[Username, chat ID, Update, Message or InputPeer](/API_docs/types/InputPeer.html) | Optional|
|offset|[int](/API_docs/types/int.html) | Optional|
|limit|[int](/API_docs/types/int.html) | Optional|
@@ -37,6 +37,6 @@ include 'madeline.php';
$MadelineProto = new \danog\MadelineProto\API('session.madeline');
$MadelineProto->start();
-$stats_BroadcastRevenueTransactions = $MadelineProto->stats->getBroadcastRevenueTransactions(channel: $InputChannel, offset: $int, limit: $int, );
+$stats_BroadcastRevenueTransactions = $MadelineProto->stats->getBroadcastRevenueTransactions(peer: $InputPeer, offset: $int, limit: $int, );
```
diff --git a/docs/API_docs/methods/stats.getBroadcastRevenueWithdrawalUrl.md b/docs/API_docs/methods/stats.getBroadcastRevenueWithdrawalUrl.md
index aee01b6cbe..6e69db3129 100644
--- a/docs/API_docs/methods/stats.getBroadcastRevenueWithdrawalUrl.md
+++ b/docs/API_docs/methods/stats.getBroadcastRevenueWithdrawalUrl.md
@@ -15,7 +15,7 @@ redirect_from: /API_docs/methods/stats_getBroadcastRevenueWithdrawalUrl.html
| Name | Type | Required |
|----------|---------------|----------|
-|channel|[Username, chat ID, Update, Message or InputChannel](/API_docs/types/InputChannel.html) | Optional|
+|peer|[Username, chat ID, Update, Message or InputPeer](/API_docs/types/InputPeer.html) | Optional|
|password|[InputCheckPasswordSRP](/API_docs/types/InputCheckPasswordSRP.html) | Yes|
@@ -36,6 +36,6 @@ include 'madeline.php';
$MadelineProto = new \danog\MadelineProto\API('session.madeline');
$MadelineProto->start();
-$stats_BroadcastRevenueWithdrawalUrl = $MadelineProto->stats->getBroadcastRevenueWithdrawalUrl(channel: $InputChannel, password: $InputCheckPasswordSRP, );
+$stats_BroadcastRevenueWithdrawalUrl = $MadelineProto->stats->getBroadcastRevenueWithdrawalUrl(peer: $InputPeer, password: $InputCheckPasswordSRP, );
```
diff --git a/docs/API_docs/methods/stories.searchPosts.md b/docs/API_docs/methods/stories.searchPosts.md
index 0ca44c22b9..9f14e50f3f 100644
--- a/docs/API_docs/methods/stories.searchPosts.md
+++ b/docs/API_docs/methods/stories.searchPosts.md
@@ -17,6 +17,7 @@ redirect_from: /API_docs/methods/stories_searchPosts.html
|----------|---------------|----------|
|hashtag|[string](/API_docs/types/string.html) | Optional|
|area|[MediaArea](/API_docs/types/MediaArea.html) | Optional|
+|peer|[Username, chat ID, Update, Message or InputPeer](/API_docs/types/InputPeer.html) | Optional|
|offset|[string](/API_docs/types/string.html) | Optional|
|limit|[int](/API_docs/types/int.html) | Optional|
@@ -38,6 +39,6 @@ include 'madeline.php';
$MadelineProto = new \danog\MadelineProto\API('session.madeline');
$MadelineProto->start();
-$stories_FoundStories = $MadelineProto->stories->searchPosts(hashtag: 'string', area: $MediaArea, offset: 'string', limit: $int, );
+$stories_FoundStories = $MadelineProto->stories->searchPosts(hashtag: 'string', area: $MediaArea, peer: $InputPeer, offset: 'string', limit: $int, );
```
diff --git a/docs/API_docs/types/StarsTransactionPeer.md b/docs/API_docs/types/StarsTransactionPeer.md
index b6b29ca9e0..fa484e7de8 100644
--- a/docs/API_docs/types/StarsTransactionPeer.md
+++ b/docs/API_docs/types/StarsTransactionPeer.md
@@ -25,6 +25,8 @@ image: https://docs.madelineproto.xyz/favicons/android-chrome-256x256.png
[starsTransactionPeerAds](/API_docs/constructors/starsTransactionPeerAds.html)
+[starsTransactionPeerAPI](/API_docs/constructors/starsTransactionPeerAPI.html)
+
### Methods that return an object of this type (methods):
diff --git a/docs/API_docs/types/channels.SponsoredMessageReportResult.md b/docs/API_docs/types/channels.SponsoredMessageReportResult.md
index e9169be7af..dd68524ddf 100644
--- a/docs/API_docs/types/channels.SponsoredMessageReportResult.md
+++ b/docs/API_docs/types/channels.SponsoredMessageReportResult.md
@@ -22,7 +22,7 @@ redirect_from: /API_docs/types/channels_SponsoredMessageReportResult.html
### Methods that return an object of this type (methods):
-[$MadelineProto->channels->reportSponsoredMessage](/API_docs/methods/channels.reportSponsoredMessage.html)
+[$MadelineProto->messages->reportSponsoredMessage](/API_docs/methods/messages.reportSponsoredMessage.html)
diff --git a/docs/API_docs/types/messages.SponsoredMessages.md b/docs/API_docs/types/messages.SponsoredMessages.md
index 95005efed0..c697900500 100644
--- a/docs/API_docs/types/messages.SponsoredMessages.md
+++ b/docs/API_docs/types/messages.SponsoredMessages.md
@@ -20,7 +20,7 @@ redirect_from: /API_docs/types/messages_SponsoredMessages.html
### Methods that return an object of this type (methods):
-[$MadelineProto->channels->getSponsoredMessages](/API_docs/methods/channels.getSponsoredMessages.html)
+[$MadelineProto->messages->getSponsoredMessages](/API_docs/methods/messages.getSponsoredMessages.html)
diff --git a/docs/docs/USING_METHODS.md b/docs/docs/USING_METHODS.md
index a4d3debf33..3e4c1d6ff7 100644
--- a/docs/docs/USING_METHODS.md
+++ b/docs/docs/USING_METHODS.md
@@ -8,7 +8,7 @@ image: https://docs.madelineproto.xyz/favicons/android-chrome-256x256.png
There are simplifications for many, if not all of, these methods.
-A list of all of the methods that can be called with MadelineProto can be found here: [here (layer 190)](https://docs.madelineproto.xyz/API_docs/).
+A list of all of the methods that can be called with MadelineProto can be found here: [here (layer 192)](https://docs.madelineproto.xyz/API_docs/).
[Now fully async!](https://docs.madelineproto.xyz/docs/ASYNC.html)
diff --git a/docs/index.md b/docs/index.md
index 737b3eccbd..4220f78851 100644
--- a/docs/index.md
+++ b/docs/index.md
@@ -575,7 +575,6 @@ Some of MadelineProto's core components are also available as separate, standalo
* Get a list of default suggested channel emoji statuses: account.getChannelDefaultEmojiStatuses
* Get a list of default suggested emoji statuses: account.getDefaultEmojiStatuses
* Get a list of peers that can be used to join a group call, presenting yourself as a specific user/channel: phone.getGroupCallJoinAs
- * Get a list of sponsored messages: channels.getSponsoredMessages
* Get a message to show to the user when starting the bot: getWebMessage
* Get a payment form: payments.getPaymentForm
* Get a set of suggested custom emoji stickers that can be used as group picture: account.getDefaultGroupPhotoEmojis
@@ -753,7 +752,6 @@ Some of MadelineProto's core components are also available as separate, standalo
* Informs server about a purchase made through the App Store: for official applications only: payments.assignAppStoreTransaction
* Informs server about a purchase made through the Play Store: for official applications only: payments.assignPlayMarketTransaction
* Informs the server about the number of pending bot updates if they haven't been processed for a long time; for bots only: help.setBotUpdatesStatus
- * Informs the server that the user has either:: channels.clickSponsoredMessage
* Initialize a takeout session, see here » for more info: account.initTakeoutSession
* Initialize connection: initConnection
* Initialize self-restart hack: initSelfRestart
@@ -800,7 +798,6 @@ Some of MadelineProto's core components are also available as separate, standalo
* Manually convert HTML to a message and a set of entities: htmlToMessageEntities
* Manually convert markdown to a message and a set of entities: markdownToMessageEntities
* Manually mark dialog as unread: messages.markDialogUnread
- * Mark a specific sponsored message as read: channels.viewSponsoredMessage
* Mark a thread as read: messages.readDiscussion
* Mark all stories up to a certain ID as read, for a given peer; will emit an updateReadStories update to all logged-in sessions: stories.readStories
* Mark channel/supergroup history as read: channels.readHistory
@@ -1128,7 +1125,6 @@ Some of MadelineProto's core components are also available as separate, standalo
* bots.getPreviewInfo
* bots.getPreviewMedias
* bots.reorderPreviewMedias
- * channels.reportSponsoredMessage
* channels.restrictSponsoredMessages
* channels.searchPosts
* channels.setBoostsToUnblockRestrictions
@@ -1140,6 +1136,7 @@ Some of MadelineProto's core components are also available as separate, standalo
* invokeWithBusinessConnection
* invokeWithGooglePlayIntegrity
* messages.checkQuickReplyShortcut
+ * messages.clickSponsoredMessage
* messages.deleteFactCheck
* messages.deleteQuickReplyMessages
* messages.deleteQuickReplyShortcut
@@ -1155,13 +1152,16 @@ Some of MadelineProto's core components are also available as separate, standalo
* messages.getQuickReplies
* messages.getQuickReplyMessages
* messages.getSavedReactionTags
+ * messages.getSponsoredMessages
* messages.reorderQuickReplies
+ * messages.reportSponsoredMessage
* messages.requestMainWebView
* messages.sendPaidReaction
* messages.sendQuickReplyMessages
* messages.toggleDialogFilterTags
* messages.togglePaidReactionPrivacy
* messages.updateSavedReactionTag
+ * messages.viewSponsoredMessage
* null-byte RLE decode: rleDecode
* null-byte RLE encode: rleEncode
* payments.changeStarsSubscription