messages.SendMedia

class pyrogram.raw.functions.messages.SendMedia

Send a media

Details:
  • Layer: 227

  • ID: 330E77F

Parameters:
  • peer (InputPeer) – Destination

  • media (InputMedia) – Attached media

  • message (str) – Caption

  • random_id (int 64-bit) – Random ID to avoid resending the same message

  • silent (bool, optional) – Send message silently (no notification should be triggered)

  • background (bool, optional) – Send message in background

  • clear_draft (bool, optional) – Clear the draft

  • noforwards (bool, optional) – Only for bots, disallows forwarding and saving of the messages, even if the destination chat doesn’t have content protection enabled

  • update_stickersets_order (bool, optional) – Whether to move used stickersets to top, see here for more info on this flag »

  • invert_media (bool, optional) – If set, any eventual webpage preview will be shown on top of the message instead of at the bottom.

  • allow_paid_floodskip (bool, optional) – Bots only: if set, allows sending up to 1000 messages per second, ignoring broadcasting limits for a fee of 0.1 Telegram Stars per message. The relevant Stars will be withdrawn from the bot’s balance.

  • reply_to (InputReplyTo, optional) – If set, indicates that the message should be sent in reply to the specified message or story.

  • reply_markup (ReplyMarkup, optional) – Reply markup for bot keyboards

  • entities (List of MessageEntity, optional) – Message entities for styled text

  • schedule_date (int 32-bit, optional) – Scheduled message date for scheduled messages

  • schedule_repeat_period (int 32-bit, optional)

  • send_as (InputPeer, optional) – Send this message as the specified peer

  • quick_reply_shortcut (InputQuickReplyShortcut, optional) – Add the message to the specified quick reply shortcut », instead.

  • effect (int 64-bit, optional) – Specifies a message effect » to use for the message.

  • allow_paid_stars (int 64-bit, optional) – For paid messages », specifies the amount of Telegram Stars the user has agreed to pay in order to send the message.

  • suggested_post (SuggestedPost, optional) – Used to suggest a post to a channel, see here » for more info on the full flow.

Returns:

Updates

TL Schema

messages.sendMedia#330e77f
flags:#
silent:flags.5?true
background:flags.6?true
clear_draft:flags.7?true
noforwards:flags.14?true
update_stickersets_order:flags.15?true
invert_media:flags.16?true
allow_paid_floodskip:flags.19?true
peer:InputPeer
reply_to:flags.0?InputReplyTo
media:InputMedia
message:string
random_id:long
reply_markup:flags.2?ReplyMarkup
entities:flags.3?Vector<MessageEntity>
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
allow_paid_stars:flags.21?long
suggested_post:flags.22?SuggestedPost

= Updates

Parameter Tree

