diff --git a/schemas/botapi.json b/schemas/botapi.json index 6f21e7e..0745729 100644 --- a/schemas/botapi.json +++ b/schemas/botapi.json @@ -1,5 +1,5 @@ { - "version": "7.4.0", + "version": "7.6.0", "types": [ { "name": "Update", @@ -697,6 +697,15 @@ "optional": true, "description": "Optional. Default chat member permissions, for groups and supergroups" }, + { + "name": "can_send_paid_media", + "types": [ + "bool" + ], + "optional": true, + "description": "Optional. True, if paid media messages can be sent or forwarded to the channel chat. The field is available only for channel chats.", + "default": true + }, { "name": "slow_mode_delay", "types": [ @@ -1041,6 +1050,14 @@ "optional": true, "description": "Optional. Message is a general file, information about the file" }, + { + "name": "paid_media", + "types": [ + "PaidMediaInfo" + ], + "optional": true, + "description": "Optional. Message contains paid media; information about the paid media" + }, { "name": "photo", "types": [ @@ -1095,7 +1112,7 @@ "string" ], "optional": true, - "description": "Optional. Caption for the animation, audio, document, photo, video or voice" + "description": "Optional. Caption for the animation, audio, document, paid media, photo, video or voice" }, { "name": "caption_entities", @@ -1700,6 +1717,14 @@ "optional": true, "description": "Optional. Message is a general file, information about the file" }, + { + "name": "paid_media", + "types": [ + "PaidMediaInfo" + ], + "optional": true, + "description": "Optional. Message contains paid media; information about the paid media" + }, { "name": "photo", "types": [ @@ -2128,7 +2153,7 @@ "int" ], "optional": false, - "description": "Video width as defined by sender" + "description": "Video width as defined by the sender" }, { "name": "height", @@ -2136,7 +2161,7 @@ "int" ], "optional": false, - "description": "Video height as defined by sender" + "description": "Video height as defined by the sender" }, { "name": "duration", @@ -2144,7 +2169,7 @@ "int" ], "optional": false, - "description": "Duration of the video in seconds as defined by sender" + "description": "Duration of the video in seconds as defined by the sender" }, { "name": "thumbnail", @@ -2152,7 +2177,7 @@ "PhotoSize" ], "optional": true, - "description": "Optional. Animation thumbnail as defined by sender" + "description": "Optional. Animation thumbnail as defined by the sender" }, { "name": "file_name", @@ -2160,7 +2185,7 @@ "string" ], "optional": true, - "description": "Optional. Original animation filename as defined by sender" + "description": "Optional. Original animation filename as defined by the sender" }, { "name": "mime_type", @@ -2168,7 +2193,7 @@ "string" ], "optional": true, - "description": "Optional. MIME type of the file as defined by sender" + "description": "Optional. MIME type of the file as defined by the sender" }, { "name": "file_size", @@ -2207,7 +2232,7 @@ "int" ], "optional": false, - "description": "Duration of the audio in seconds as defined by sender" + "description": "Duration of the audio in seconds as defined by the sender" }, { "name": "performer", @@ -2215,7 +2240,7 @@ "string" ], "optional": true, - "description": "Optional. Performer of the audio as defined by sender or by audio tags" + "description": "Optional. Performer of the audio as defined by the sender or by audio tags" }, { "name": "title", @@ -2223,7 +2248,7 @@ "string" ], "optional": true, - "description": "Optional. Title of the audio as defined by sender or by audio tags" + "description": "Optional. Title of the audio as defined by the sender or by audio tags" }, { "name": "file_name", @@ -2231,7 +2256,7 @@ "string" ], "optional": true, - "description": "Optional. Original filename as defined by sender" + "description": "Optional. Original filename as defined by the sender" }, { "name": "mime_type", @@ -2239,7 +2264,7 @@ "string" ], "optional": true, - "description": "Optional. MIME type of the file as defined by sender" + "description": "Optional. MIME type of the file as defined by the sender" }, { "name": "file_size", @@ -2286,7 +2311,7 @@ "PhotoSize" ], "optional": true, - "description": "Optional. Document thumbnail as defined by sender" + "description": "Optional. Document thumbnail as defined by the sender" }, { "name": "file_name", @@ -2294,7 +2319,7 @@ "string" ], "optional": true, - "description": "Optional. Original filename as defined by sender" + "description": "Optional. Original filename as defined by the sender" }, { "name": "mime_type", @@ -2302,7 +2327,7 @@ "string" ], "optional": true, - "description": "Optional. MIME type of the file as defined by sender" + "description": "Optional. MIME type of the file as defined by the sender" }, { "name": "file_size", @@ -2364,7 +2389,7 @@ "int" ], "optional": false, - "description": "Video width as defined by sender" + "description": "Video width as defined by the sender" }, { "name": "height", @@ -2372,7 +2397,7 @@ "int" ], "optional": false, - "description": "Video height as defined by sender" + "description": "Video height as defined by the sender" }, { "name": "duration", @@ -2380,7 +2405,7 @@ "int" ], "optional": false, - "description": "Duration of the video in seconds as defined by sender" + "description": "Duration of the video in seconds as defined by the sender" }, { "name": "thumbnail", @@ -2396,7 +2421,7 @@ "string" ], "optional": true, - "description": "Optional. Original filename as defined by sender" + "description": "Optional. Original filename as defined by the sender" }, { "name": "mime_type", @@ -2404,7 +2429,7 @@ "string" ], "optional": true, - "description": "Optional. MIME type of the file as defined by sender" + "description": "Optional. MIME type of the file as defined by the sender" }, { "name": "file_size", @@ -2443,7 +2468,7 @@ "int" ], "optional": false, - "description": "Video width and height (diameter of the video message) as defined by sender" + "description": "Video width and height (diameter of the video message) as defined by the sender" }, { "name": "duration", @@ -2451,7 +2476,7 @@ "int" ], "optional": false, - "description": "Duration of the video in seconds as defined by sender" + "description": "Duration of the video in seconds as defined by the sender" }, { "name": "thumbnail", @@ -2498,7 +2523,7 @@ "int" ], "optional": false, - "description": "Duration of the audio in seconds as defined by sender" + "description": "Duration of the audio in seconds as defined by the sender" }, { "name": "mime_type", @@ -2506,7 +2531,7 @@ "string" ], "optional": true, - "description": "Optional. MIME type of the file as defined by sender" + "description": "Optional. MIME type of the file as defined by the sender" }, { "name": "file_size", @@ -2519,6 +2544,124 @@ ], "extended_by": [] }, + { + "name": "PaidMediaInfo", + "description": "Describes the paid media added to a message.", + "fields": [ + { + "name": "star_count", + "types": [ + "int" + ], + "optional": false, + "description": "The number of Telegram Stars that must be paid to buy access to the media" + }, + { + "name": "paid_media", + "types": [ + "Array" + ], + "optional": false, + "description": "Information about the paid media" + } + ], + "extended_by": [] + }, + { + "name": "PaidMedia", + "description": "This object describes paid media. Currently, it can be one of", + "fields": [], + "extended_by": [ + "PaidMediaPreview", + "PaidMediaPhoto", + "PaidMediaVideo" + ] + }, + { + "name": "PaidMediaPreview", + "description": "The paid media isn't available before the payment.", + "fields": [ + { + "name": "type", + "types": [ + "string" + ], + "optional": false, + "description": "Type of the paid media, always “preview”" + }, + { + "name": "width", + "types": [ + "int" + ], + "optional": true, + "description": "Optional. Media width as defined by the sender" + }, + { + "name": "height", + "types": [ + "int" + ], + "optional": true, + "description": "Optional. Media height as defined by the sender" + }, + { + "name": "duration", + "types": [ + "int" + ], + "optional": true, + "description": "Optional. Duration of the media in seconds as defined by the sender" + } + ], + "extended_by": [] + }, + { + "name": "PaidMediaPhoto", + "description": "The paid media is a photo.", + "fields": [ + { + "name": "type", + "types": [ + "string" + ], + "optional": false, + "description": "Type of the paid media, always “photo”" + }, + { + "name": "photo", + "types": [ + "Array" + ], + "optional": false, + "description": "The photo" + } + ], + "extended_by": [] + }, + { + "name": "PaidMediaVideo", + "description": "The paid media is a video.", + "fields": [ + { + "name": "type", + "types": [ + "string" + ], + "optional": false, + "description": "Type of the paid media, always “video”" + }, + { + "name": "video", + "types": [ + "Video" + ], + "optional": false, + "description": "The video" + } + ], + "extended_by": [] + }, { "name": "Contact", "description": "This object represents a phone contact.", @@ -2622,7 +2765,7 @@ }, { "name": "InputPollOption", - "description": "This object contains information about one answer option in a poll to send.", + "description": "This object contains information about one answer option in a poll to be sent.", "fields": [ { "name": "text", @@ -2819,7 +2962,7 @@ "float" ], "optional": false, - "description": "Latitude as defined by sender" + "description": "Latitude as defined by the sender" }, { "name": "longitude", @@ -2827,7 +2970,7 @@ "float" ], "optional": false, - "description": "Longitude as defined by sender" + "description": "Longitude as defined by the sender" }, { "name": "horizontal_accuracy", @@ -4260,7 +4403,7 @@ "string" ], "optional": true, - "description": "Optional. Data to be sent in a callback query to the bot when button is pressed, 1-64 bytes. Not supported for messages sent on behalf of a Telegram Business account." + "description": "Optional. Data to be sent in a callback query to the bot when the button is pressed, 1-64 bytes" }, { "name": "web_app", @@ -6086,7 +6229,7 @@ "WebAppInfo" ], "optional": false, - "description": "Description of the Web App that will be launched when the user presses the button. The Web App will be able to send an arbitrary message on behalf of the user using the method answerWebAppQuery." + "description": "Description of the Web App that will be launched when the user presses the button. The Web App will be able to send an arbitrary message on behalf of the user using the method answerWebAppQuery. Alternatively, a t.me link to a Web App of the bot can be specified in the object instead of the Web App's URL, in which case the Web App will be opened as if the user pressed the link." } ], "extended_by": [] @@ -6858,6 +7001,104 @@ "fields": [], "extended_by": [] }, + { + "name": "InputPaidMedia", + "description": "This object describes the paid media to be sent. Currently, it can be one of", + "fields": [], + "extended_by": [ + "InputPaidMediaPhoto", + "InputPaidMediaVideo" + ] + }, + { + "name": "InputPaidMediaPhoto", + "description": "The paid media to send is a photo.", + "fields": [ + { + "name": "type", + "types": [ + "string" + ], + "optional": false, + "description": "Type of the media, must be photo", + "default": "photo" + }, + { + "name": "media", + "types": [ + "string" + ], + "optional": false, + "description": "File to send. Pass a file_id to send a file that exists on the Telegram servers (recommended), pass an HTTP URL for Telegram to get a file from the Internet, or pass “attach://” to upload a new one using multipart/form-data under name. More information on Sending Files »" + } + ], + "extended_by": [] + }, + { + "name": "InputPaidMediaVideo", + "description": "The paid media to send is a video.", + "fields": [ + { + "name": "type", + "types": [ + "string" + ], + "optional": false, + "description": "Type of the media, must be video", + "default": "video" + }, + { + "name": "media", + "types": [ + "string" + ], + "optional": false, + "description": "File to send. Pass a file_id to send a file that exists on the Telegram servers (recommended), pass an HTTP URL for Telegram to get a file from the Internet, or pass “attach://” to upload a new one using multipart/form-data under name. More information on Sending Files »" + }, + { + "name": "thumbnail", + "types": [ + "InputFile", + "string" + ], + "optional": true, + "description": "Optional. Thumbnail of the file sent; can be ignored if thumbnail generation for the file is supported server-side. The thumbnail should be in JPEG format and less than 200 kB in size. A thumbnail's width and height should not exceed 320. Ignored if the file is not uploaded using multipart/form-data. Thumbnails can't be reused and can be only uploaded as a new file, so you can pass “attach://” if the thumbnail was uploaded using multipart/form-data under . More information on Sending Files »" + }, + { + "name": "width", + "types": [ + "int" + ], + "optional": true, + "description": "Optional. Video width" + }, + { + "name": "height", + "types": [ + "int" + ], + "optional": true, + "description": "Optional. Video height" + }, + { + "name": "duration", + "types": [ + "int" + ], + "optional": true, + "description": "Optional. Video duration in seconds" + }, + { + "name": "supports_streaming", + "types": [ + "bool" + ], + "optional": true, + "description": "Optional. Pass True if the uploaded video is suitable for streaming" + } + ], + "extended_by": [] + }, { "name": "Sticker", "description": "This object represents a sticker.", @@ -9854,7 +10095,7 @@ "string" ], "optional": false, - "description": "Bot specified invoice payload" + "description": "Bot-specified invoice payload" }, { "name": "shipping_option_id", @@ -9917,7 +10158,7 @@ "string" ], "optional": false, - "description": "Bot specified invoice payload" + "description": "Bot-specified invoice payload" }, { "name": "shipping_address", @@ -9972,7 +10213,7 @@ "string" ], "optional": false, - "description": "Bot specified invoice payload" + "description": "Bot-specified invoice payload" }, { "name": "shipping_option_id", @@ -9993,6 +10234,234 @@ ], "extended_by": [] }, + { + "name": "RevenueWithdrawalState", + "description": "This object describes the state of a revenue withdrawal operation. Currently, it can be one of", + "fields": [], + "extended_by": [ + "RevenueWithdrawalStatePending", + "RevenueWithdrawalStateSucceeded", + "RevenueWithdrawalStateFailed" + ] + }, + { + "name": "RevenueWithdrawalStatePending", + "description": "The withdrawal is in progress.", + "fields": [ + { + "name": "type", + "types": [ + "string" + ], + "optional": false, + "description": "Type of the state, always “pending”" + } + ], + "extended_by": [] + }, + { + "name": "RevenueWithdrawalStateSucceeded", + "description": "The withdrawal succeeded.", + "fields": [ + { + "name": "type", + "types": [ + "string" + ], + "optional": false, + "description": "Type of the state, always “succeeded”" + }, + { + "name": "date", + "types": [ + "int" + ], + "optional": false, + "description": "Date the withdrawal was completed in Unix time" + }, + { + "name": "url", + "types": [ + "string" + ], + "optional": false, + "description": "An HTTPS URL that can be used to see transaction details" + } + ], + "extended_by": [] + }, + { + "name": "RevenueWithdrawalStateFailed", + "description": "The withdrawal failed and the transaction was refunded.", + "fields": [ + { + "name": "type", + "types": [ + "string" + ], + "optional": false, + "description": "Type of the state, always “failed”" + } + ], + "extended_by": [] + }, + { + "name": "TransactionPartner", + "description": "This object describes the source of a transaction, or its recipient for outgoing transactions. Currently, it can be one of", + "fields": [], + "extended_by": [ + "TransactionPartnerUser", + "TransactionPartnerFragment", + "TransactionPartnerTelegramAds", + "TransactionPartnerOther" + ] + }, + { + "name": "TransactionPartnerUser", + "description": "Describes a transaction with a user.", + "fields": [ + { + "name": "type", + "types": [ + "string" + ], + "optional": false, + "description": "Type of the transaction partner, always “user”" + }, + { + "name": "user", + "types": [ + "User" + ], + "optional": false, + "description": "Information about the user" + }, + { + "name": "invoice_payload", + "types": [ + "string" + ], + "optional": true, + "description": "Optional. Bot-specified invoice payload" + } + ], + "extended_by": [] + }, + { + "name": "TransactionPartnerFragment", + "description": "Describes a withdrawal transaction with Fragment.", + "fields": [ + { + "name": "type", + "types": [ + "string" + ], + "optional": false, + "description": "Type of the transaction partner, always “fragment”" + }, + { + "name": "withdrawal_state", + "types": [ + "RevenueWithdrawalState" + ], + "optional": true, + "description": "Optional. State of the transaction if the transaction is outgoing" + } + ], + "extended_by": [] + }, + { + "name": "TransactionPartnerTelegramAds", + "description": "Describes a withdrawal transaction to the Telegram Ads platform.", + "fields": [ + { + "name": "type", + "types": [ + "string" + ], + "optional": false, + "description": "Type of the transaction partner, always “telegram_ads”" + } + ], + "extended_by": [] + }, + { + "name": "TransactionPartnerOther", + "description": "Describes a transaction with an unknown source or recipient.", + "fields": [ + { + "name": "type", + "types": [ + "string" + ], + "optional": false, + "description": "Type of the transaction partner, always “other”" + } + ], + "extended_by": [] + }, + { + "name": "StarTransaction", + "description": "Describes a Telegram Star transaction.", + "fields": [ + { + "name": "id", + "types": [ + "string" + ], + "optional": false, + "description": "Unique identifier of the transaction. Coincides with the identifer of the original transaction for refund transactions. Coincides with SuccessfulPayment.telegram_payment_charge_id for successful incoming payments from users." + }, + { + "name": "amount", + "types": [ + "int" + ], + "optional": false, + "description": "Number of Telegram Stars transferred by the transaction" + }, + { + "name": "date", + "types": [ + "int" + ], + "optional": false, + "description": "Date the transaction was created in Unix time" + }, + { + "name": "source", + "types": [ + "TransactionPartner" + ], + "optional": true, + "description": "Optional. Source of an incoming transaction (e.g., a user purchasing goods or services, Fragment refunding a failed withdrawal). Only for incoming transactions" + }, + { + "name": "receiver", + "types": [ + "TransactionPartner" + ], + "optional": true, + "description": "Optional. Receiver of an outgoing transaction (e.g., a user for a purchase refund, Fragment for a withdrawal). Only for outgoing transactions" + } + ], + "extended_by": [] + }, + { + "name": "StarTransactions", + "description": "Contains a list of Telegram Star transactions.", + "fields": [ + { + "name": "transactions", + "types": [ + "Array" + ], + "optional": false, + "description": "The list of transactions" + } + ], + "extended_by": [] + }, { "name": "PassportData", "description": "Describes Telegram Passport data shared with the bot by the user.", @@ -11038,7 +11507,7 @@ }, { "name": "copyMessage", - "description": "Use this method to copy messages of any kind. Service messages, giveaway messages, giveaway winners messages, and invoice messages can't be copied. A quiz poll can be copied only if the value of the field correct_option_id is known to the bot. The method is analogous to the method forwardMessage, but the copied message doesn't have a link to the original message. Returns the MessageId of the sent message on success.", + "description": "Use this method to copy messages of any kind. Service messages, paid media messages, giveaway messages, giveaway winners messages, and invoice messages can't be copied. A quiz poll can be copied only if the value of the field correct_option_id is known to the bot. The method is analogous to the method forwardMessage, but the copied message doesn't have a link to the original message. Returns the MessageId of the sent message on success.", "fields": [ { "name": "chat_id", @@ -11148,7 +11617,7 @@ }, { "name": "copyMessages", - "description": "Use this method to copy messages of any kind. If some of the specified messages can't be found or copied, they are skipped. Service messages, giveaway messages, giveaway winners messages, and invoice messages can't be copied. A quiz poll can be copied only if the value of the field correct_option_id is known to the bot. The method is analogous to the method forwardMessages, but the copied messages don't have a link to the original message. Album grouping is kept for copied messages. On success, an array of MessageId of the sent messages is returned.", + "description": "Use this method to copy messages of any kind. If some of the specified messages can't be found or copied, they are skipped. Service messages, paid media messages, giveaway messages, giveaway winners messages, and invoice messages can't be copied. A quiz poll can be copied only if the value of the field correct_option_id is known to the bot. The method is analogous to the method forwardMessages, but the copied messages don't have a link to the original message. Album grouping is kept for copied messages. On success, an array of MessageId of the sent messages is returned.", "fields": [ { "name": "chat_id", @@ -12164,6 +12633,107 @@ "Message" ] }, + { + "name": "sendPaidMedia", + "description": "Use this method to send paid media to channel chats. On success, the sent Message is returned.", + "fields": [ + { + "name": "chat_id", + "types": [ + "int", + "string" + ], + "optional": false, + "description": "Unique identifier for the target chat or username of the target channel (in the format @channelusername)" + }, + { + "name": "star_count", + "types": [ + "int" + ], + "optional": false, + "description": "The number of Telegram Stars that must be paid to buy access to the media" + }, + { + "name": "media", + "types": [ + "Array" + ], + "optional": false, + "description": "A JSON-serialized array describing the media to be sent; up to 10 items" + }, + { + "name": "caption", + "types": [ + "string" + ], + "optional": true, + "description": "Media caption, 0-1024 characters after entities parsing" + }, + { + "name": "parse_mode", + "types": [ + "string" + ], + "optional": true, + "description": "Mode for parsing entities in the media caption. See formatting options for more details." + }, + { + "name": "caption_entities", + "types": [ + "Array" + ], + "optional": true, + "description": "A JSON-serialized list of special entities that appear in the caption, which can be specified instead of parse_mode" + }, + { + "name": "show_caption_above_media", + "types": [ + "bool" + ], + "optional": true, + "description": "Pass True, if the caption must be shown above the message media" + }, + { + "name": "disable_notification", + "types": [ + "bool" + ], + "optional": true, + "description": "Sends the message silently. Users will receive a notification with no sound." + }, + { + "name": "protect_content", + "types": [ + "bool" + ], + "optional": true, + "description": "Protects the contents of the sent message from forwarding and saving" + }, + { + "name": "reply_parameters", + "types": [ + "ReplyParameters" + ], + "optional": true, + "description": "Description of the message to reply to" + }, + { + "name": "reply_markup", + "types": [ + "InlineKeyboardMarkup", + "ReplyKeyboardMarkup", + "ReplyKeyboardRemove", + "ForceReply" + ], + "optional": true, + "description": "Additional interface options. A JSON-serialized object for an inline keyboard, custom reply keyboard, instructions to remove a reply keyboard or to force a reply from the user" + } + ], + "return_types": [ + "Message" + ] + }, { "name": "sendMediaGroup", "description": "Use this method to send a group of photos, videos, documents or audios as an album. Documents and audio files can be only grouped in an album with messages of the same type. On success, an array of Messages that were sent is returned.", @@ -14643,8 +15213,16 @@ }, { "name": "editMessageText", - "description": "Use this method to edit text and game messages. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned.", + "description": "Use this method to edit text and game messages. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned. Note that business messages that were not sent by the bot and do not contain an inline keyboard can only be edited within 48 hours from the time they were sent.", "fields": [ + { + "name": "business_connection_id", + "types": [ + "string" + ], + "optional": true, + "description": "Unique identifier of the business connection on behalf of which the message to be edited was sent" + }, { "name": "chat_id", "types": [ @@ -14718,8 +15296,16 @@ }, { "name": "editMessageCaption", - "description": "Use this method to edit captions of messages. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned.", + "description": "Use this method to edit captions of messages. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned. Note that business messages that were not sent by the bot and do not contain an inline keyboard can only be edited within 48 hours from the time they were sent.", "fields": [ + { + "name": "business_connection_id", + "types": [ + "string" + ], + "optional": true, + "description": "Unique identifier of the business connection on behalf of which the message to be edited was sent" + }, { "name": "chat_id", "types": [ @@ -14793,8 +15379,16 @@ }, { "name": "editMessageMedia", - "description": "Use this method to edit animation, audio, document, photo, or video messages. If a message is part of a message album, then it can be edited only to an audio for audio albums, only to a document for document albums and to a photo or a video otherwise. When an inline message is edited, a new file can't be uploaded; use a previously uploaded file via its file_id or specify a URL. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned.", + "description": "Use this method to edit animation, audio, document, photo, or video messages. If a message is part of a message album, then it can be edited only to an audio for audio albums, only to a document for document albums and to a photo or a video otherwise. When an inline message is edited, a new file can't be uploaded; use a previously uploaded file via its file_id or specify a URL. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned. Note that business messages that were not sent by the bot and do not contain an inline keyboard can only be edited within 48 hours from the time they were sent.", "fields": [ + { + "name": "business_connection_id", + "types": [ + "string" + ], + "optional": true, + "description": "Unique identifier of the business connection on behalf of which the message to be edited was sent" + }, { "name": "chat_id", "types": [ @@ -14846,6 +15440,14 @@ "name": "editMessageLiveLocation", "description": "Use this method to edit live location messages. A location can be edited until its live_period expires or editing is explicitly disabled by a call to stopMessageLiveLocation. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned.", "fields": [ + { + "name": "business_connection_id", + "types": [ + "string" + ], + "optional": true, + "description": "Unique identifier of the business connection on behalf of which the message to be edited was sent" + }, { "name": "chat_id", "types": [ @@ -14937,6 +15539,14 @@ "name": "stopMessageLiveLocation", "description": "Use this method to stop updating a live location message before live_period expires. On success, if the message is not an inline message, the edited Message is returned, otherwise True is returned.", "fields": [ + { + "name": "business_connection_id", + "types": [ + "string" + ], + "optional": true, + "description": "Unique identifier of the business connection on behalf of which the message to be edited was sent" + }, { "name": "chat_id", "types": [ @@ -14978,8 +15588,16 @@ }, { "name": "editMessageReplyMarkup", - "description": "Use this method to edit only the reply markup of messages. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned.", + "description": "Use this method to edit only the reply markup of messages. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned. Note that business messages that were not sent by the bot and do not contain an inline keyboard can only be edited within 48 hours from the time they were sent.", "fields": [ + { + "name": "business_connection_id", + "types": [ + "string" + ], + "optional": true, + "description": "Unique identifier of the business connection on behalf of which the message to be edited was sent" + }, { "name": "chat_id", "types": [ @@ -15023,6 +15641,14 @@ "name": "stopPoll", "description": "Use this method to stop a poll which was sent by the bot. On success, the stopped Poll is returned.", "fields": [ + { + "name": "business_connection_id", + "types": [ + "string" + ], + "optional": true, + "description": "Unique identifier of the business connection on behalf of which the message to be edited was sent" + }, { "name": "chat_id", "types": [ @@ -16185,6 +16811,32 @@ "bool" ] }, + { + "name": "getStarTransactions", + "description": "Returns the bot's Telegram Star transactions in chronological order. On success, returns a StarTransactions object.", + "fields": [ + { + "name": "offset", + "types": [ + "int" + ], + "optional": true, + "description": "Number of transactions to skip in the response" + }, + { + "name": "limit", + "types": [ + "int" + ], + "optional": true, + "description": "The maximum number of transactions to be retrieved. Values between 1-100 are accepted. Defaults to 100.", + "default": 100 + } + ], + "return_types": [ + "StarTransactions" + ] + }, { "name": "refundStarPayment", "description": "Refunds a successful payment in Telegram Stars. Returns True on success.", diff --git a/schemas/botapi.yaml b/schemas/botapi.yaml index 4248940..38ed7f4 100644 --- a/schemas/botapi.yaml +++ b/schemas/botapi.yaml @@ -1,4 +1,4 @@ -version: 7.4.0 +version: 7.6.0 types: - name: Update @@ -524,6 +524,13 @@ types: - ChatPermissions optional: true description: 'Optional. Default chat member permissions, for groups and supergroups' + - + name: can_send_paid_media + types: + - bool + optional: true + description: 'Optional. True, if paid media messages can be sent or forwarded to the channel chat. The field is available only for channel chats.' + default: true - name: slow_mode_delay types: @@ -784,6 +791,12 @@ types: - Document optional: true description: 'Optional. Message is a general file, information about the file' + - + name: paid_media + types: + - PaidMediaInfo + optional: true + description: 'Optional. Message contains paid media; information about the paid media' - name: photo types: @@ -825,7 +838,7 @@ types: types: - string optional: true - description: 'Optional. Caption for the animation, audio, document, photo, video or voice' + description: 'Optional. Caption for the animation, audio, document, paid media, photo, video or voice' - name: caption_entities types: @@ -1279,6 +1292,12 @@ types: - Document optional: true description: 'Optional. Message is a general file, information about the file' + - + name: paid_media + types: + - PaidMediaInfo + optional: true + description: 'Optional. Message contains paid media; information about the paid media' - name: photo types: @@ -1600,37 +1619,37 @@ types: types: - int optional: false - description: 'Video width as defined by sender' + description: 'Video width as defined by the sender' - name: height types: - int optional: false - description: 'Video height as defined by sender' + description: 'Video height as defined by the sender' - name: duration types: - int optional: false - description: 'Duration of the video in seconds as defined by sender' + description: 'Duration of the video in seconds as defined by the sender' - name: thumbnail types: - PhotoSize optional: true - description: 'Optional. Animation thumbnail as defined by sender' + description: 'Optional. Animation thumbnail as defined by the sender' - name: file_name types: - string optional: true - description: 'Optional. Original animation filename as defined by sender' + description: 'Optional. Original animation filename as defined by the sender' - name: mime_type types: - string optional: true - description: 'Optional. MIME type of the file as defined by sender' + description: 'Optional. MIME type of the file as defined by the sender' - name: file_size types: @@ -1659,31 +1678,31 @@ types: types: - int optional: false - description: 'Duration of the audio in seconds as defined by sender' + description: 'Duration of the audio in seconds as defined by the sender' - name: performer types: - string optional: true - description: 'Optional. Performer of the audio as defined by sender or by audio tags' + description: 'Optional. Performer of the audio as defined by the sender or by audio tags' - name: title types: - string optional: true - description: 'Optional. Title of the audio as defined by sender or by audio tags' + description: 'Optional. Title of the audio as defined by the sender or by audio tags' - name: file_name types: - string optional: true - description: 'Optional. Original filename as defined by sender' + description: 'Optional. Original filename as defined by the sender' - name: mime_type types: - string optional: true - description: 'Optional. MIME type of the file as defined by sender' + description: 'Optional. MIME type of the file as defined by the sender' - name: file_size types: @@ -1718,19 +1737,19 @@ types: types: - PhotoSize optional: true - description: 'Optional. Document thumbnail as defined by sender' + description: 'Optional. Document thumbnail as defined by the sender' - name: file_name types: - string optional: true - description: 'Optional. Original filename as defined by sender' + description: 'Optional. Original filename as defined by the sender' - name: mime_type types: - string optional: true - description: 'Optional. MIME type of the file as defined by sender' + description: 'Optional. MIME type of the file as defined by the sender' - name: file_size types: @@ -1776,19 +1795,19 @@ types: types: - int optional: false - description: 'Video width as defined by sender' + description: 'Video width as defined by the sender' - name: height types: - int optional: false - description: 'Video height as defined by sender' + description: 'Video height as defined by the sender' - name: duration types: - int optional: false - description: 'Duration of the video in seconds as defined by sender' + description: 'Duration of the video in seconds as defined by the sender' - name: thumbnail types: @@ -1800,13 +1819,13 @@ types: types: - string optional: true - description: 'Optional. Original filename as defined by sender' + description: 'Optional. Original filename as defined by the sender' - name: mime_type types: - string optional: true - description: 'Optional. MIME type of the file as defined by sender' + description: 'Optional. MIME type of the file as defined by the sender' - name: file_size types: @@ -1835,13 +1854,13 @@ types: types: - int optional: false - description: 'Video width and height (diameter of the video message) as defined by sender' + description: 'Video width and height (diameter of the video message) as defined by the sender' - name: duration types: - int optional: false - description: 'Duration of the video in seconds as defined by sender' + description: 'Duration of the video in seconds as defined by the sender' - name: thumbnail types: @@ -1876,13 +1895,13 @@ types: types: - int optional: false - description: 'Duration of the audio in seconds as defined by sender' + description: 'Duration of the audio in seconds as defined by the sender' - name: mime_type types: - string optional: true - description: 'Optional. MIME type of the file as defined by sender' + description: 'Optional. MIME type of the file as defined by the sender' - name: file_size types: @@ -1890,6 +1909,94 @@ types: optional: true description: 'Optional. File size in bytes. It can be bigger than 2^31 and some programming languages may have difficulty/silent defects in interpreting it. But it has at most 52 significant bits, so a signed 64-bit integer or double-precision float type are safe for storing this value.' extended_by: { } + - + name: PaidMediaInfo + description: 'Describes the paid media added to a message.' + fields: + - + name: star_count + types: + - int + optional: false + description: 'The number of Telegram Stars that must be paid to buy access to the media' + - + name: paid_media + types: + - Array + optional: false + description: 'Information about the paid media' + extended_by: { } + - + name: PaidMedia + description: 'This object describes paid media. Currently, it can be one of' + fields: { } + extended_by: + - PaidMediaPreview + - PaidMediaPhoto + - PaidMediaVideo + - + name: PaidMediaPreview + description: "The paid media isn't available before the payment." + fields: + - + name: type + types: + - string + optional: false + description: 'Type of the paid media, always “preview”' + - + name: width + types: + - int + optional: true + description: 'Optional. Media width as defined by the sender' + - + name: height + types: + - int + optional: true + description: 'Optional. Media height as defined by the sender' + - + name: duration + types: + - int + optional: true + description: 'Optional. Duration of the media in seconds as defined by the sender' + extended_by: { } + - + name: PaidMediaPhoto + description: 'The paid media is a photo.' + fields: + - + name: type + types: + - string + optional: false + description: 'Type of the paid media, always “photo”' + - + name: photo + types: + - Array + optional: false + description: 'The photo' + extended_by: { } + - + name: PaidMediaVideo + description: 'The paid media is a video.' + fields: + - + name: type + types: + - string + optional: false + description: 'Type of the paid media, always “video”' + - + name: video + types: + - Video + optional: false + description: 'The video' + extended_by: { } - name: Contact description: 'This object represents a phone contact.' @@ -1967,7 +2074,7 @@ types: extended_by: { } - name: InputPollOption - description: 'This object contains information about one answer option in a poll to send.' + description: 'This object contains information about one answer option in a poll to be sent.' fields: - name: text @@ -2115,13 +2222,13 @@ types: types: - float optional: false - description: 'Latitude as defined by sender' + description: 'Latitude as defined by the sender' - name: longitude types: - float optional: false - description: 'Longitude as defined by sender' + description: 'Longitude as defined by the sender' - name: horizontal_accuracy types: @@ -3194,7 +3301,7 @@ types: types: - string optional: true - description: 'Optional. Data to be sent in a callback query to the bot when button is pressed, 1-64 bytes. Not supported for messages sent on behalf of a Telegram Business account.' + description: 'Optional. Data to be sent in a callback query to the bot when the button is pressed, 1-64 bytes' - name: web_app types: @@ -4560,7 +4667,7 @@ types: types: - WebAppInfo optional: false - description: 'Description of the Web App that will be launched when the user presses the button. The Web App will be able to send an arbitrary message on behalf of the user using the method answerWebAppQuery.' + description: "Description of the Web App that will be launched when the user presses the button. The Web App will be able to send an arbitrary message on behalf of the user using the method answerWebAppQuery. Alternatively, a t.me link to a Web App of the bot can be specified in the object instead of the Web App's URL, in which case the Web App will be opened as if the user pressed the link." extended_by: { } - name: MenuButtonDefault @@ -5138,6 +5245,80 @@ types: description: 'This object represents the contents of a file to be uploaded. Must be posted using multipart/form-data in the usual way that files are uploaded via the browser.' fields: { } extended_by: { } + - + name: InputPaidMedia + description: 'This object describes the paid media to be sent. Currently, it can be one of' + fields: { } + extended_by: + - InputPaidMediaPhoto + - InputPaidMediaVideo + - + name: InputPaidMediaPhoto + description: 'The paid media to send is a photo.' + fields: + - + name: type + types: + - string + optional: false + description: 'Type of the media, must be photo' + default: photo + - + name: media + types: + - string + optional: false + description: 'File to send. Pass a file_id to send a file that exists on the Telegram servers (recommended), pass an HTTP URL for Telegram to get a file from the Internet, or pass “attach://” to upload a new one using multipart/form-data under name. More information on Sending Files »' + extended_by: { } + - + name: InputPaidMediaVideo + description: 'The paid media to send is a video.' + fields: + - + name: type + types: + - string + optional: false + description: 'Type of the media, must be video' + default: video + - + name: media + types: + - string + optional: false + description: 'File to send. Pass a file_id to send a file that exists on the Telegram servers (recommended), pass an HTTP URL for Telegram to get a file from the Internet, or pass “attach://” to upload a new one using multipart/form-data under name. More information on Sending Files »' + - + name: thumbnail + types: + - InputFile + - string + optional: true + description: "Optional. Thumbnail of the file sent; can be ignored if thumbnail generation for the file is supported server-side. The thumbnail should be in JPEG format and less than 200 kB in size. A thumbnail's width and height should not exceed 320. Ignored if the file is not uploaded using multipart/form-data. Thumbnails can't be reused and can be only uploaded as a new file, so you can pass “attach://” if the thumbnail was uploaded using multipart/form-data under . More information on Sending Files »" + - + name: width + types: + - int + optional: true + description: 'Optional. Video width' + - + name: height + types: + - int + optional: true + description: 'Optional. Video height' + - + name: duration + types: + - int + optional: true + description: 'Optional. Video duration in seconds' + - + name: supports_streaming + types: + - bool + optional: true + description: 'Optional. Pass True if the uploaded video is suitable for streaming' + extended_by: { } - name: Sticker description: 'This object represents a sticker.' @@ -7389,7 +7570,7 @@ types: types: - string optional: false - description: 'Bot specified invoice payload' + description: 'Bot-specified invoice payload' - name: shipping_option_id types: @@ -7436,7 +7617,7 @@ types: types: - string optional: false - description: 'Bot specified invoice payload' + description: 'Bot-specified invoice payload' - name: shipping_address types: @@ -7477,7 +7658,7 @@ types: types: - string optional: false - description: 'Bot specified invoice payload' + description: 'Bot-specified invoice payload' - name: shipping_option_id types: @@ -7491,6 +7672,176 @@ types: optional: true description: 'Optional. Order information provided by the user' extended_by: { } + - + name: RevenueWithdrawalState + description: 'This object describes the state of a revenue withdrawal operation. Currently, it can be one of' + fields: { } + extended_by: + - RevenueWithdrawalStatePending + - RevenueWithdrawalStateSucceeded + - RevenueWithdrawalStateFailed + - + name: RevenueWithdrawalStatePending + description: 'The withdrawal is in progress.' + fields: + - + name: type + types: + - string + optional: false + description: 'Type of the state, always “pending”' + extended_by: { } + - + name: RevenueWithdrawalStateSucceeded + description: 'The withdrawal succeeded.' + fields: + - + name: type + types: + - string + optional: false + description: 'Type of the state, always “succeeded”' + - + name: date + types: + - int + optional: false + description: 'Date the withdrawal was completed in Unix time' + - + name: url + types: + - string + optional: false + description: 'An HTTPS URL that can be used to see transaction details' + extended_by: { } + - + name: RevenueWithdrawalStateFailed + description: 'The withdrawal failed and the transaction was refunded.' + fields: + - + name: type + types: + - string + optional: false + description: 'Type of the state, always “failed”' + extended_by: { } + - + name: TransactionPartner + description: 'This object describes the source of a transaction, or its recipient for outgoing transactions. Currently, it can be one of' + fields: { } + extended_by: + - TransactionPartnerUser + - TransactionPartnerFragment + - TransactionPartnerTelegramAds + - TransactionPartnerOther + - + name: TransactionPartnerUser + description: 'Describes a transaction with a user.' + fields: + - + name: type + types: + - string + optional: false + description: 'Type of the transaction partner, always “user”' + - + name: user + types: + - User + optional: false + description: 'Information about the user' + - + name: invoice_payload + types: + - string + optional: true + description: 'Optional. Bot-specified invoice payload' + extended_by: { } + - + name: TransactionPartnerFragment + description: 'Describes a withdrawal transaction with Fragment.' + fields: + - + name: type + types: + - string + optional: false + description: 'Type of the transaction partner, always “fragment”' + - + name: withdrawal_state + types: + - RevenueWithdrawalState + optional: true + description: 'Optional. State of the transaction if the transaction is outgoing' + extended_by: { } + - + name: TransactionPartnerTelegramAds + description: 'Describes a withdrawal transaction to the Telegram Ads platform.' + fields: + - + name: type + types: + - string + optional: false + description: 'Type of the transaction partner, always “telegram_ads”' + extended_by: { } + - + name: TransactionPartnerOther + description: 'Describes a transaction with an unknown source or recipient.' + fields: + - + name: type + types: + - string + optional: false + description: 'Type of the transaction partner, always “other”' + extended_by: { } + - + name: StarTransaction + description: 'Describes a Telegram Star transaction.' + fields: + - + name: id + types: + - string + optional: false + description: 'Unique identifier of the transaction. Coincides with the identifer of the original transaction for refund transactions. Coincides with SuccessfulPayment.telegram_payment_charge_id for successful incoming payments from users.' + - + name: amount + types: + - int + optional: false + description: 'Number of Telegram Stars transferred by the transaction' + - + name: date + types: + - int + optional: false + description: 'Date the transaction was created in Unix time' + - + name: source + types: + - TransactionPartner + optional: true + description: 'Optional. Source of an incoming transaction (e.g., a user purchasing goods or services, Fragment refunding a failed withdrawal). Only for incoming transactions' + - + name: receiver + types: + - TransactionPartner + optional: true + description: 'Optional. Receiver of an outgoing transaction (e.g., a user for a purchase refund, Fragment for a withdrawal). Only for outgoing transactions' + extended_by: { } + - + name: StarTransactions + description: 'Contains a list of Telegram Star transactions.' + fields: + - + name: transactions + types: + - Array + optional: false + description: 'The list of transactions' + extended_by: { } - name: PassportData description: 'Describes Telegram Passport data shared with the bot by the user.' @@ -8274,7 +8625,7 @@ methods: - Array - name: copyMessage - description: "Use this method to copy messages of any kind. Service messages, giveaway messages, giveaway winners messages, and invoice messages can't be copied. A quiz poll can be copied only if the value of the field correct_option_id is known to the bot. The method is analogous to the method forwardMessage, but the copied message doesn't have a link to the original message. Returns the MessageId of the sent message on success." + description: "Use this method to copy messages of any kind. Service messages, paid media messages, giveaway messages, giveaway winners messages, and invoice messages can't be copied. A quiz poll can be copied only if the value of the field correct_option_id is known to the bot. The method is analogous to the method forwardMessage, but the copied message doesn't have a link to the original message. Returns the MessageId of the sent message on success." fields: - name: chat_id @@ -8357,7 +8708,7 @@ methods: - MessageId - name: copyMessages - description: "Use this method to copy messages of any kind. If some of the specified messages can't be found or copied, they are skipped. Service messages, giveaway messages, giveaway winners messages, and invoice messages can't be copied. A quiz poll can be copied only if the value of the field correct_option_id is known to the bot. The method is analogous to the method forwardMessages, but the copied messages don't have a link to the original message. Album grouping is kept for copied messages. On success, an array of MessageId of the sent messages is returned." + description: "Use this method to copy messages of any kind. If some of the specified messages can't be found or copied, they are skipped. Service messages, paid media messages, giveaway messages, giveaway winners messages, and invoice messages can't be copied. A quiz poll can be copied only if the value of the field correct_option_id is known to the bot. The method is analogous to the method forwardMessages, but the copied messages don't have a link to the original message. Album grouping is kept for copied messages. On success, an array of MessageId of the sent messages is returned." fields: - name: chat_id @@ -9123,6 +9474,82 @@ methods: description: 'Additional interface options. A JSON-serialized object for an inline keyboard, custom reply keyboard, instructions to remove a reply keyboard or to force a reply from the user' return_types: - Message + - + name: sendPaidMedia + description: 'Use this method to send paid media to channel chats. On success, the sent Message is returned.' + fields: + - + name: chat_id + types: + - int + - string + optional: false + description: 'Unique identifier for the target chat or username of the target channel (in the format @channelusername)' + - + name: star_count + types: + - int + optional: false + description: 'The number of Telegram Stars that must be paid to buy access to the media' + - + name: media + types: + - Array + optional: false + description: 'A JSON-serialized array describing the media to be sent; up to 10 items' + - + name: caption + types: + - string + optional: true + description: 'Media caption, 0-1024 characters after entities parsing' + - + name: parse_mode + types: + - string + optional: true + description: 'Mode for parsing entities in the media caption. See formatting options for more details.' + - + name: caption_entities + types: + - Array + optional: true + description: 'A JSON-serialized list of special entities that appear in the caption, which can be specified instead of parse_mode' + - + name: show_caption_above_media + types: + - bool + optional: true + description: 'Pass True, if the caption must be shown above the message media' + - + name: disable_notification + types: + - bool + optional: true + description: 'Sends the message silently. Users will receive a notification with no sound.' + - + name: protect_content + types: + - bool + optional: true + description: 'Protects the contents of the sent message from forwarding and saving' + - + name: reply_parameters + types: + - ReplyParameters + optional: true + description: 'Description of the message to reply to' + - + name: reply_markup + types: + - InlineKeyboardMarkup + - ReplyKeyboardMarkup + - ReplyKeyboardRemove + - ForceReply + optional: true + description: 'Additional interface options. A JSON-serialized object for an inline keyboard, custom reply keyboard, instructions to remove a reply keyboard or to force a reply from the user' + return_types: + - Message - name: sendMediaGroup description: 'Use this method to send a group of photos, videos, documents or audios as an album. Documents and audio files can be only grouped in an album with messages of the same type. On success, an array of Messages that were sent is returned.' @@ -10952,8 +11379,14 @@ methods: - ChatAdministratorRights - name: editMessageText - description: 'Use this method to edit text and game messages. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned.' + description: 'Use this method to edit text and game messages. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned. Note that business messages that were not sent by the bot and do not contain an inline keyboard can only be edited within 48 hours from the time they were sent.' fields: + - + name: business_connection_id + types: + - string + optional: true + description: 'Unique identifier of the business connection on behalf of which the message to be edited was sent' - name: chat_id types: @@ -11008,8 +11441,14 @@ methods: - bool - name: editMessageCaption - description: 'Use this method to edit captions of messages. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned.' + description: 'Use this method to edit captions of messages. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned. Note that business messages that were not sent by the bot and do not contain an inline keyboard can only be edited within 48 hours from the time they were sent.' fields: + - + name: business_connection_id + types: + - string + optional: true + description: 'Unique identifier of the business connection on behalf of which the message to be edited was sent' - name: chat_id types: @@ -11064,8 +11503,14 @@ methods: - bool - name: editMessageMedia - description: "Use this method to edit animation, audio, document, photo, or video messages. If a message is part of a message album, then it can be edited only to an audio for audio albums, only to a document for document albums and to a photo or a video otherwise. When an inline message is edited, a new file can't be uploaded; use a previously uploaded file via its file_id or specify a URL. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned." + description: "Use this method to edit animation, audio, document, photo, or video messages. If a message is part of a message album, then it can be edited only to an audio for audio albums, only to a document for document albums and to a photo or a video otherwise. When an inline message is edited, a new file can't be uploaded; use a previously uploaded file via its file_id or specify a URL. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned. Note that business messages that were not sent by the bot and do not contain an inline keyboard can only be edited within 48 hours from the time they were sent." fields: + - + name: business_connection_id + types: + - string + optional: true + description: 'Unique identifier of the business connection on behalf of which the message to be edited was sent' - name: chat_id types: @@ -11104,6 +11549,12 @@ methods: name: editMessageLiveLocation description: 'Use this method to edit live location messages. A location can be edited until its live_period expires or editing is explicitly disabled by a call to stopMessageLiveLocation. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned.' fields: + - + name: business_connection_id + types: + - string + optional: true + description: 'Unique identifier of the business connection on behalf of which the message to be edited was sent' - name: chat_id types: @@ -11172,6 +11623,12 @@ methods: name: stopMessageLiveLocation description: 'Use this method to stop updating a live location message before live_period expires. On success, if the message is not an inline message, the edited Message is returned, otherwise True is returned.' fields: + - + name: business_connection_id + types: + - string + optional: true + description: 'Unique identifier of the business connection on behalf of which the message to be edited was sent' - name: chat_id types: @@ -11202,8 +11659,14 @@ methods: - bool - name: editMessageReplyMarkup - description: 'Use this method to edit only the reply markup of messages. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned.' + description: 'Use this method to edit only the reply markup of messages. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned. Note that business messages that were not sent by the bot and do not contain an inline keyboard can only be edited within 48 hours from the time they were sent.' fields: + - + name: business_connection_id + types: + - string + optional: true + description: 'Unique identifier of the business connection on behalf of which the message to be edited was sent' - name: chat_id types: @@ -11236,6 +11699,12 @@ methods: name: stopPoll description: 'Use this method to stop a poll which was sent by the bot. On success, the stopped Poll is returned.' fields: + - + name: business_connection_id + types: + - string + optional: true + description: 'Unique identifier of the business connection on behalf of which the message to be edited was sent' - name: chat_id types: @@ -12091,6 +12560,25 @@ methods: description: 'Required if ok is False. Error message in human readable form that explains the reason for failure to proceed with the checkout (e.g. "Sorry, somebody just bought the last of our amazing black T-shirts while you were busy filling out your payment details. Please choose a different color or garment!"). Telegram will display this message to the user.' return_types: - bool + - + name: getStarTransactions + description: "Returns the bot's Telegram Star transactions in chronological order. On success, returns a StarTransactions object." + fields: + - + name: offset + types: + - int + optional: true + description: 'Number of transactions to skip in the response' + - + name: limit + types: + - int + optional: true + description: 'The maximum number of transactions to be retrieved. Values between 1-100 are accepted. Defaults to 100.' + default: 100 + return_types: + - StarTransactions - name: refundStarPayment description: 'Refunds a successful payment in Telegram Stars. Returns True on success.' diff --git a/schemas/botapi_openapi.json b/schemas/botapi_openapi.json index e4e72cf..d64555c 100644 --- a/schemas/botapi_openapi.json +++ b/schemas/botapi_openapi.json @@ -3,7 +3,7 @@ "info": { "title": "Telegram Bot API", "description": "Auto-generated OpenAPI schema by TGScraper.", - "version": "7.4.0" + "version": "7.6.0" }, "servers": [ { @@ -474,6 +474,10 @@ "permissions": { "$ref": "#/components/schemas/ChatPermissions" }, + "can_send_paid_media": { + "type": "boolean", + "default": true + }, "slow_mode_delay": { "type": "integer" }, @@ -620,6 +624,9 @@ "document": { "$ref": "#/components/schemas/Document" }, + "paid_media": { + "$ref": "#/components/schemas/PaidMediaInfo" + }, "photo": { "type": "array", "items": { @@ -931,6 +938,9 @@ "document": { "$ref": "#/components/schemas/Document" }, + "paid_media": { + "$ref": "#/components/schemas/PaidMediaInfo" + }, "photo": { "type": "array", "items": { @@ -1378,6 +1388,95 @@ }, "type": "object" }, + "PaidMediaInfo": { + "description": "Describes the paid media added to a message.", + "required": [ + "star_count", + "paid_media" + ], + "properties": { + "star_count": { + "type": "integer" + }, + "paid_media": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PaidMedia" + } + } + }, + "type": "object" + }, + "PaidMedia": { + "description": "This object describes paid media. Currently, it can be one of", + "anyOf": [ + { + "$ref": "#/components/schemas/PaidMediaPreview" + }, + { + "$ref": "#/components/schemas/PaidMediaPhoto" + }, + { + "$ref": "#/components/schemas/PaidMediaVideo" + } + ] + }, + "PaidMediaPreview": { + "description": "The paid media isn't available before the payment.", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string" + }, + "width": { + "type": "integer" + }, + "height": { + "type": "integer" + }, + "duration": { + "type": "integer" + } + }, + "type": "object" + }, + "PaidMediaPhoto": { + "description": "The paid media is a photo.", + "required": [ + "type", + "photo" + ], + "properties": { + "type": { + "type": "string" + }, + "photo": { + "type": "array", + "items": { + "$ref": "#/components/schemas/PhotoSize" + } + } + }, + "type": "object" + }, + "PaidMediaVideo": { + "description": "The paid media is a video.", + "required": [ + "type", + "video" + ], + "properties": { + "type": { + "type": "string" + }, + "video": { + "$ref": "#/components/schemas/Video" + } + }, + "type": "object" + }, "Contact": { "description": "This object represents a phone contact.", "required": [ @@ -1442,7 +1541,7 @@ "type": "object" }, "InputPollOption": { - "description": "This object contains information about one answer option in a poll to send.", + "description": "This object contains information about one answer option in a poll to be sent.", "required": [ "text" ], @@ -4047,6 +4146,73 @@ "description": "This object represents the contents of a file to be uploaded. Must be posted using multipart/form-data in the usual way that files are uploaded via the browser.", "type": "object" }, + "InputPaidMedia": { + "description": "This object describes the paid media to be sent. Currently, it can be one of", + "anyOf": [ + { + "$ref": "#/components/schemas/InputPaidMediaPhoto" + }, + { + "$ref": "#/components/schemas/InputPaidMediaVideo" + } + ] + }, + "InputPaidMediaPhoto": { + "description": "The paid media to send is a photo.", + "required": [ + "type", + "media" + ], + "properties": { + "type": { + "type": "string", + "default": "photo" + }, + "media": { + "type": "string" + } + }, + "type": "object" + }, + "InputPaidMediaVideo": { + "description": "The paid media to send is a video.", + "required": [ + "type", + "media" + ], + "properties": { + "type": { + "type": "string", + "default": "video" + }, + "media": { + "type": "string" + }, + "thumbnail": { + "anyOf": [ + { + "$ref": "#/components/schemas/InputFile" + }, + { + "type": "string" + } + ] + }, + "width": { + "type": "integer" + }, + "height": { + "type": "integer" + }, + "duration": { + "type": "integer" + }, + "supports_streaming": { + "type": "boolean" + } + }, + "type": "object" + }, "Sticker": { "description": "This object represents a sticker.", "required": [ @@ -5743,6 +5909,180 @@ }, "type": "object" }, + "RevenueWithdrawalState": { + "description": "This object describes the state of a revenue withdrawal operation. Currently, it can be one of", + "anyOf": [ + { + "$ref": "#/components/schemas/RevenueWithdrawalStatePending" + }, + { + "$ref": "#/components/schemas/RevenueWithdrawalStateSucceeded" + }, + { + "$ref": "#/components/schemas/RevenueWithdrawalStateFailed" + } + ] + }, + "RevenueWithdrawalStatePending": { + "description": "The withdrawal is in progress.", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string" + } + }, + "type": "object" + }, + "RevenueWithdrawalStateSucceeded": { + "description": "The withdrawal succeeded.", + "required": [ + "type", + "date", + "url" + ], + "properties": { + "type": { + "type": "string" + }, + "date": { + "type": "integer" + }, + "url": { + "type": "string" + } + }, + "type": "object" + }, + "RevenueWithdrawalStateFailed": { + "description": "The withdrawal failed and the transaction was refunded.", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string" + } + }, + "type": "object" + }, + "TransactionPartner": { + "description": "This object describes the source of a transaction, or its recipient for outgoing transactions. Currently, it can be one of", + "anyOf": [ + { + "$ref": "#/components/schemas/TransactionPartnerUser" + }, + { + "$ref": "#/components/schemas/TransactionPartnerFragment" + }, + { + "$ref": "#/components/schemas/TransactionPartnerTelegramAds" + }, + { + "$ref": "#/components/schemas/TransactionPartnerOther" + } + ] + }, + "TransactionPartnerUser": { + "description": "Describes a transaction with a user.", + "required": [ + "type", + "user" + ], + "properties": { + "type": { + "type": "string" + }, + "user": { + "$ref": "#/components/schemas/User" + }, + "invoice_payload": { + "type": "string" + } + }, + "type": "object" + }, + "TransactionPartnerFragment": { + "description": "Describes a withdrawal transaction with Fragment.", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string" + }, + "withdrawal_state": { + "$ref": "#/components/schemas/RevenueWithdrawalState" + } + }, + "type": "object" + }, + "TransactionPartnerTelegramAds": { + "description": "Describes a withdrawal transaction to the Telegram Ads platform.", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string" + } + }, + "type": "object" + }, + "TransactionPartnerOther": { + "description": "Describes a transaction with an unknown source or recipient.", + "required": [ + "type" + ], + "properties": { + "type": { + "type": "string" + } + }, + "type": "object" + }, + "StarTransaction": { + "description": "Describes a Telegram Star transaction.", + "required": [ + "id", + "amount", + "date" + ], + "properties": { + "id": { + "type": "string" + }, + "amount": { + "type": "integer" + }, + "date": { + "type": "integer" + }, + "source": { + "$ref": "#/components/schemas/TransactionPartner" + }, + "receiver": { + "$ref": "#/components/schemas/TransactionPartner" + } + }, + "type": "object" + }, + "StarTransactions": { + "description": "Contains a list of Telegram Star transactions.", + "required": [ + "transactions" + ], + "properties": { + "transactions": { + "type": "array", + "items": { + "$ref": "#/components/schemas/StarTransaction" + } + } + }, + "type": "object" + }, "PassportData": { "description": "Describes Telegram Passport data shared with the bot by the user.", "required": [ @@ -7509,7 +7849,7 @@ } }, "/copyMessage": { - "description": "Use this method to copy messages of any kind. Service messages, giveaway messages, giveaway winners messages, and invoice messages can't be copied. A quiz poll can be copied only if the value of the field correct_option_id is known to the bot. The method is analogous to the method forwardMessage, but the copied message doesn't have a link to the original message. Returns the MessageId of the sent message on success.", + "description": "Use this method to copy messages of any kind. Service messages, paid media messages, giveaway messages, giveaway winners messages, and invoice messages can't be copied. A quiz poll can be copied only if the value of the field correct_option_id is known to the bot. The method is analogous to the method forwardMessage, but the copied message doesn't have a link to the original message. Returns the MessageId of the sent message on success.", "post": { "requestBody": { "required": true, @@ -7801,7 +8141,7 @@ } }, "/copyMessages": { - "description": "Use this method to copy messages of any kind. If some of the specified messages can't be found or copied, they are skipped. Service messages, giveaway messages, giveaway winners messages, and invoice messages can't be copied. A quiz poll can be copied only if the value of the field correct_option_id is known to the bot. The method is analogous to the method forwardMessages, but the copied messages don't have a link to the original message. Album grouping is kept for copied messages. On success, an array of MessageId of the sent messages is returned.", + "description": "Use this method to copy messages of any kind. If some of the specified messages can't be found or copied, they are skipped. Service messages, paid media messages, giveaway messages, giveaway winners messages, and invoice messages can't be copied. A quiz poll can be copied only if the value of the field correct_option_id is known to the bot. The method is analogous to the method forwardMessages, but the copied messages don't have a link to the original message. Album grouping is kept for copied messages. On success, an array of MessageId of the sent messages is returned.", "post": { "requestBody": { "required": true, @@ -10328,6 +10668,277 @@ } } }, + "/sendPaidMedia": { + "description": "Use this method to send paid media to channel chats. On success, the sent Message is returned.", + "post": { + "requestBody": { + "required": true, + "content": { + "application/json": { + "schema": { + "type": "object", + "required": [ + "chat_id", + "star_count", + "media" + ], + "properties": { + "chat_id": { + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ] + }, + "star_count": { + "type": "integer" + }, + "media": { + "type": "array", + "items": { + "$ref": "#/components/schemas/InputPaidMedia" + } + }, + "caption": { + "type": "string" + }, + "parse_mode": { + "type": "string" + }, + "caption_entities": { + "type": "array", + "items": { + "$ref": "#/components/schemas/MessageEntity" + } + }, + "show_caption_above_media": { + "type": "boolean" + }, + "disable_notification": { + "type": "boolean" + }, + "protect_content": { + "type": "boolean" + }, + "reply_parameters": { + "$ref": "#/components/schemas/ReplyParameters" + }, + "reply_markup": { + "anyOf": [ + { + "$ref": "#/components/schemas/InlineKeyboardMarkup" + }, + { + "$ref": "#/components/schemas/ReplyKeyboardMarkup" + }, + { + "$ref": "#/components/schemas/ReplyKeyboardRemove" + }, + { + "$ref": "#/components/schemas/ForceReply" + } + ] + } + } + } + }, + "application/x-www-form-urlencoded": { + "schema": { + "type": "object", + "required": [ + "chat_id", + "star_count", + "media" + ], + "properties": { + "chat_id": { + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ] + }, + "star_count": { + "type": "integer" + }, + "media": { + "type": "array", + "items": { + "$ref": "#/components/schemas/InputPaidMedia" + } + }, + "caption": { + "type": "string" + }, + "parse_mode": { + "type": "string" + }, + "caption_entities": { + "type": "array", + "items": { + "$ref": "#/components/schemas/MessageEntity" + } + }, + "show_caption_above_media": { + "type": "boolean" + }, + "disable_notification": { + "type": "boolean" + }, + "protect_content": { + "type": "boolean" + }, + "reply_parameters": { + "$ref": "#/components/schemas/ReplyParameters" + }, + "reply_markup": { + "anyOf": [ + { + "$ref": "#/components/schemas/InlineKeyboardMarkup" + }, + { + "$ref": "#/components/schemas/ReplyKeyboardMarkup" + }, + { + "$ref": "#/components/schemas/ReplyKeyboardRemove" + }, + { + "$ref": "#/components/schemas/ForceReply" + } + ] + } + } + } + }, + "multipart/form-data": { + "schema": { + "type": "object", + "required": [ + "chat_id", + "star_count", + "media" + ], + "properties": { + "chat_id": { + "anyOf": [ + { + "type": "integer" + }, + { + "type": "string" + } + ] + }, + "star_count": { + "type": "integer" + }, + "media": { + "type": "array", + "items": { + "$ref": "#/components/schemas/InputPaidMedia" + } + }, + "caption": { + "type": "string" + }, + "parse_mode": { + "type": "string" + }, + "caption_entities": { + "type": "array", + "items": { + "$ref": "#/components/schemas/MessageEntity" + } + }, + "show_caption_above_media": { + "type": "boolean" + }, + "disable_notification": { + "type": "boolean" + }, + "protect_content": { + "type": "boolean" + }, + "reply_parameters": { + "$ref": "#/components/schemas/ReplyParameters" + }, + "reply_markup": { + "anyOf": [ + { + "$ref": "#/components/schemas/InlineKeyboardMarkup" + }, + { + "$ref": "#/components/schemas/ReplyKeyboardMarkup" + }, + { + "$ref": "#/components/schemas/ReplyKeyboardRemove" + }, + { + "$ref": "#/components/schemas/ForceReply" + } + ] + } + } + } + } + } + }, + "responses": { + "200": { + "description": "Request was successful, the result is returned.", + "content": { + "application/json": { + "schema": { + "allOf": [ + { + "$ref": "#/components/schemas/Success" + }, + { + "type": "object", + "properties": { + "result": { + "$ref": "#/components/schemas/Message" + } + } + } + ] + } + } + } + }, + "400": { + "$ref": "#/components/responses/BadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthorized" + }, + "403": { + "$ref": "#/components/responses/Forbidden" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "409": { + "$ref": "#/components/responses/Conflict" + }, + "429": { + "$ref": "#/components/responses/TooManyRequests" + }, + "5XX": { + "$ref": "#/components/responses/ServerError" + }, + "default": { + "$ref": "#/components/responses/UnknownError" + } + } + } + }, "/sendMediaGroup": { "description": "Use this method to send a group of photos, videos, documents or audios as an album. Documents and audio files can be only grouped in an album with messages of the same type. On success, an array of Messages that were sent is returned.", "post": { @@ -19587,7 +20198,7 @@ } }, "/editMessageText": { - "description": "Use this method to edit text and game messages. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned.", + "description": "Use this method to edit text and game messages. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned. Note that business messages that were not sent by the bot and do not contain an inline keyboard can only be edited within 48 hours from the time they were sent.", "post": { "requestBody": { "required": true, @@ -19596,6 +20207,9 @@ "schema": { "type": "object", "properties": { + "business_connection_id": { + "type": "string" + }, "chat_id": { "anyOf": [ { @@ -19640,6 +20254,9 @@ "schema": { "type": "object", "properties": { + "business_connection_id": { + "type": "string" + }, "chat_id": { "anyOf": [ { @@ -19684,6 +20301,9 @@ "schema": { "type": "object", "properties": { + "business_connection_id": { + "type": "string" + }, "chat_id": { "anyOf": [ { @@ -19784,7 +20404,7 @@ } }, "/editMessageCaption": { - "description": "Use this method to edit captions of messages. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned.", + "description": "Use this method to edit captions of messages. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned. Note that business messages that were not sent by the bot and do not contain an inline keyboard can only be edited within 48 hours from the time they were sent.", "post": { "requestBody": { "content": { @@ -19792,6 +20412,9 @@ "schema": { "type": "object", "properties": { + "business_connection_id": { + "type": "string" + }, "chat_id": { "anyOf": [ { @@ -19833,6 +20456,9 @@ "schema": { "type": "object", "properties": { + "business_connection_id": { + "type": "string" + }, "chat_id": { "anyOf": [ { @@ -19874,6 +20500,9 @@ "schema": { "type": "object", "properties": { + "business_connection_id": { + "type": "string" + }, "chat_id": { "anyOf": [ { @@ -19971,7 +20600,7 @@ } }, "/editMessageMedia": { - "description": "Use this method to edit animation, audio, document, photo, or video messages. If a message is part of a message album, then it can be edited only to an audio for audio albums, only to a document for document albums and to a photo or a video otherwise. When an inline message is edited, a new file can't be uploaded; use a previously uploaded file via its file_id or specify a URL. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned.", + "description": "Use this method to edit animation, audio, document, photo, or video messages. If a message is part of a message album, then it can be edited only to an audio for audio albums, only to a document for document albums and to a photo or a video otherwise. When an inline message is edited, a new file can't be uploaded; use a previously uploaded file via its file_id or specify a URL. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned. Note that business messages that were not sent by the bot and do not contain an inline keyboard can only be edited within 48 hours from the time they were sent.", "post": { "requestBody": { "required": true, @@ -19980,6 +20609,9 @@ "schema": { "type": "object", "properties": { + "business_connection_id": { + "type": "string" + }, "chat_id": { "anyOf": [ { @@ -20012,6 +20644,9 @@ "schema": { "type": "object", "properties": { + "business_connection_id": { + "type": "string" + }, "chat_id": { "anyOf": [ { @@ -20044,6 +20679,9 @@ "schema": { "type": "object", "properties": { + "business_connection_id": { + "type": "string" + }, "chat_id": { "anyOf": [ { @@ -20141,6 +20779,9 @@ "schema": { "type": "object", "properties": { + "business_connection_id": { + "type": "string" + }, "chat_id": { "anyOf": [ { @@ -20189,6 +20830,9 @@ "schema": { "type": "object", "properties": { + "business_connection_id": { + "type": "string" + }, "chat_id": { "anyOf": [ { @@ -20237,6 +20881,9 @@ "schema": { "type": "object", "properties": { + "business_connection_id": { + "type": "string" + }, "chat_id": { "anyOf": [ { @@ -20349,6 +20996,9 @@ "schema": { "type": "object", "properties": { + "business_connection_id": { + "type": "string" + }, "chat_id": { "anyOf": [ { @@ -20375,6 +21025,9 @@ "schema": { "type": "object", "properties": { + "business_connection_id": { + "type": "string" + }, "chat_id": { "anyOf": [ { @@ -20401,6 +21054,9 @@ "schema": { "type": "object", "properties": { + "business_connection_id": { + "type": "string" + }, "chat_id": { "anyOf": [ { @@ -20483,7 +21139,7 @@ } }, "/editMessageReplyMarkup": { - "description": "Use this method to edit only the reply markup of messages. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned.", + "description": "Use this method to edit only the reply markup of messages. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned. Note that business messages that were not sent by the bot and do not contain an inline keyboard can only be edited within 48 hours from the time they were sent.", "post": { "requestBody": { "content": { @@ -20491,6 +21147,9 @@ "schema": { "type": "object", "properties": { + "business_connection_id": { + "type": "string" + }, "chat_id": { "anyOf": [ { @@ -20517,6 +21176,9 @@ "schema": { "type": "object", "properties": { + "business_connection_id": { + "type": "string" + }, "chat_id": { "anyOf": [ { @@ -20543,6 +21205,9 @@ "schema": { "type": "object", "properties": { + "business_connection_id": { + "type": "string" + }, "chat_id": { "anyOf": [ { @@ -20633,11 +21298,10 @@ "application/json": { "schema": { "type": "object", - "required": [ - "chat_id", - "message_id" - ], "properties": { + "business_connection_id": { + "type": "string" + }, "chat_id": { "anyOf": [ { @@ -20654,17 +21318,20 @@ "reply_markup": { "$ref": "#/components/schemas/InlineKeyboardMarkup" } - } + }, + "required": [ + "chat_id", + "message_id" + ] } }, "application/x-www-form-urlencoded": { "schema": { "type": "object", - "required": [ - "chat_id", - "message_id" - ], "properties": { + "business_connection_id": { + "type": "string" + }, "chat_id": { "anyOf": [ { @@ -20681,17 +21348,20 @@ "reply_markup": { "$ref": "#/components/schemas/InlineKeyboardMarkup" } - } + }, + "required": [ + "chat_id", + "message_id" + ] } }, "multipart/form-data": { "schema": { "type": "object", - "required": [ - "chat_id", - "message_id" - ], "properties": { + "business_connection_id": { + "type": "string" + }, "chat_id": { "anyOf": [ { @@ -20708,7 +21378,11 @@ "reply_markup": { "$ref": "#/components/schemas/InlineKeyboardMarkup" } - } + }, + "required": [ + "chat_id", + "message_id" + ] } } } @@ -24255,6 +24929,105 @@ } } }, + "/getStarTransactions": { + "description": "Returns the bot's Telegram Star transactions in chronological order. On success, returns a StarTransactions object.", + "post": { + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "offset": { + "type": "integer" + }, + "limit": { + "type": "integer", + "default": 100 + } + } + } + }, + "application/x-www-form-urlencoded": { + "schema": { + "type": "object", + "properties": { + "offset": { + "type": "integer" + }, + "limit": { + "type": "integer", + "default": 100 + } + } + } + }, + "multipart/form-data": { + "schema": { + "type": "object", + "properties": { + "offset": { + "type": "integer" + }, + "limit": { + "type": "integer", + "default": 100 + } + } + } + } + } + }, + "responses": { + "200": { + "description": "Request was successful, the result is returned.", + "content": { + "application/json": { + "schema": { + "allOf": [ + { + "$ref": "#/components/schemas/Success" + }, + { + "type": "object", + "properties": { + "result": { + "$ref": "#/components/schemas/StarTransactions" + } + } + } + ] + } + } + } + }, + "400": { + "$ref": "#/components/responses/BadRequest" + }, + "401": { + "$ref": "#/components/responses/Unauthorized" + }, + "403": { + "$ref": "#/components/responses/Forbidden" + }, + "404": { + "$ref": "#/components/responses/NotFound" + }, + "409": { + "$ref": "#/components/responses/Conflict" + }, + "429": { + "$ref": "#/components/responses/TooManyRequests" + }, + "5XX": { + "$ref": "#/components/responses/ServerError" + }, + "default": { + "$ref": "#/components/responses/UnknownError" + } + } + } + }, "/refundStarPayment": { "description": "Refunds a successful payment in Telegram Stars. Returns True on success.", "post": { diff --git a/schemas/botapi_openapi.yaml b/schemas/botapi_openapi.yaml index 1a6f80c..7060b6b 100644 --- a/schemas/botapi_openapi.yaml +++ b/schemas/botapi_openapi.yaml @@ -2,7 +2,7 @@ openapi: 3.0.0 info: title: 'Telegram Bot API' description: 'Auto-generated OpenAPI schema by TGScraper.' - version: 7.4.0 + version: 7.6.0 servers: - url: 'https://api.telegram.org/bot{token}' @@ -316,6 +316,9 @@ components: $ref: '#/components/schemas/Message' permissions: $ref: '#/components/schemas/ChatPermissions' + can_send_paid_media: + type: boolean + default: true slow_mode_delay: type: integer unrestrict_boost_count: @@ -417,6 +420,8 @@ components: $ref: '#/components/schemas/Audio' document: $ref: '#/components/schemas/Document' + paid_media: + $ref: '#/components/schemas/PaidMediaInfo' photo: type: array items: @@ -628,6 +633,8 @@ components: $ref: '#/components/schemas/Audio' document: $ref: '#/components/schemas/Document' + paid_media: + $ref: '#/components/schemas/PaidMediaInfo' photo: type: array items: @@ -934,6 +941,66 @@ components: file_size: type: integer type: object + PaidMediaInfo: + description: 'Describes the paid media added to a message.' + required: + - star_count + - paid_media + properties: + star_count: + type: integer + paid_media: + type: array + items: + $ref: '#/components/schemas/PaidMedia' + type: object + PaidMedia: + description: 'This object describes paid media. Currently, it can be one of' + anyOf: + - + $ref: '#/components/schemas/PaidMediaPreview' + - + $ref: '#/components/schemas/PaidMediaPhoto' + - + $ref: '#/components/schemas/PaidMediaVideo' + PaidMediaPreview: + description: "The paid media isn't available before the payment." + required: + - type + properties: + type: + type: string + width: + type: integer + height: + type: integer + duration: + type: integer + type: object + PaidMediaPhoto: + description: 'The paid media is a photo.' + required: + - type + - photo + properties: + type: + type: string + photo: + type: array + items: + $ref: '#/components/schemas/PhotoSize' + type: object + PaidMediaVideo: + description: 'The paid media is a video.' + required: + - type + - video + properties: + type: + type: string + video: + $ref: '#/components/schemas/Video' + type: object Contact: description: 'This object represents a phone contact.' required: @@ -978,7 +1045,7 @@ components: type: integer type: object InputPollOption: - description: 'This object contains information about one answer option in a poll to send.' + description: 'This object contains information about one answer option in a poll to be sent.' required: - text properties: @@ -2767,6 +2834,51 @@ components: InputFile: description: 'This object represents the contents of a file to be uploaded. Must be posted using multipart/form-data in the usual way that files are uploaded via the browser.' type: object + InputPaidMedia: + description: 'This object describes the paid media to be sent. Currently, it can be one of' + anyOf: + - + $ref: '#/components/schemas/InputPaidMediaPhoto' + - + $ref: '#/components/schemas/InputPaidMediaVideo' + InputPaidMediaPhoto: + description: 'The paid media to send is a photo.' + required: + - type + - media + properties: + type: + type: string + default: photo + media: + type: string + type: object + InputPaidMediaVideo: + description: 'The paid media to send is a video.' + required: + - type + - media + properties: + type: + type: string + default: video + media: + type: string + thumbnail: + anyOf: + - + $ref: '#/components/schemas/InputFile' + - + type: string + width: + type: integer + height: + type: integer + duration: + type: integer + supports_streaming: + type: boolean + type: object Sticker: description: 'This object represents a sticker.' required: @@ -3941,6 +4053,123 @@ components: order_info: $ref: '#/components/schemas/OrderInfo' type: object + RevenueWithdrawalState: + description: 'This object describes the state of a revenue withdrawal operation. Currently, it can be one of' + anyOf: + - + $ref: '#/components/schemas/RevenueWithdrawalStatePending' + - + $ref: '#/components/schemas/RevenueWithdrawalStateSucceeded' + - + $ref: '#/components/schemas/RevenueWithdrawalStateFailed' + RevenueWithdrawalStatePending: + description: 'The withdrawal is in progress.' + required: + - type + properties: + type: + type: string + type: object + RevenueWithdrawalStateSucceeded: + description: 'The withdrawal succeeded.' + required: + - type + - date + - url + properties: + type: + type: string + date: + type: integer + url: + type: string + type: object + RevenueWithdrawalStateFailed: + description: 'The withdrawal failed and the transaction was refunded.' + required: + - type + properties: + type: + type: string + type: object + TransactionPartner: + description: 'This object describes the source of a transaction, or its recipient for outgoing transactions. Currently, it can be one of' + anyOf: + - + $ref: '#/components/schemas/TransactionPartnerUser' + - + $ref: '#/components/schemas/TransactionPartnerFragment' + - + $ref: '#/components/schemas/TransactionPartnerTelegramAds' + - + $ref: '#/components/schemas/TransactionPartnerOther' + TransactionPartnerUser: + description: 'Describes a transaction with a user.' + required: + - type + - user + properties: + type: + type: string + user: + $ref: '#/components/schemas/User' + invoice_payload: + type: string + type: object + TransactionPartnerFragment: + description: 'Describes a withdrawal transaction with Fragment.' + required: + - type + properties: + type: + type: string + withdrawal_state: + $ref: '#/components/schemas/RevenueWithdrawalState' + type: object + TransactionPartnerTelegramAds: + description: 'Describes a withdrawal transaction to the Telegram Ads platform.' + required: + - type + properties: + type: + type: string + type: object + TransactionPartnerOther: + description: 'Describes a transaction with an unknown source or recipient.' + required: + - type + properties: + type: + type: string + type: object + StarTransaction: + description: 'Describes a Telegram Star transaction.' + required: + - id + - amount + - date + properties: + id: + type: string + amount: + type: integer + date: + type: integer + source: + $ref: '#/components/schemas/TransactionPartner' + receiver: + $ref: '#/components/schemas/TransactionPartner' + type: object + StarTransactions: + description: 'Contains a list of Telegram Star transactions.' + required: + - transactions + properties: + transactions: + type: array + items: + $ref: '#/components/schemas/StarTransaction' + type: object PassportData: description: 'Describes Telegram Passport data shared with the bot by the user.' required: @@ -5084,7 +5313,7 @@ paths: default: $ref: '#/components/responses/UnknownError' /copyMessage: - description: "Use this method to copy messages of any kind. Service messages, giveaway messages, giveaway winners messages, and invoice messages can't be copied. A quiz poll can be copied only if the value of the field correct_option_id is known to the bot. The method is analogous to the method forwardMessage, but the copied message doesn't have a link to the original message. Returns the MessageId of the sent message on success." + description: "Use this method to copy messages of any kind. Service messages, paid media messages, giveaway messages, giveaway winners messages, and invoice messages can't be copied. A quiz poll can be copied only if the value of the field correct_option_id is known to the bot. The method is analogous to the method forwardMessage, but the copied message doesn't have a link to the original message. Returns the MessageId of the sent message on success." post: requestBody: required: true @@ -5270,7 +5499,7 @@ paths: default: $ref: '#/components/responses/UnknownError' /copyMessages: - description: "Use this method to copy messages of any kind. If some of the specified messages can't be found or copied, they are skipped. Service messages, giveaway messages, giveaway winners messages, and invoice messages can't be copied. A quiz poll can be copied only if the value of the field correct_option_id is known to the bot. The method is analogous to the method forwardMessages, but the copied messages don't have a link to the original message. Album grouping is kept for copied messages. On success, an array of MessageId of the sent messages is returned." + description: "Use this method to copy messages of any kind. If some of the specified messages can't be found or copied, they are skipped. Service messages, paid media messages, giveaway messages, giveaway winners messages, and invoice messages can't be copied. A quiz poll can be copied only if the value of the field correct_option_id is known to the bot. The method is analogous to the method forwardMessages, but the copied messages don't have a link to the original message. Album grouping is kept for copied messages. On success, an array of MessageId of the sent messages is returned." post: requestBody: required: true @@ -6870,6 +7099,180 @@ paths: $ref: '#/components/responses/ServerError' default: $ref: '#/components/responses/UnknownError' + /sendPaidMedia: + description: 'Use this method to send paid media to channel chats. On success, the sent Message is returned.' + post: + requestBody: + required: true + content: + application/json: + schema: + type: object + required: + - chat_id + - star_count + - media + properties: + chat_id: + anyOf: + - + type: integer + - + type: string + star_count: + type: integer + media: + type: array + items: + $ref: '#/components/schemas/InputPaidMedia' + caption: + type: string + parse_mode: + type: string + caption_entities: + type: array + items: + $ref: '#/components/schemas/MessageEntity' + show_caption_above_media: + type: boolean + disable_notification: + type: boolean + protect_content: + type: boolean + reply_parameters: + $ref: '#/components/schemas/ReplyParameters' + reply_markup: + anyOf: + - + $ref: '#/components/schemas/InlineKeyboardMarkup' + - + $ref: '#/components/schemas/ReplyKeyboardMarkup' + - + $ref: '#/components/schemas/ReplyKeyboardRemove' + - + $ref: '#/components/schemas/ForceReply' + application/x-www-form-urlencoded: + schema: + type: object + required: + - chat_id + - star_count + - media + properties: + chat_id: + anyOf: + - + type: integer + - + type: string + star_count: + type: integer + media: + type: array + items: + $ref: '#/components/schemas/InputPaidMedia' + caption: + type: string + parse_mode: + type: string + caption_entities: + type: array + items: + $ref: '#/components/schemas/MessageEntity' + show_caption_above_media: + type: boolean + disable_notification: + type: boolean + protect_content: + type: boolean + reply_parameters: + $ref: '#/components/schemas/ReplyParameters' + reply_markup: + anyOf: + - + $ref: '#/components/schemas/InlineKeyboardMarkup' + - + $ref: '#/components/schemas/ReplyKeyboardMarkup' + - + $ref: '#/components/schemas/ReplyKeyboardRemove' + - + $ref: '#/components/schemas/ForceReply' + multipart/form-data: + schema: + type: object + required: + - chat_id + - star_count + - media + properties: + chat_id: + anyOf: + - + type: integer + - + type: string + star_count: + type: integer + media: + type: array + items: + $ref: '#/components/schemas/InputPaidMedia' + caption: + type: string + parse_mode: + type: string + caption_entities: + type: array + items: + $ref: '#/components/schemas/MessageEntity' + show_caption_above_media: + type: boolean + disable_notification: + type: boolean + protect_content: + type: boolean + reply_parameters: + $ref: '#/components/schemas/ReplyParameters' + reply_markup: + anyOf: + - + $ref: '#/components/schemas/InlineKeyboardMarkup' + - + $ref: '#/components/schemas/ReplyKeyboardMarkup' + - + $ref: '#/components/schemas/ReplyKeyboardRemove' + - + $ref: '#/components/schemas/ForceReply' + responses: + 200: + description: 'Request was successful, the result is returned.' + content: + application/json: + schema: + allOf: + - + $ref: '#/components/schemas/Success' + - + type: object + properties: + result: + $ref: '#/components/schemas/Message' + 400: + $ref: '#/components/responses/BadRequest' + 401: + $ref: '#/components/responses/Unauthorized' + 403: + $ref: '#/components/responses/Forbidden' + 404: + $ref: '#/components/responses/NotFound' + 409: + $ref: '#/components/responses/Conflict' + 429: + $ref: '#/components/responses/TooManyRequests' + 5XX: + $ref: '#/components/responses/ServerError' + default: + $ref: '#/components/responses/UnknownError' /sendMediaGroup: description: 'Use this method to send a group of photos, videos, documents or audios as an album. Documents and audio files can be only grouped in an album with messages of the same type. On success, an array of Messages that were sent is returned.' post: @@ -12665,7 +13068,7 @@ paths: default: $ref: '#/components/responses/UnknownError' /editMessageText: - description: 'Use this method to edit text and game messages. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned.' + description: 'Use this method to edit text and game messages. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned. Note that business messages that were not sent by the bot and do not contain an inline keyboard can only be edited within 48 hours from the time they were sent.' post: requestBody: required: true @@ -12674,6 +13077,8 @@ paths: schema: type: object properties: + business_connection_id: + type: string chat_id: anyOf: - @@ -12702,6 +13107,8 @@ paths: schema: type: object properties: + business_connection_id: + type: string chat_id: anyOf: - @@ -12730,6 +13137,8 @@ paths: schema: type: object properties: + business_connection_id: + type: string chat_id: anyOf: - @@ -12789,7 +13198,7 @@ paths: default: $ref: '#/components/responses/UnknownError' /editMessageCaption: - description: 'Use this method to edit captions of messages. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned.' + description: 'Use this method to edit captions of messages. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned. Note that business messages that were not sent by the bot and do not contain an inline keyboard can only be edited within 48 hours from the time they were sent.' post: requestBody: content: @@ -12797,6 +13206,8 @@ paths: schema: type: object properties: + business_connection_id: + type: string chat_id: anyOf: - @@ -12823,6 +13234,8 @@ paths: schema: type: object properties: + business_connection_id: + type: string chat_id: anyOf: - @@ -12849,6 +13262,8 @@ paths: schema: type: object properties: + business_connection_id: + type: string chat_id: anyOf: - @@ -12906,7 +13321,7 @@ paths: default: $ref: '#/components/responses/UnknownError' /editMessageMedia: - description: "Use this method to edit animation, audio, document, photo, or video messages. If a message is part of a message album, then it can be edited only to an audio for audio albums, only to a document for document albums and to a photo or a video otherwise. When an inline message is edited, a new file can't be uploaded; use a previously uploaded file via its file_id or specify a URL. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned." + description: "Use this method to edit animation, audio, document, photo, or video messages. If a message is part of a message album, then it can be edited only to an audio for audio albums, only to a document for document albums and to a photo or a video otherwise. When an inline message is edited, a new file can't be uploaded; use a previously uploaded file via its file_id or specify a URL. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned. Note that business messages that were not sent by the bot and do not contain an inline keyboard can only be edited within 48 hours from the time they were sent." post: requestBody: required: true @@ -12915,6 +13330,8 @@ paths: schema: type: object properties: + business_connection_id: + type: string chat_id: anyOf: - @@ -12935,6 +13352,8 @@ paths: schema: type: object properties: + business_connection_id: + type: string chat_id: anyOf: - @@ -12955,6 +13374,8 @@ paths: schema: type: object properties: + business_connection_id: + type: string chat_id: anyOf: - @@ -13015,6 +13436,8 @@ paths: schema: type: object properties: + business_connection_id: + type: string chat_id: anyOf: - @@ -13046,6 +13469,8 @@ paths: schema: type: object properties: + business_connection_id: + type: string chat_id: anyOf: - @@ -13077,6 +13502,8 @@ paths: schema: type: object properties: + business_connection_id: + type: string chat_id: anyOf: - @@ -13147,6 +13574,8 @@ paths: schema: type: object properties: + business_connection_id: + type: string chat_id: anyOf: - @@ -13163,6 +13592,8 @@ paths: schema: type: object properties: + business_connection_id: + type: string chat_id: anyOf: - @@ -13179,6 +13610,8 @@ paths: schema: type: object properties: + business_connection_id: + type: string chat_id: anyOf: - @@ -13226,7 +13659,7 @@ paths: default: $ref: '#/components/responses/UnknownError' /editMessageReplyMarkup: - description: 'Use this method to edit only the reply markup of messages. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned.' + description: 'Use this method to edit only the reply markup of messages. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned. Note that business messages that were not sent by the bot and do not contain an inline keyboard can only be edited within 48 hours from the time they were sent.' post: requestBody: content: @@ -13234,6 +13667,8 @@ paths: schema: type: object properties: + business_connection_id: + type: string chat_id: anyOf: - @@ -13250,6 +13685,8 @@ paths: schema: type: object properties: + business_connection_id: + type: string chat_id: anyOf: - @@ -13266,6 +13703,8 @@ paths: schema: type: object properties: + business_connection_id: + type: string chat_id: anyOf: - @@ -13321,10 +13760,9 @@ paths: application/json: schema: type: object - required: - - chat_id - - message_id properties: + business_connection_id: + type: string chat_id: anyOf: - @@ -13335,13 +13773,15 @@ paths: type: integer reply_markup: $ref: '#/components/schemas/InlineKeyboardMarkup' + required: + - chat_id + - message_id application/x-www-form-urlencoded: schema: type: object - required: - - chat_id - - message_id properties: + business_connection_id: + type: string chat_id: anyOf: - @@ -13352,13 +13792,15 @@ paths: type: integer reply_markup: $ref: '#/components/schemas/InlineKeyboardMarkup' + required: + - chat_id + - message_id multipart/form-data: schema: type: object - required: - - chat_id - - message_id properties: + business_connection_id: + type: string chat_id: anyOf: - @@ -13369,6 +13811,9 @@ paths: type: integer reply_markup: $ref: '#/components/schemas/InlineKeyboardMarkup' + required: + - chat_id + - message_id responses: 200: description: 'Request was successful, the result is returned.' @@ -15633,6 +16078,68 @@ paths: $ref: '#/components/responses/ServerError' default: $ref: '#/components/responses/UnknownError' + /getStarTransactions: + description: "Returns the bot's Telegram Star transactions in chronological order. On success, returns a StarTransactions object." + post: + requestBody: + content: + application/json: + schema: + type: object + properties: + offset: + type: integer + limit: + type: integer + default: 100 + application/x-www-form-urlencoded: + schema: + type: object + properties: + offset: + type: integer + limit: + type: integer + default: 100 + multipart/form-data: + schema: + type: object + properties: + offset: + type: integer + limit: + type: integer + default: 100 + responses: + 200: + description: 'Request was successful, the result is returned.' + content: + application/json: + schema: + allOf: + - + $ref: '#/components/schemas/Success' + - + type: object + properties: + result: + $ref: '#/components/schemas/StarTransactions' + 400: + $ref: '#/components/responses/BadRequest' + 401: + $ref: '#/components/responses/Unauthorized' + 403: + $ref: '#/components/responses/Forbidden' + 404: + $ref: '#/components/responses/NotFound' + 409: + $ref: '#/components/responses/Conflict' + 429: + $ref: '#/components/responses/TooManyRequests' + 5XX: + $ref: '#/components/responses/ServerError' + default: + $ref: '#/components/responses/UnknownError' /refundStarPayment: description: 'Refunds a successful payment in Telegram Stars. Returns True on success.' post: diff --git a/schemas/botapi_postman.json b/schemas/botapi_postman.json index a7a0e25..78b055e 100644 --- a/schemas/botapi_postman.json +++ b/schemas/botapi_postman.json @@ -3,7 +3,7 @@ "name": "Telegram Bot API", "description": "Auto-generated Postman collection by TGScraper.", "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json", - "version": "7.4.0" + "version": "7.6.0" }, "variable": { "key": "token", @@ -570,7 +570,7 @@ "copyMessage" ] }, - "description": "Use this method to copy messages of any kind. Service messages, giveaway messages, giveaway winners messages, and invoice messages can't be copied. A quiz poll can be copied only if the value of the field correct_option_id is known to the bot. The method is analogous to the method forwardMessage, but the copied message doesn't have a link to the original message. Returns the MessageId of the sent message on success." + "description": "Use this method to copy messages of any kind. Service messages, paid media messages, giveaway messages, giveaway winners messages, and invoice messages can't be copied. A quiz poll can be copied only if the value of the field correct_option_id is known to the bot. The method is analogous to the method forwardMessage, but the copied message doesn't have a link to the original message. Returns the MessageId of the sent message on success." } }, { @@ -637,7 +637,7 @@ "copyMessages" ] }, - "description": "Use this method to copy messages of any kind. If some of the specified messages can't be found or copied, they are skipped. Service messages, giveaway messages, giveaway winners messages, and invoice messages can't be copied. A quiz poll can be copied only if the value of the field correct_option_id is known to the bot. The method is analogous to the method forwardMessages, but the copied messages don't have a link to the original message. Album grouping is kept for copied messages. On success, an array of MessageId of the sent messages is returned." + "description": "Use this method to copy messages of any kind. If some of the specified messages can't be found or copied, they are skipped. Service messages, paid media messages, giveaway messages, giveaway winners messages, and invoice messages can't be copied. A quiz poll can be copied only if the value of the field correct_option_id is known to the bot. The method is analogous to the method forwardMessages, but the copied messages don't have a link to the original message. Album grouping is kept for copied messages. On success, an array of MessageId of the sent messages is returned." } }, { @@ -1451,6 +1451,97 @@ "description": "As of v.4.0, Telegram clients support rounded square MPEG4 videos of up to 1 minute long. Use this method to send video messages. On success, the sent Message is returned." } }, + { + "name": "sendPaidMedia", + "request": { + "method": "POST", + "body": { + "mode": "formdata", + "formdata": [ + { + "key": "chat_id", + "disabled": false, + "description": "Required. Unique identifier for the target chat or username of the target channel (in the format @channelusername)", + "type": "text" + }, + { + "key": "star_count", + "disabled": false, + "description": "Required. The number of Telegram Stars that must be paid to buy access to the media", + "type": "text" + }, + { + "key": "media", + "disabled": false, + "description": "Required. A JSON-serialized array describing the media to be sent; up to 10 items", + "type": "text" + }, + { + "key": "caption", + "disabled": true, + "description": "Optional. Media caption, 0-1024 characters after entities parsing", + "type": "text" + }, + { + "key": "parse_mode", + "disabled": true, + "description": "Optional. Mode for parsing entities in the media caption. See formatting options for more details.", + "type": "text" + }, + { + "key": "caption_entities", + "disabled": true, + "description": "Optional. A JSON-serialized list of special entities that appear in the caption, which can be specified instead of parse_mode", + "type": "text" + }, + { + "key": "show_caption_above_media", + "disabled": true, + "description": "Optional. Pass True, if the caption must be shown above the message media", + "type": "text" + }, + { + "key": "disable_notification", + "disabled": true, + "description": "Optional. Sends the message silently. Users will receive a notification with no sound.", + "type": "text" + }, + { + "key": "protect_content", + "disabled": true, + "description": "Optional. Protects the contents of the sent message from forwarding and saving", + "type": "text" + }, + { + "key": "reply_parameters", + "disabled": true, + "description": "Optional. Description of the message to reply to", + "type": "text" + }, + { + "key": "reply_markup", + "disabled": true, + "description": "Optional. Additional interface options. A JSON-serialized object for an inline keyboard, custom reply keyboard, instructions to remove a reply keyboard or to force a reply from the user", + "type": "text" + } + ] + }, + "url": { + "raw": "https://api.telegram.org/bot{{token}}/sendPaidMedia", + "protocol": "https", + "host": [ + "api", + "telegram", + "org" + ], + "path": [ + "bot{{token}}", + "sendPaidMedia" + ] + }, + "description": "Use this method to send paid media to channel chats. On success, the sent Message is returned." + } + }, { "name": "sendMediaGroup", "request": { @@ -4490,6 +4581,12 @@ "body": { "mode": "formdata", "formdata": [ + { + "key": "business_connection_id", + "disabled": true, + "description": "Optional. Unique identifier of the business connection on behalf of which the message to be edited was sent", + "type": "text" + }, { "key": "chat_id", "disabled": true, @@ -4553,7 +4650,7 @@ "editMessageText" ] }, - "description": "Use this method to edit text and game messages. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned." + "description": "Use this method to edit text and game messages. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned. Note that business messages that were not sent by the bot and do not contain an inline keyboard can only be edited within 48 hours from the time they were sent." } }, { @@ -4563,6 +4660,12 @@ "body": { "mode": "formdata", "formdata": [ + { + "key": "business_connection_id", + "disabled": true, + "description": "Optional. Unique identifier of the business connection on behalf of which the message to be edited was sent", + "type": "text" + }, { "key": "chat_id", "disabled": true, @@ -4626,7 +4729,7 @@ "editMessageCaption" ] }, - "description": "Use this method to edit captions of messages. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned." + "description": "Use this method to edit captions of messages. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned. Note that business messages that were not sent by the bot and do not contain an inline keyboard can only be edited within 48 hours from the time they were sent." } }, { @@ -4636,6 +4739,12 @@ "body": { "mode": "formdata", "formdata": [ + { + "key": "business_connection_id", + "disabled": true, + "description": "Optional. Unique identifier of the business connection on behalf of which the message to be edited was sent", + "type": "text" + }, { "key": "chat_id", "disabled": true, @@ -4681,7 +4790,7 @@ "editMessageMedia" ] }, - "description": "Use this method to edit animation, audio, document, photo, or video messages. If a message is part of a message album, then it can be edited only to an audio for audio albums, only to a document for document albums and to a photo or a video otherwise. When an inline message is edited, a new file can't be uploaded; use a previously uploaded file via its file_id or specify a URL. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned." + "description": "Use this method to edit animation, audio, document, photo, or video messages. If a message is part of a message album, then it can be edited only to an audio for audio albums, only to a document for document albums and to a photo or a video otherwise. When an inline message is edited, a new file can't be uploaded; use a previously uploaded file via its file_id or specify a URL. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned. Note that business messages that were not sent by the bot and do not contain an inline keyboard can only be edited within 48 hours from the time they were sent." } }, { @@ -4691,6 +4800,12 @@ "body": { "mode": "formdata", "formdata": [ + { + "key": "business_connection_id", + "disabled": true, + "description": "Optional. Unique identifier of the business connection on behalf of which the message to be edited was sent", + "type": "text" + }, { "key": "chat_id", "disabled": true, @@ -4776,6 +4891,12 @@ "body": { "mode": "formdata", "formdata": [ + { + "key": "business_connection_id", + "disabled": true, + "description": "Optional. Unique identifier of the business connection on behalf of which the message to be edited was sent", + "type": "text" + }, { "key": "chat_id", "disabled": true, @@ -4825,6 +4946,12 @@ "body": { "mode": "formdata", "formdata": [ + { + "key": "business_connection_id", + "disabled": true, + "description": "Optional. Unique identifier of the business connection on behalf of which the message to be edited was sent", + "type": "text" + }, { "key": "chat_id", "disabled": true, @@ -4864,7 +4991,7 @@ "editMessageReplyMarkup" ] }, - "description": "Use this method to edit only the reply markup of messages. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned." + "description": "Use this method to edit only the reply markup of messages. On success, if the edited message is not an inline message, the edited Message is returned, otherwise True is returned. Note that business messages that were not sent by the bot and do not contain an inline keyboard can only be edited within 48 hours from the time they were sent." } }, { @@ -4874,6 +5001,12 @@ "body": { "mode": "formdata", "formdata": [ + { + "key": "business_connection_id", + "disabled": true, + "description": "Optional. Unique identifier of the business connection on behalf of which the message to be edited was sent", + "type": "text" + }, { "key": "chat_id", "disabled": false, @@ -6189,6 +6322,44 @@ "description": "Once the user has confirmed their payment and shipping details, the Bot API sends the final confirmation in the form of an Update with the field pre_checkout_query. Use this method to respond to such pre-checkout queries. On success, True is returned. Note: The Bot API must receive an answer within 10 seconds after the pre-checkout query was sent." } }, + { + "name": "getStarTransactions", + "request": { + "method": "POST", + "body": { + "mode": "formdata", + "formdata": [ + { + "key": "offset", + "disabled": true, + "description": "Optional. Number of transactions to skip in the response", + "type": "text" + }, + { + "key": "limit", + "disabled": true, + "description": "Optional. The maximum number of transactions to be retrieved. Values between 1-100 are accepted. Defaults to 100.", + "type": "text", + "value": "100" + } + ] + }, + "url": { + "raw": "https://api.telegram.org/bot{{token}}/getStarTransactions", + "protocol": "https", + "host": [ + "api", + "telegram", + "org" + ], + "path": [ + "bot{{token}}", + "getStarTransactions" + ] + }, + "description": "Returns the bot's Telegram Star transactions in chronological order. On success, returns a StarTransactions object." + } + }, { "name": "refundStarPayment", "request": {