SendMedia
├── silent → true (optional)
├── background → true (optional)
├── clear_draft → true (optional)
├── noforwards → true (optional)
├── update_stickersets_order → true (optional)
├── invert_media → true (optional)
├── allow_paid_floodskip → true (optional)
├── peer → InputPeer
│ ├── InputPeerEmpty
│ ├── InputPeerSelf
│ ├── InputPeerChat
│ │ └── chat_id → long
│ ├── InputPeerUser
│ │ ├── user_id → long
│ │ └── access_hash → long
│ ├── InputPeerChannel
│ │ ├── channel_id → long
│ │ └── access_hash → long
│ │ ├── peer → InputPeer
│ │ │ ├── InputPeerEmpty
│ │ │ ├── InputPeerSelf
│ │ │ ├── InputPeerChat
│ │ │ ├── InputPeerUser
│ │ │ ├── InputPeerChannel
│ │ │ ├── InputPeerUserFromMessage
│ │ │ └── InputPeerChannelFromMessage
│ │ ├── msg_id → int
│ │ └── user_id → long
│ ├── peer → InputPeer
│ │ ├── InputPeerEmpty
│ │ ├── InputPeerSelf
│ │ ├── InputPeerChat
│ │ ├── InputPeerUser
│ │ ├── InputPeerChannel
│ │ ├── InputPeerUserFromMessage
│ │ └── InputPeerChannelFromMessage
│ ├── msg_id → int
│ └── channel_id → long
├── reply_to → InputReplyTo (optional)
│ ├── InputReplyToMessage
│ │ ├── reply_to_msg_id → int
│ │ ├── top_msg_id → int (optional)
│ │ ├── reply_to_peer_id → InputPeer (optional)
│ │ │ ├── InputPeerEmpty
│ │ │ ├── InputPeerSelf
│ │ │ ├── InputPeerChat
│ │ │ ├── InputPeerUser
│ │ │ ├── InputPeerChannel
│ │ │ ├── InputPeerUserFromMessage
│ │ │ └── InputPeerChannelFromMessage
│ │ ├── quote_text → string (optional)
│ │ ├── quote_entities → Vector < MessageEntity > (optional)
│ │ │ ├── MessageEntityUnknown
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntityMention
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntityHashtag
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntityBotCommand
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntityUrl
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntityEmail
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntityBold
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntityItalic
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntityCode
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntityPre
│ │ │ │ ├── offset → int
│ │ │ │ ├── length → int
│ │ │ │ └── language → string
│ │ │ ├── MessageEntityTextUrl
│ │ │ │ ├── offset → int
│ │ │ │ ├── length → int
│ │ │ │ └── url → string
│ │ │ ├── MessageEntityMentionName
│ │ │ │ ├── offset → int
│ │ │ │ ├── length → int
│ │ │ │ └── user_id → long
│ │ │ ├── InputMessageEntityMentionName
│ │ │ │ ├── offset → int
│ │ │ │ ├── length → int
│ │ │ │ └── user_id → InputUser
│ │ │ │ ├── InputUserEmpty
│ │ │ │ ├── InputUserSelf
│ │ │ │ ├── InputUser
│ │ │ │ └── InputUserFromMessage
│ │ │ ├── MessageEntityPhone
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntityCashtag
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntityUnderline
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntityStrike
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntityBankCard
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntitySpoiler
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntityCustomEmoji
│ │ │ │ ├── offset → int
│ │ │ │ ├── length → int
│ │ │ │ └── document_id → long
│ │ │ ├── MessageEntityBlockquote
│ │ │ │ ├── collapsed → true (optional)
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntityFormattedDate
│ │ │ │ ├── relative → true (optional)
│ │ │ │ ├── short_time → true (optional)
│ │ │ │ ├── long_time → true (optional)
│ │ │ │ ├── short_date → true (optional)
│ │ │ │ ├── long_date → true (optional)
│ │ │ │ ├── day_of_week → true (optional)
│ │ │ │ ├── offset → int
│ │ │ │ ├── length → int
│ │ │ │ └── date → int
│ │ │ ├── MessageEntityDiffInsert
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntityDiffReplace
│ │ │ │ ├── offset → int
│ │ │ │ ├── length → int
│ │ │ │ └── old_text → string
│ │ │ └── MessageEntityDiffDelete
│ │ │ ├── offset → int
│ │ │ └── length → int
│ │ ├── quote_offset → int (optional)
│ │ ├── monoforum_peer_id → InputPeer (optional)
│ │ │ ├── InputPeerEmpty
│ │ │ ├── InputPeerSelf
│ │ │ ├── InputPeerChat
│ │ │ ├── InputPeerUser
│ │ │ ├── InputPeerChannel
│ │ │ ├── InputPeerUserFromMessage
│ │ │ └── InputPeerChannelFromMessage
│ │ ├── todo_item_id → int (optional)
│ │ └── poll_option → bytes (optional)
│ ├── InputReplyToStory
│ │ ├── peer → InputPeer
│ │ │ ├── InputPeerEmpty
│ │ │ ├── InputPeerSelf
│ │ │ ├── InputPeerChat
│ │ │ ├── InputPeerUser
│ │ │ ├── InputPeerChannel
│ │ │ ├── InputPeerUserFromMessage
│ │ │ └── InputPeerChannelFromMessage
│ │ └── story_id → int
│ └── InputReplyToMonoForum
│ └── monoforum_peer_id → InputPeer
│ ├── InputPeerEmpty
│ ├── InputPeerSelf
│ ├── InputPeerChat
│ ├── InputPeerUser
│ ├── InputPeerChannel
├── media → InputMedia
│ ├── InputMediaEmpty
│ │ ├── spoiler → true (optional)
│ │ ├── live_photo → true (optional)
│ │ ├── file → InputFile
│ │ │ ├── InputFile
│ │ │ ├── InputFileBig
│ │ │ └── InputFileStoryDocument
│ │ ├── stickers → Vector < InputDocument > (optional)
│ │ │ ├── InputDocumentEmpty
│ │ │ └── InputDocument
│ │ │ ├── id → long
│ │ │ ├── access_hash → long
│ │ │ └── file_reference → bytes
│ │ ├── ttl_seconds → int (optional)
│ │ └── video → InputDocument (optional)
│ │ ├── InputDocumentEmpty
│ │ └── InputDocument
│ │ ├── id → long
│ │ ├── access_hash → long
│ │ └── file_reference → bytes
│ ├── InputMediaPhoto
│ │ ├── spoiler → true (optional)
│ │ ├── live_photo → true (optional)
│ │ ├── id → InputPhoto
│ │ │ ├── InputPhotoEmpty
│ │ │ └── InputPhoto
│ │ │ ├── id → long
│ │ │ ├── access_hash → long
│ │ │ └── file_reference → bytes
│ │ ├── ttl_seconds → int (optional)
│ │ └── video → InputDocument (optional)
│ │ ├── InputDocumentEmpty
│ │ └── InputDocument
│ │ ├── id → long
│ │ ├── access_hash → long
│ │ └── file_reference → bytes
│ ├── InputMediaGeoPoint
│ │ └── geo_point → InputGeoPoint
│ │ ├── InputGeoPointEmpty
│ │ └── InputGeoPoint
│ │ ├── lat → double
│ │ ├── long → double
│ │ └── accuracy_radius → int (optional)
│ ├── InputMediaContact
│ │ ├── phone_number → string
│ │ ├── first_name → string
│ │ ├── last_name → string
│ │ └── vcard → string
│ │ ├── nosound_video → true (optional)
│ │ ├── force_file → true (optional)
│ │ ├── spoiler → true (optional)
│ │ ├── file → InputFile
│ │ │ ├── InputFile
│ │ │ ├── InputFileBig
│ │ │ └── InputFileStoryDocument
│ │ ├── thumb → InputFile (optional)
│ │ │ ├── InputFile
│ │ │ ├── InputFileBig
│ │ │ └── InputFileStoryDocument
│ │ ├── mime_type → string
│ │ ├── attributes → Vector < DocumentAttribute >
│ │ │ ├── DocumentAttributeImageSize
│ │ │ │ ├── w → int
│ │ │ │ └── h → int
│ │ │ ├── DocumentAttributeAnimated
│ │ │ ├── DocumentAttributeSticker
│ │ │ │ ├── mask → true (optional)
│ │ │ │ ├── alt → string
│ │ │ │ ├── stickerset → InputStickerSet
│ │ │ │ │ ├── InputStickerSetEmpty
│ │ │ │ │ ├── InputStickerSetID
│ │ │ │ │ ├── InputStickerSetShortName
│ │ │ │ │ ├── InputStickerSetAnimatedEmoji
│ │ │ │ │ ├── InputStickerSetDice
│ │ │ │ │ ├── InputStickerSetAnimatedEmojiAnimations
│ │ │ │ │ ├── InputStickerSetPremiumGifts
│ │ │ │ │ ├── InputStickerSetEmojiGenericAnimations
│ │ │ │ │ ├── InputStickerSetEmojiDefaultStatuses
│ │ │ │ │ ├── InputStickerSetEmojiDefaultTopicIcons
│ │ │ │ │ ├── InputStickerSetEmojiChannelDefaultStatuses
│ │ │ │ │ └── InputStickerSetTonGifts
│ │ │ │ └── mask_coords → MaskCoords (optional)
│ │ │ │ └── MaskCoords
│ │ │ ├── DocumentAttributeVideo
│ │ │ │ ├── round_message → true (optional)
│ │ │ │ ├── supports_streaming → true (optional)
│ │ │ │ ├── nosound → true (optional)
│ │ │ │ ├── duration → double
│ │ │ │ ├── w → int
│ │ │ │ ├── h → int
│ │ │ │ ├── preload_prefix_size → int (optional)
│ │ │ │ ├── video_start_ts → double (optional)
│ │ │ │ └── video_codec → string (optional)
│ │ │ ├── DocumentAttributeAudio
│ │ │ │ ├── voice → true (optional)
│ │ │ │ ├── duration → int
│ │ │ │ ├── title → string (optional)
│ │ │ │ ├── performer → string (optional)
│ │ │ │ └── waveform → bytes (optional)
│ │ │ ├── DocumentAttributeFilename
│ │ │ │ └── file_name → string
│ │ │ ├── DocumentAttributeHasStickers
│ │ │ └── DocumentAttributeCustomEmoji
│ │ │ ├── free → true (optional)
│ │ │ ├── text_color → true (optional)
│ │ │ ├── alt → string
│ │ │ └── stickerset → InputStickerSet
│ │ │ ├── InputStickerSetEmpty
│ │ │ ├── InputStickerSetID
│ │ │ ├── InputStickerSetShortName
│ │ │ ├── InputStickerSetAnimatedEmoji
│ │ │ ├── InputStickerSetDice
│ │ │ ├── InputStickerSetPremiumGifts
│ │ │ └── InputStickerSetTonGifts
│ │ ├── stickers → Vector < InputDocument > (optional)
│ │ │ ├── InputDocumentEmpty
│ │ │ └── InputDocument
│ │ │ ├── id → long
│ │ │ ├── access_hash → long
│ │ │ └── file_reference → bytes
│ │ ├── video_cover → InputPhoto (optional)
│ │ │ ├── InputPhotoEmpty
│ │ │ └── InputPhoto
│ │ │ ├── id → long
│ │ │ ├── access_hash → long
│ │ │ └── file_reference → bytes
│ │ ├── video_timestamp → int (optional)
│ │ └── ttl_seconds → int (optional)
│ ├── InputMediaDocument
│ │ ├── spoiler → true (optional)
│ │ ├── id → InputDocument
│ │ │ ├── InputDocumentEmpty
│ │ │ └── InputDocument
│ │ │ ├── id → long
│ │ │ ├── access_hash → long
│ │ │ └── file_reference → bytes
│ │ ├── video_cover → InputPhoto (optional)
│ │ │ ├── InputPhotoEmpty
│ │ │ └── InputPhoto
│ │ │ ├── id → long
│ │ │ ├── access_hash → long
│ │ │ └── file_reference → bytes
│ │ ├── video_timestamp → int (optional)
│ │ ├── ttl_seconds → int (optional)
│ │ └── query → string (optional)
│ ├── InputMediaVenue
│ │ ├── geo_point → InputGeoPoint
│ │ │ ├── InputGeoPointEmpty
│ │ │ └── InputGeoPoint
│ │ │ ├── lat → double
│ │ │ ├── long → double
│ │ │ └── accuracy_radius → int (optional)
│ │ ├── title → string
│ │ ├── address → string
│ │ ├── provider → string
│ │ ├── venue_id → string
│ │ └── venue_type → string
│ │ ├── spoiler → true (optional)
│ │ ├── url → string
│ │ └── ttl_seconds → int (optional)
│ │ ├── spoiler → true (optional)
│ │ ├── url → string
│ │ ├── ttl_seconds → int (optional)
│ │ ├── video_cover → InputPhoto (optional)
│ │ │ ├── InputPhotoEmpty
│ │ │ └── InputPhoto
│ │ │ ├── id → long
│ │ │ ├── access_hash → long
│ │ │ └── file_reference → bytes
│ │ └── video_timestamp → int (optional)
│ ├── InputMediaGame
│ │ └── id → InputGame
│ │ ├── InputGameID
│ │ │ ├── id → long
│ │ │ └── access_hash → long
│ │ └── InputGameShortName
│ │ ├── bot_id → InputUser
│ │ │ ├── InputUserEmpty
│ │ │ ├── InputUserSelf
│ │ │ ├── InputUser
│ │ │ └── InputUserFromMessage
│ │ └── short_name → string
│ ├── InputMediaInvoice
│ │ ├── title → string
│ │ ├── description → string
│ │ ├── photo → InputWebDocument (optional)
│ │ │ └── InputWebDocument
│ │ │ ├── url → string
│ │ │ ├── size → int
│ │ │ ├── mime_type → string
│ │ │ └── attributes → Vector < DocumentAttribute >
│ │ │ ├── DocumentAttributeImageSize
│ │ │ ├── DocumentAttributeAnimated
│ │ │ ├── DocumentAttributeSticker
│ │ │ ├── DocumentAttributeVideo
│ │ │ ├── DocumentAttributeAudio
│ │ │ ├── DocumentAttributeFilename
│ │ │ ├── DocumentAttributeHasStickers
│ │ │ └── DocumentAttributeCustomEmoji
│ │ ├── invoice → Invoice
│ │ │ └── Invoice
│ │ │ ├── test → true (optional)
│ │ │ ├── name_requested → true (optional)
│ │ │ ├── phone_requested → true (optional)
│ │ │ ├── email_requested → true (optional)
│ │ │ ├── shipping_address_requested → true (optional)
│ │ │ ├── flexible → true (optional)
│ │ │ ├── phone_to_provider → true (optional)
│ │ │ ├── email_to_provider → true (optional)
│ │ │ ├── recurring → true (optional)
│ │ │ ├── currency → string
│ │ │ ├── prices → Vector < LabeledPrice >
│ │ │ │ └── LabeledPrice
│ │ │ ├── max_tip_amount → long (optional)
│ │ │ ├── suggested_tip_amounts → Vector < long > (optional)
│ │ │ ├── terms_url → string (optional)
│ │ │ └── subscription_period → int (optional)
│ │ ├── payload → bytes
│ │ ├── provider → string (optional)
│ │ ├── provider_data → DataJSON
│ │ │ └── DataJSON
│ │ │ └── data → string
│ │ ├── start_param → string (optional)
│ │ └── extended_media → InputMedia (optional)
│ │ ├── InputMediaEmpty
│ │ ├── InputMediaUploadedPhoto
│ │ ├── InputMediaPhoto
│ │ ├── InputMediaGeoPoint
│ │ ├── InputMediaContact
│ │ ├── InputMediaUploadedDocument
│ │ ├── InputMediaDocument
│ │ ├── InputMediaVenue
│ │ ├── InputMediaPhotoExternal
│ │ ├── InputMediaDocumentExternal
│ │ ├── InputMediaGame
│ │ ├── InputMediaInvoice
│ │ ├── InputMediaGeoLive
│ │ ├── InputMediaPoll
│ │ ├── InputMediaDice
│ │ ├── InputMediaStory
│ │ ├── InputMediaWebPage
│ │ ├── InputMediaPaidMedia
│ │ ├── InputMediaTodo
│ │ └── InputMediaStakeDice
│ ├── InputMediaGeoLive
│ │ ├── stopped → true (optional)
│ │ ├── geo_point → InputGeoPoint
│ │ │ ├── InputGeoPointEmpty
│ │ │ └── InputGeoPoint
│ │ │ ├── lat → double
│ │ │ ├── long → double
│ │ │ └── accuracy_radius → int (optional)
│ │ ├── heading → int (optional)
│ │ ├── period → int (optional)
│ │ └── proximity_notification_radius → int (optional)
│ ├── InputMediaPoll
│ │ ├── poll → Poll
│ │ │ └── Poll
│ │ │ ├── id → long
│ │ │ ├── closed → true (optional)
│ │ │ ├── public_voters → true (optional)
│ │ │ ├── multiple_choice → true (optional)
│ │ │ ├── quiz → true (optional)
│ │ │ ├── open_answers → true (optional)
│ │ │ ├── revoting_disabled → true (optional)
│ │ │ ├── shuffle_answers → true (optional)
│ │ │ ├── hide_results_until_close → true (optional)
│ │ │ ├── creator → true (optional)
│ │ │ ├── subscribers_only → true (optional)
│ │ │ ├── question → TextWithEntities
│ │ │ │ └── TextWithEntities
│ │ │ ├── answers → Vector < PollAnswer >
│ │ │ │ ├── PollAnswer
│ │ │ │ └── InputPollAnswer
│ │ │ ├── close_period → int (optional)
│ │ │ ├── close_date → int (optional)
│ │ │ ├── countries_iso2 → Vector < string > (optional)
│ │ │ └── hash → long
│ │ ├── correct_answers → Vector < int > (optional)
│ │ ├── attached_media → InputMedia (optional)
│ │ │ ├── InputMediaEmpty
│ │ │ ├── InputMediaUploadedPhoto
│ │ │ ├── InputMediaPhoto
│ │ │ ├── InputMediaGeoPoint
│ │ │ ├── InputMediaContact
│ │ │ ├── InputMediaUploadedDocument
│ │ │ ├── InputMediaDocument
│ │ │ ├── InputMediaVenue
│ │ │ ├── InputMediaPhotoExternal
│ │ │ ├── InputMediaDocumentExternal
│ │ │ ├── InputMediaGame
│ │ │ ├── InputMediaInvoice
│ │ │ ├── InputMediaGeoLive
│ │ │ ├── InputMediaPoll
│ │ │ ├── InputMediaDice
│ │ │ ├── InputMediaStory
│ │ │ ├── InputMediaWebPage
│ │ │ ├── InputMediaPaidMedia
│ │ │ ├── InputMediaTodo
│ │ │ └── InputMediaStakeDice
│ │ ├── solution → string (optional)
│ │ ├── solution_entities → Vector < MessageEntity > (optional)
│ │ │ ├── MessageEntityUnknown
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntityMention
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntityHashtag
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntityBotCommand
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntityUrl
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntityEmail
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntityBold
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntityItalic
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntityCode
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntityPre
│ │ │ │ ├── offset → int
│ │ │ │ ├── length → int
│ │ │ │ └── language → string
│ │ │ ├── MessageEntityTextUrl
│ │ │ │ ├── offset → int
│ │ │ │ ├── length → int
│ │ │ │ └── url → string
│ │ │ ├── MessageEntityMentionName
│ │ │ │ ├── offset → int
│ │ │ │ ├── length → int
│ │ │ │ └── user_id → long
│ │ │ ├── InputMessageEntityMentionName
│ │ │ │ ├── offset → int
│ │ │ │ ├── length → int
│ │ │ │ └── user_id → InputUser
│ │ │ │ ├── InputUserEmpty
│ │ │ │ ├── InputUserSelf
│ │ │ │ ├── InputUser
│ │ │ │ └── InputUserFromMessage
│ │ │ ├── MessageEntityPhone
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntityCashtag
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntityUnderline
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntityStrike
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntityBankCard
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntitySpoiler
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntityCustomEmoji
│ │ │ │ ├── offset → int
│ │ │ │ ├── length → int
│ │ │ │ └── document_id → long
│ │ │ ├── MessageEntityBlockquote
│ │ │ │ ├── collapsed → true (optional)
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntityFormattedDate
│ │ │ │ ├── relative → true (optional)
│ │ │ │ ├── short_time → true (optional)
│ │ │ │ ├── long_time → true (optional)
│ │ │ │ ├── short_date → true (optional)
│ │ │ │ ├── long_date → true (optional)
│ │ │ │ ├── day_of_week → true (optional)
│ │ │ │ ├── offset → int
│ │ │ │ ├── length → int
│ │ │ │ └── date → int
│ │ │ ├── MessageEntityDiffInsert
│ │ │ │ ├── offset → int
│ │ │ │ └── length → int
│ │ │ ├── MessageEntityDiffReplace
│ │ │ │ ├── offset → int
│ │ │ │ ├── length → int
│ │ │ │ └── old_text → string
│ │ │ └── MessageEntityDiffDelete
│ │ │ ├── offset → int
│ │ │ └── length → int
│ │ └── solution_media → InputMedia (optional)
│ │ ├── InputMediaEmpty
│ │ ├── InputMediaUploadedPhoto
│ │ ├── InputMediaPhoto
│ │ ├── InputMediaGeoPoint
│ │ ├── InputMediaContact
│ │ ├── InputMediaUploadedDocument
│ │ ├── InputMediaDocument
│ │ ├── InputMediaVenue
│ │ ├── InputMediaPhotoExternal
│ │ ├── InputMediaDocumentExternal
│ │ ├── InputMediaGame
│ │ ├── InputMediaInvoice
│ │ ├── InputMediaGeoLive
│ │ ├── InputMediaPoll
│ │ ├── InputMediaDice
│ │ ├── InputMediaStory
│ │ ├── InputMediaWebPage
│ │ ├── InputMediaPaidMedia
│ │ ├── InputMediaTodo
│ │ └── InputMediaStakeDice
│ ├── InputMediaDice
│ │ └── emoticon → string
│ ├── InputMediaStory
│ │ ├── peer → InputPeer
│ │ │ ├── InputPeerEmpty
│ │ │ ├── InputPeerSelf
│ │ │ ├── InputPeerChat
│ │ │ ├── InputPeerUser
│ │ │ ├── InputPeerChannel
│ │ │ ├── InputPeerUserFromMessage
│ │ │ └── InputPeerChannelFromMessage
│ │ └── id → int
│ ├── InputMediaWebPage
│ │ ├── force_large_media → true (optional)
│ │ ├── force_small_media → true (optional)
│ │ ├── optional → true (optional)
│ │ └── url → string
│ ├── InputMediaPaidMedia
│ │ ├── stars_amount → long
│ │ ├── extended_media → Vector < InputMedia >
│ │ │ ├── InputMediaEmpty
│ │ │ ├── InputMediaUploadedPhoto
│ │ │ │ ├── spoiler → true (optional)
│ │ │ │ ├── live_photo → true (optional)
│ │ │ │ ├── file → InputFile
│ │ │ │ │ ├── InputFile
│ │ │ │ │ ├── InputFileBig
│ │ │ │ │ └── InputFileStoryDocument
│ │ │ │ ├── stickers → Vector < InputDocument > (optional)
│ │ │ │ │ ├── InputDocumentEmpty
│ │ │ │ │ └── InputDocument
│ │ │ │ ├── ttl_seconds → int (optional)
│ │ │ │ └── video → InputDocument (optional)
│ │ │ │ ├── InputDocumentEmpty
│ │ │ │ └── InputDocument
│ │ │ ├── InputMediaPhoto
│ │ │ │ ├── spoiler → true (optional)
│ │ │ │ ├── live_photo → true (optional)
│ │ │ │ ├── id → InputPhoto
│ │ │ │ │ ├── InputPhotoEmpty
│ │ │ │ │ └── InputPhoto
│ │ │ │ ├── ttl_seconds → int (optional)
│ │ │ │ └── video → InputDocument (optional)
│ │ │ │ ├── InputDocumentEmpty
│ │ │ │ └── InputDocument
│ │ │ ├── InputMediaGeoPoint
│ │ │ │ └── geo_point → InputGeoPoint
│ │ │ │ ├── InputGeoPointEmpty
│ │ │ │ └── InputGeoPoint
│ │ │ ├── InputMediaContact
│ │ │ │ ├── phone_number → string
│ │ │ │ ├── first_name → string
│ │ │ │ ├── last_name → string
│ │ │ │ └── vcard → string
│ │ │ ├── InputMediaUploadedDocument
│ │ │ │ ├── nosound_video → true (optional)
│ │ │ │ ├── force_file → true (optional)
│ │ │ │ ├── spoiler → true (optional)
│ │ │ │ ├── file → InputFile
│ │ │ │ │ ├── InputFile
│ │ │ │ │ ├── InputFileBig
│ │ │ │ │ └── InputFileStoryDocument
│ │ │ │ ├── thumb → InputFile (optional)
│ │ │ │ │ ├── InputFile
│ │ │ │ │ ├── InputFileBig
│ │ │ │ │ └── InputFileStoryDocument
│ │ │ │ ├── mime_type → string
│ │ │ │ ├── attributes → Vector < DocumentAttribute >
│ │ │ │ │ ├── DocumentAttributeImageSize
│ │ │ │ │ ├── DocumentAttributeAnimated
│ │ │ │ │ ├── DocumentAttributeSticker
│ │ │ │ │ ├── DocumentAttributeVideo
│ │ │ │ │ ├── DocumentAttributeAudio
│ │ │ │ │ ├── DocumentAttributeFilename
│ │ │ │ │ ├── DocumentAttributeHasStickers
│ │ │ │ │ └── DocumentAttributeCustomEmoji
│ │ │ │ ├── stickers → Vector < InputDocument > (optional)
│ │ │ │ │ ├── InputDocumentEmpty
│ │ │ │ │ └── InputDocument
│ │ │ │ ├── video_cover → InputPhoto (optional)
│ │ │ │ │ ├── InputPhotoEmpty
│ │ │ │ │ └── InputPhoto
│ │ │ │ ├── video_timestamp → int (optional)
│ │ │ │ └── ttl_seconds → int (optional)
│ │ │ ├── InputMediaDocument
│ │ │ │ ├── spoiler → true (optional)
│ │ │ │ ├── id → InputDocument
│ │ │ │ │ ├── InputDocumentEmpty
│ │ │ │ │ └── InputDocument
│ │ │ │ ├── video_cover → InputPhoto (optional)
│ │ │ │ │ ├── InputPhotoEmpty
│ │ │ │ │ └── InputPhoto
│ │ │ │ ├── video_timestamp → int (optional)
│ │ │ │ ├── ttl_seconds → int (optional)
│ │ │ │ └── query → string (optional)
│ │ │ ├── InputMediaVenue
│ │ │ │ ├── geo_point → InputGeoPoint
│ │ │ │ │ ├── InputGeoPointEmpty
│ │ │ │ │ └── InputGeoPoint
│ │ │ │ ├── title → string
│ │ │ │ ├── address → string
│ │ │ │ ├── provider → string
│ │ │ │ ├── venue_id → string
│ │ │ │ └── venue_type → string
│ │ │ ├── InputMediaPhotoExternal
│ │ │ │ ├── spoiler → true (optional)
│ │ │ │ ├── url → string
│ │ │ │ └── ttl_seconds → int (optional)
│ │ │ ├── InputMediaDocumentExternal
│ │ │ │ ├── spoiler → true (optional)
│ │ │ │ ├── url → string
│ │ │ │ ├── ttl_seconds → int (optional)
│ │ │ │ ├── video_cover → InputPhoto (optional)
│ │ │ │ │ ├── InputPhotoEmpty
│ │ │ │ │ └── InputPhoto
│ │ │ │ └── video_timestamp → int (optional)
│ │ │ ├── InputMediaGame
│ │ │ │ └── id → InputGame
│ │ │ │ ├── InputGameID
│ │ │ │ └── InputGameShortName
│ │ │ ├── InputMediaInvoice
│ │ │ │ ├── title → string
│ │ │ │ ├── description → string
│ │ │ │ ├── photo → InputWebDocument (optional)
│ │ │ │ │ └── InputWebDocument
│ │ │ │ ├── invoice → Invoice
│ │ │ │ │ └── Invoice
│ │ │ │ ├── payload → bytes
│ │ │ │ ├── provider → string (optional)
│ │ │ │ ├── provider_data → DataJSON
│ │ │ │ │ └── DataJSON
│ │ │ │ ├── start_param → string (optional)
│ │ │ │ └── extended_media → InputMedia (optional)
│ │ │ │ ├── InputMediaEmpty
│ │ │ │ ├── InputMediaUploadedPhoto
│ │ │ │ ├── InputMediaPhoto
│ │ │ │ ├── InputMediaGeoPoint
│ │ │ │ ├── InputMediaContact
│ │ │ │ ├── InputMediaUploadedDocument
│ │ │ │ ├── InputMediaDocument
│ │ │ │ ├── InputMediaVenue
│ │ │ │ ├── InputMediaPhotoExternal
│ │ │ │ ├── InputMediaDocumentExternal
│ │ │ │ ├── InputMediaGame
│ │ │ │ ├── InputMediaInvoice
│ │ │ │ ├── InputMediaGeoLive
│ │ │ │ ├── InputMediaPoll
│ │ │ │ ├── InputMediaDice
│ │ │ │ ├── InputMediaStory
│ │ │ │ ├── InputMediaWebPage
│ │ │ │ ├── InputMediaPaidMedia
│ │ │ │ ├── InputMediaTodo
│ │ │ │ └── InputMediaStakeDice
│ │ │ ├── InputMediaGeoLive
│ │ │ │ ├── stopped → true (optional)
│ │ │ │ ├── geo_point → InputGeoPoint
│ │ │ │ │ ├── InputGeoPointEmpty
│ │ │ │ │ └── InputGeoPoint
│ │ │ │ ├── heading → int (optional)
│ │ │ │ ├── period → int (optional)
│ │ │ │ └── proximity_notification_radius → int (optional)
│ │ │ ├── InputMediaPoll
│ │ │ │ ├── poll → Poll
│ │ │ │ │ └── Poll
│ │ │ │ ├── correct_answers → Vector < int > (optional)
│ │ │ │ ├── attached_media → InputMedia (optional)
│ │ │ │ │ ├── InputMediaEmpty
│ │ │ │ │ ├── InputMediaUploadedPhoto
│ │ │ │ │ ├── InputMediaPhoto
│ │ │ │ │ ├── InputMediaGeoPoint
│ │ │ │ │ ├── InputMediaContact
│ │ │ │ │ ├── InputMediaUploadedDocument
│ │ │ │ │ ├── InputMediaDocument
│ │ │ │ │ ├── InputMediaVenue
│ │ │ │ │ ├── InputMediaPhotoExternal
│ │ │ │ │ ├── InputMediaDocumentExternal
│ │ │ │ │ ├── InputMediaGame
│ │ │ │ │ ├── InputMediaInvoice
│ │ │ │ │ ├── InputMediaGeoLive
│ │ │ │ │ ├── InputMediaPoll
│ │ │ │ │ ├── InputMediaDice
│ │ │ │ │ ├── InputMediaStory
│ │ │ │ │ ├── InputMediaWebPage
│ │ │ │ │ ├── InputMediaPaidMedia
│ │ │ │ │ ├── InputMediaTodo
│ │ │ │ │ └── InputMediaStakeDice
│ │ │ │ ├── solution → string (optional)
│ │ │ │ ├── solution_entities → Vector < MessageEntity > (optional)
│ │ │ │ │ ├── MessageEntityUnknown
│ │ │ │ │ ├── MessageEntityMention
│ │ │ │ │ ├── MessageEntityHashtag
│ │ │ │ │ ├── MessageEntityBotCommand
│ │ │ │ │ ├── MessageEntityUrl
│ │ │ │ │ ├── MessageEntityEmail
│ │ │ │ │ ├── MessageEntityBold
│ │ │ │ │ ├── MessageEntityItalic
│ │ │ │ │ ├── MessageEntityCode
│ │ │ │ │ ├── MessageEntityPre
│ │ │ │ │ ├── MessageEntityTextUrl
│ │ │ │ │ ├── MessageEntityMentionName
│ │ │ │ │ ├── InputMessageEntityMentionName
│ │ │ │ │ ├── MessageEntityPhone
│ │ │ │ │ ├── MessageEntityCashtag
│ │ │ │ │ ├── MessageEntityUnderline
│ │ │ │ │ ├── MessageEntityStrike
│ │ │ │ │ ├── MessageEntityBankCard
│ │ │ │ │ ├── MessageEntitySpoiler
│ │ │ │ │ ├── MessageEntityCustomEmoji
│ │ │ │ │ ├── MessageEntityBlockquote
│ │ │ │ │ ├── MessageEntityFormattedDate
│ │ │ │ │ ├── MessageEntityDiffInsert
│ │ │ │ │ ├── MessageEntityDiffReplace
│ │ │ │ │ └── MessageEntityDiffDelete
│ │ │ │ └── solution_media → InputMedia (optional)
│ │ │ │ ├── InputMediaEmpty
│ │ │ │ ├── InputMediaUploadedPhoto
│ │ │ │ ├── InputMediaPhoto
│ │ │ │ ├── InputMediaGeoPoint
│ │ │ │ ├── InputMediaContact
│ │ │ │ ├── InputMediaUploadedDocument
│ │ │ │ ├── InputMediaDocument
│ │ │ │ ├── InputMediaVenue
│ │ │ │ ├── InputMediaPhotoExternal
│ │ │ │ ├── InputMediaDocumentExternal
│ │ │ │ ├── InputMediaGame
│ │ │ │ ├── InputMediaInvoice
│ │ │ │ ├── InputMediaGeoLive
│ │ │ │ ├── InputMediaPoll
│ │ │ │ ├── InputMediaDice
│ │ │ │ ├── InputMediaStory
│ │ │ │ ├── InputMediaWebPage
│ │ │ │ ├── InputMediaPaidMedia
│ │ │ │ ├── InputMediaTodo
│ │ │ │ └── InputMediaStakeDice
│ │ │ ├── InputMediaDice
│ │ │ │ └── emoticon → string
│ │ │ ├── InputMediaStory
│ │ │ │ ├── peer → InputPeer
│ │ │ │ │ ├── InputPeerEmpty
│ │ │ │ │ ├── InputPeerSelf
│ │ │ │ │ ├── InputPeerChat
│ │ │ │ │ ├── InputPeerUser
│ │ │ │ │ ├── InputPeerChannel
│ │ │ │ │ ├── InputPeerUserFromMessage
│ │ │ │ │ └── InputPeerChannelFromMessage
│ │ │ │ └── id → int
│ │ │ ├── InputMediaWebPage
│ │ │ │ ├── force_large_media → true (optional)
│ │ │ │ ├── force_small_media → true (optional)
│ │ │ │ ├── optional → true (optional)
│ │ │ │ └── url → string
│ │ │ ├── InputMediaPaidMedia
│ │ │ │ ├── stars_amount → long
│ │ │ │ ├── extended_media → Vector < InputMedia >
│ │ │ │ │ ├── InputMediaEmpty
│ │ │ │ │ ├── InputMediaUploadedPhoto
│ │ │ │ │ ├── InputMediaPhoto
│ │ │ │ │ ├── InputMediaGeoPoint
│ │ │ │ │ ├── InputMediaContact
│ │ │ │ │ ├── InputMediaUploadedDocument
│ │ │ │ │ ├── InputMediaDocument
│ │ │ │ │ ├── InputMediaVenue
│ │ │ │ │ ├── InputMediaPhotoExternal
│ │ │ │ │ ├── InputMediaDocumentExternal
│ │ │ │ │ ├── InputMediaGame
│ │ │ │ │ ├── InputMediaInvoice
│ │ │ │ │ ├── InputMediaGeoLive
│ │ │ │ │ ├── InputMediaPoll
│ │ │ │ │ ├── InputMediaDice
│ │ │ │ │ ├── InputMediaStory
│ │ │ │ │ ├── InputMediaWebPage
│ │ │ │ │ ├── InputMediaPaidMedia
│ │ │ │ │ ├── InputMediaTodo
│ │ │ │ │ └── InputMediaStakeDice
│ │ │ │ └── payload → string (optional)
│ │ │ ├── InputMediaTodo
│ │ │ │ └── todo → TodoList
│ │ │ │ └── TodoList
│ │ │ └── InputMediaStakeDice
│ │ │ ├── game_hash → string
│ │ │ ├── ton_amount → long
│ │ │ └── client_seed → bytes
│ │ └── payload → string (optional)
│ ├── InputMediaTodo
│ │ └── todo → TodoList
│ │ └── TodoList
│ │ ├── others_can_append → true (optional)
│ │ ├── others_can_complete → true (optional)
│ │ ├── title → TextWithEntities
│ │ │ └── TextWithEntities
│ │ └── list → Vector < TodoItem >
│ │ └── TodoItem
│ └── InputMediaStakeDice
│ ├── game_hash → string
│ ├── ton_amount → long
│ └── client_seed → bytes
├── message → string
├── random_id → long
├── reply_markup → ReplyMarkup (optional)
│ ├── ReplyKeyboardHide
│ │ └── selective → true (optional)
│ │ ├── single_use → true (optional)
│ │ ├── selective → true (optional)
│ │ └── placeholder → string (optional)
│ ├── ReplyKeyboardMarkup
│ │ ├── resize → true (optional)
│ │ ├── single_use → true (optional)
│ │ ├── selective → true (optional)
│ │ ├── persistent → true (optional)
│ │ ├── rows → Vector < KeyboardButtonRow >
│ │ │ └── KeyboardButtonRow
│ │ │ └── buttons → Vector < KeyboardButton >
│ │ │ ├── KeyboardButton
│ │ │ ├── KeyboardButtonUrl
│ │ │ ├── KeyboardButtonCallback
│ │ │ ├── KeyboardButtonRequestPhone
│ │ │ ├── KeyboardButtonRequestGeoLocation
│ │ │ ├── KeyboardButtonSwitchInline
│ │ │ ├── KeyboardButtonGame
│ │ │ ├── KeyboardButtonBuy
│ │ │ ├── KeyboardButtonUrlAuth
│ │ │ ├── InputKeyboardButtonUrlAuth
│ │ │ ├── KeyboardButtonRequestPoll
│ │ │ ├── InputKeyboardButtonUserProfile
│ │ │ ├── KeyboardButtonUserProfile
│ │ │ ├── KeyboardButtonWebView
│ │ │ ├── KeyboardButtonSimpleWebView
│ │ │ ├── KeyboardButtonRequestPeer
│ │ │ ├── InputKeyboardButtonRequestPeer
│ │ │ └── KeyboardButtonCopy
│ │ └── placeholder → string (optional)
│ └── ReplyInlineMarkup
│ └── rows → Vector < KeyboardButtonRow >
│ └── KeyboardButtonRow
│ └── buttons → Vector < KeyboardButton >
│ ├── KeyboardButton
│ ├── KeyboardButtonUrl
│ ├── KeyboardButtonGame
│ ├── KeyboardButtonBuy
│ ├── KeyboardButtonUrlAuth
│ ├── KeyboardButtonWebView
│ └── KeyboardButtonCopy
├── entities → Vector < MessageEntity > (optional)
│ ├── MessageEntityUnknown
│ │ ├── offset → int
│ │ └── length → int
│ ├── MessageEntityMention
│ │ ├── offset → int
│ │ └── length → int
│ ├── MessageEntityHashtag
│ │ ├── offset → int
│ │ └── length → int
│ │ ├── offset → int
│ │ └── length → int
│ ├── MessageEntityUrl
│ │ ├── offset → int
│ │ └── length → int
│ ├── MessageEntityEmail
│ │ ├── offset → int
│ │ └── length → int
│ ├── MessageEntityBold
│ │ ├── offset → int
│ │ └── length → int
│ ├── MessageEntityItalic
│ │ ├── offset → int
│ │ └── length → int
│ ├── MessageEntityCode
│ │ ├── offset → int
│ │ └── length → int
│ ├── MessageEntityPre
│ │ ├── offset → int
│ │ ├── length → int
│ │ └── language → string
│ ├── MessageEntityTextUrl
│ │ ├── offset → int
│ │ ├── length → int
│ │ └── url → string
│ │ ├── offset → int
│ │ ├── length → int
│ │ └── user_id → long
│ │ ├── offset → int
│ │ ├── length → int
│ │ └── user_id → InputUser
│ │ ├── InputUserEmpty
│ │ ├── InputUserSelf
│ │ ├── InputUser
│ │ └── InputUserFromMessage
│ ├── MessageEntityPhone
│ │ ├── offset → int
│ │ └── length → int
│ ├── MessageEntityCashtag
│ │ ├── offset → int
│ │ └── length → int
│ │ ├── offset → int
│ │ └── length → int
│ ├── MessageEntityStrike
│ │ ├── offset → int
│ │ └── length → int
│ ├── MessageEntityBankCard
│ │ ├── offset → int
│ │ └── length → int
│ ├── MessageEntitySpoiler
│ │ ├── offset → int
│ │ └── length → int
│ │ ├── offset → int
│ │ ├── length → int
│ │ └── document_id → long
│ │ ├── collapsed → true (optional)
│ │ ├── offset → int
│ │ └── length → int
│ │ ├── relative → true (optional)
│ │ ├── short_time → true (optional)
│ │ ├── long_time → true (optional)
│ │ ├── short_date → true (optional)
│ │ ├── long_date → true (optional)
│ │ ├── day_of_week → true (optional)
│ │ ├── offset → int
│ │ ├── length → int
│ │ └── date → int
│ │ ├── offset → int
│ │ └── length → int
│ │ ├── offset → int
│ │ ├── length → int
│ │ └── old_text → string
│ ├── offset → int
│ └── length → int
├── schedule_date → int (optional)
├── schedule_repeat_period → int (optional)
├── send_as → InputPeer (optional)
│ ├── InputPeerEmpty
│ ├── InputPeerSelf
│ ├── InputPeerChat
│ │ └── chat_id → long
│ ├── InputPeerUser
│ │ ├── user_id → long
│ │ └── access_hash → long
│ ├── InputPeerChannel
│ │ ├── channel_id → long
│ │ └── access_hash → long
│ │ ├── peer → InputPeer
│ │ │ ├── InputPeerEmpty
│ │ │ ├── InputPeerSelf
│ │ │ ├── InputPeerChat
│ │ │ ├── InputPeerUser
│ │ │ ├── InputPeerChannel
│ │ │ ├── InputPeerUserFromMessage
│ │ │ └── InputPeerChannelFromMessage
│ │ ├── msg_id → int
│ │ └── user_id → long
│ ├── peer → InputPeer
│ │ ├── InputPeerEmpty
│ │ ├── InputPeerSelf
│ │ ├── InputPeerChat
│ │ ├── InputPeerUser
│ │ ├── InputPeerChannel
│ │ ├── InputPeerUserFromMessage
│ │ └── InputPeerChannelFromMessage
│ ├── msg_id → int
│ └── channel_id → long
├── quick_reply_shortcut → InputQuickReplyShortcut (optional)
│ │ └── shortcut → string
│ └── shortcut_id → int
├── effect → long (optional)
├── allow_paid_stars → long (optional)
└── suggested_post → SuggestedPost (optional)
└── SuggestedPost
├── accepted → true (optional)
├── rejected → true (optional)
├── price → StarsAmount (optional)
│ ├── StarsAmount
│ │ ├── amount → long
│ │ └── nanos → int
│ └── StarsTonAmount
│ └── amount → long
└── schedule_date → int (optional)

Example

await app.invoke(
    SendMedia(
        silent=None,
        background=None,
        clear_draft=None,
        noforwards=None,
        update_stickersets_order=None,
        invert_media=None,
        allow_paid_floodskip=None,
        peer=await app.resolve_peer(chat_id),
        reply_to=InputReplyToMessage(
            reply_to_msg_id=0,
            top_msg_id=None,
            reply_to_peer_id=None,
            quote_text=None,
            quote_entities=None,
            quote_offset=None,
            monoforum_peer_id=None,
            todo_item_id=None,
            poll_option=None
        ),
        media=InputMediaEmpty(),
        message="Hello",
        random_id=app.rnd_id(),
        reply_markup=ReplyInlineMarkup(rows=[
                    KeyboardButtonRow(buttons=[
                                KeyboardButtonUrl(
                                    style=None,
                                    text="Open",
                                    url="https://google.com"
                                )
                            ])
                ]),
        entities=[
                MessageEntityUnknown(
                    offset=0,
                    length=0
                )
            ],
        schedule_date=0,
        schedule_repeat_period=0,
        send_as=await app.resolve_peer(chat_id),
        quick_reply_shortcut=InputQuickReplyShortcut(shortcut="text"),
        effect=0,
        allow_paid_stars=0,
        suggested_post=SuggestedPost(
            accepted=None,
            rejected=None,
            price=None,
            schedule_date=None
        ),
    )
)