diff --git a/schemas/botapi.json b/schemas/botapi.json index e792bb3..3572a4c 100644 --- a/schemas/botapi.json +++ b/schemas/botapi.json @@ -1,5 +1,5 @@ { - "version": "6.4.0", + "version": "6.5.0", "types": [ { "name": "Update", @@ -980,6 +980,22 @@ "optional": true, "description": "Optional. Message is a service message about a successful payment, information about the payment. More about payments »" }, + { + "name": "user_shared", + "types": [ + "UserShared" + ], + "optional": true, + "description": "Optional. Service message: a user was shared with the bot" + }, + { + "name": "chat_shared", + "types": [ + "ChatShared" + ], + "optional": true, + "description": "Optional. Service message: a chat was shared with the bot" + }, { "name": "connected_website", "types": [ @@ -2130,6 +2146,52 @@ "fields": [], "extended_by": [] }, + { + "name": "UserShared", + "description": "This object contains information about the user whose identifier was shared with the bot using a KeyboardButtonRequestUser button.", + "fields": [ + { + "name": "request_id", + "types": [ + "int" + ], + "optional": false, + "description": "Identifier of the request" + }, + { + "name": "user_id", + "types": [ + "int" + ], + "optional": false, + "description": "Identifier of the shared user. This number may have more than 32 significant bits and some programming languages may have difficulty/silent defects in interpreting it. But it has at most 52 significant bits, so a 64-bit integer or double-precision float type are safe for storing this identifier. The bot may not have access to the user and could be unable to use this identifier, unless the user is already known to the bot by some other means." + } + ], + "extended_by": [] + }, + { + "name": "ChatShared", + "description": "This object contains information about the chat whose identifier was shared with the bot using a KeyboardButtonRequestChat button.", + "fields": [ + { + "name": "request_id", + "types": [ + "int" + ], + "optional": false, + "description": "Identifier of the request" + }, + { + "name": "chat_id", + "types": [ + "int" + ], + "optional": false, + "description": "Identifier of the shared chat. This number may have more than 32 significant bits and some programming languages may have difficulty/silent defects in interpreting it. But it has at most 52 significant bits, so a 64-bit integer or double-precision float type are safe for storing this identifier. The bot may not have access to the chat and could be unable to use this identifier, unless the chat is already known to the bot by some other means." + } + ], + "extended_by": [] + }, { "name": "WriteAccessAllowed", "description": "This object represents a service message about a user allowing a bot added to the attachment menu to write messages. Currently holds no information.", @@ -2324,7 +2386,7 @@ }, { "name": "KeyboardButton", - "description": "This object represents one button of the reply keyboard. For simple text buttons String can be used instead of this object to specify text of the button. Optional fields web_app, request_contact, request_location, and request_poll are mutually exclusive.", + "description": "This object represents one button of the reply keyboard. For simple text buttons, String can be used instead of this object to specify the button text. The optional fields web_app, request_user, request_chat, request_contact, request_location, and request_poll are mutually exclusive.", "fields": [ { "name": "text", @@ -2334,6 +2396,22 @@ "optional": false, "description": "Text of the button. If none of the optional fields are used, it will be sent as a message when the button is pressed" }, + { + "name": "request_user", + "types": [ + "KeyboardButtonRequestUser" + ], + "optional": true, + "description": "Optional. If specified, pressing the button will open a list of suitable users. Tapping on any user will send their identifier to the bot in a “user_shared” service message. Available in private chats only." + }, + { + "name": "request_chat", + "types": [ + "KeyboardButtonRequestChat" + ], + "optional": true, + "description": "Optional. If specified, pressing the button will open a list of suitable chats. Tapping on a chat will send its identifier to the bot in a “chat_shared” service message. Available in private chats only." + }, { "name": "request_contact", "types": [ @@ -2369,6 +2447,108 @@ ], "extended_by": [] }, + { + "name": "KeyboardButtonRequestUser", + "description": "This object defines the criteria used to request a suitable user. The identifier of the selected user will be shared with the bot when the corresponding button is pressed.", + "fields": [ + { + "name": "request_id", + "types": [ + "int" + ], + "optional": false, + "description": "Signed 32-bit identifier of the request" + }, + { + "name": "user_is_bot", + "types": [ + "bool" + ], + "optional": true, + "description": "Optional. Pass True to request a bot, pass False to request a regular user. If not specified, no additional restrictions are applied." + }, + { + "name": "user_is_premium", + "types": [ + "bool" + ], + "optional": true, + "description": "Optional. Pass True to request a premium user, pass False to request a non-premium user. If not specified, no additional restrictions are applied." + } + ], + "extended_by": [] + }, + { + "name": "KeyboardButtonRequestChat", + "description": "This object defines the criteria used to request a suitable chat. The identifier of the selected chat will be shared with the bot when the corresponding button is pressed.", + "fields": [ + { + "name": "request_id", + "types": [ + "int" + ], + "optional": false, + "description": "Signed 32-bit identifier of the request" + }, + { + "name": "chat_is_channel", + "types": [ + "bool" + ], + "optional": false, + "description": "Pass True to request a channel chat, pass False to request a group or a supergroup chat." + }, + { + "name": "chat_is_forum", + "types": [ + "bool" + ], + "optional": true, + "description": "Optional. Pass True to request a forum supergroup, pass False to request a non-forum chat. If not specified, no additional restrictions are applied." + }, + { + "name": "chat_has_username", + "types": [ + "bool" + ], + "optional": true, + "description": "Optional. Pass True to request a supergroup or a channel with a username, pass False to request a chat without a username. If not specified, no additional restrictions are applied." + }, + { + "name": "chat_is_created", + "types": [ + "bool" + ], + "optional": true, + "description": "Optional. Pass True to request a chat owned by the user. Otherwise, no additional restrictions are applied." + }, + { + "name": "user_administrator_rights", + "types": [ + "ChatAdministratorRights" + ], + "optional": true, + "description": "Optional. A JSON-serialized object listing the required administrator rights of the user in the chat. If not specified, no additional restrictions are applied." + }, + { + "name": "bot_administrator_rights", + "types": [ + "ChatAdministratorRights" + ], + "optional": true, + "description": "Optional. A JSON-serialized object listing the required administrator rights of the bot in the chat. The rights must be a subset of user_administrator_rights. If not specified, no additional restrictions are applied." + }, + { + "name": "bot_is_member", + "types": [ + "bool" + ], + "optional": true, + "description": "Optional. Pass True to request a chat with the bot as a member. Otherwise, no additional restrictions are applied." + } + ], + "extended_by": [] + }, { "name": "KeyboardButtonPollType", "description": "This object represents type of a poll, which is allowed to be created and sent when the corresponding button is pressed.", @@ -2804,7 +2984,7 @@ "bool" ], "optional": false, - "description": "True, if the administrator can add new administrators with a subset of their own privileges or demote administrators that he has promoted, directly or indirectly (promoted by administrators that were appointed by the user)" + "description": "True, if the administrator can add new administrators with a subset of their own privileges or demote administrators that they have promoted, directly or indirectly (promoted by administrators that were appointed by the user)" }, { "name": "can_change_info", @@ -2983,7 +3163,7 @@ "bool" ], "optional": false, - "description": "True, if the administrator can add new administrators with a subset of their own privileges or demote administrators that he has promoted, directly or indirectly (promoted by administrators that were appointed by the user)" + "description": "True, if the administrator can add new administrators with a subset of their own privileges or demote administrators that they have promoted, directly or indirectly (promoted by administrators that were appointed by the user)" }, { "name": "can_change_info", @@ -3095,6 +3275,86 @@ "optional": false, "description": "True, if the user is a member of the chat at the moment of the request" }, + { + "name": "can_send_messages", + "types": [ + "bool" + ], + "optional": false, + "description": "True, if the user is allowed to send text messages, contacts, invoices, locations and venues" + }, + { + "name": "can_send_audios", + "types": [ + "bool" + ], + "optional": false, + "description": "True, if the user is allowed to send audios" + }, + { + "name": "can_send_documents", + "types": [ + "bool" + ], + "optional": false, + "description": "True, if the user is allowed to send documents" + }, + { + "name": "can_send_photos", + "types": [ + "bool" + ], + "optional": false, + "description": "True, if the user is allowed to send photos" + }, + { + "name": "can_send_videos", + "types": [ + "bool" + ], + "optional": false, + "description": "True, if the user is allowed to send videos" + }, + { + "name": "can_send_video_notes", + "types": [ + "bool" + ], + "optional": false, + "description": "True, if the user is allowed to send video notes" + }, + { + "name": "can_send_voice_notes", + "types": [ + "bool" + ], + "optional": false, + "description": "True, if the user is allowed to send voice notes" + }, + { + "name": "can_send_polls", + "types": [ + "bool" + ], + "optional": false, + "description": "True, if the user is allowed to send polls" + }, + { + "name": "can_send_other_messages", + "types": [ + "bool" + ], + "optional": false, + "description": "True, if the user is allowed to send animations, games, stickers and use inline bots" + }, + { + "name": "can_add_web_page_previews", + "types": [ + "bool" + ], + "optional": false, + "description": "True, if the user is allowed to add web page previews to their messages" + }, { "name": "can_change_info", "types": [ @@ -3127,46 +3387,6 @@ "optional": false, "description": "True, if the user is allowed to create forum topics" }, - { - "name": "can_send_messages", - "types": [ - "bool" - ], - "optional": false, - "description": "True, if the user is allowed to send text messages, contacts, locations and venues" - }, - { - "name": "can_send_media_messages", - "types": [ - "bool" - ], - "optional": false, - "description": "True, if the user is allowed to send audios, documents, photos, videos, video notes and voice notes" - }, - { - "name": "can_send_polls", - "types": [ - "bool" - ], - "optional": false, - "description": "True, if the user is allowed to send polls" - }, - { - "name": "can_send_other_messages", - "types": [ - "bool" - ], - "optional": false, - "description": "True, if the user is allowed to send animations, games, stickers and use inline bots" - }, - { - "name": "can_add_web_page_previews", - "types": [ - "bool" - ], - "optional": false, - "description": "True, if the user is allowed to add web page previews to their messages" - }, { "name": "until_date", "types": [ @@ -3307,6 +3527,14 @@ "optional": false, "description": "User that sent the join request" }, + { + "name": "user_chat_id", + "types": [ + "int" + ], + "optional": false, + "description": "Identifier of a private chat with the user who sent the join request. This number may have more than 32 significant bits and some programming languages may have difficulty/silent defects in interpreting it. But it has at most 52 significant bits, so a 64-bit integer or double-precision float type are safe for storing this identifier. The bot can use this identifier for 24 hours to send messages until the join request is processed, assuming no other administrator contacted the user." + }, { "name": "date", "types": [ @@ -3344,15 +3572,55 @@ "bool" ], "optional": true, - "description": "Optional. True, if the user is allowed to send text messages, contacts, locations and venues" + "description": "Optional. True, if the user is allowed to send text messages, contacts, invoices, locations and venues" }, { - "name": "can_send_media_messages", + "name": "can_send_audios", "types": [ "bool" ], "optional": true, - "description": "Optional. True, if the user is allowed to send audios, documents, photos, videos, video notes and voice notes, implies can_send_messages" + "description": "Optional. True, if the user is allowed to send audios" + }, + { + "name": "can_send_documents", + "types": [ + "bool" + ], + "optional": true, + "description": "Optional. True, if the user is allowed to send documents" + }, + { + "name": "can_send_photos", + "types": [ + "bool" + ], + "optional": true, + "description": "Optional. True, if the user is allowed to send photos" + }, + { + "name": "can_send_videos", + "types": [ + "bool" + ], + "optional": true, + "description": "Optional. True, if the user is allowed to send videos" + }, + { + "name": "can_send_video_notes", + "types": [ + "bool" + ], + "optional": true, + "description": "Optional. True, if the user is allowed to send video notes" + }, + { + "name": "can_send_voice_notes", + "types": [ + "bool" + ], + "optional": true, + "description": "Optional. True, if the user is allowed to send voice notes" }, { "name": "can_send_polls", @@ -3360,7 +3628,7 @@ "bool" ], "optional": true, - "description": "Optional. True, if the user is allowed to send polls, implies can_send_messages" + "description": "Optional. True, if the user is allowed to send polls" }, { "name": "can_send_other_messages", @@ -3368,7 +3636,7 @@ "bool" ], "optional": true, - "description": "Optional. True, if the user is allowed to send animations, games, stickers and use inline bots, implies can_send_media_messages" + "description": "Optional. True, if the user is allowed to send animations, games, stickers and use inline bots" }, { "name": "can_add_web_page_previews", @@ -3376,7 +3644,7 @@ "bool" ], "optional": true, - "description": "Optional. True, if the user is allowed to add web page previews to their messages, implies can_send_media_messages" + "description": "Optional. True, if the user is allowed to add web page previews to their messages" }, { "name": "can_change_info", @@ -10097,6 +10365,14 @@ "optional": false, "description": "A JSON-serialized object for new user permissions" }, + { + "name": "use_independent_chat_permissions", + "types": [ + "bool" + ], + "optional": true, + "description": "Pass True if chat permissions are set independently. Otherwise, the can_send_other_messages and can_add_web_page_previews permissions will imply the can_send_messages, can_send_audios, can_send_documents, can_send_photos, can_send_videos, can_send_video_notes, and can_send_voice_notes permissions; the can_send_polls permission will imply the can_send_messages permission." + }, { "name": "until_date", "types": [ @@ -10193,7 +10469,7 @@ "bool" ], "optional": true, - "description": "Pass True if the administrator can add new administrators with a subset of their own privileges or demote administrators that he has promoted, directly or indirectly (promoted by administrators that were appointed by him)" + "description": "Pass True if the administrator can add new administrators with a subset of their own privileges or demote administrators that they have promoted, directly or indirectly (promoted by administrators that were appointed by him)" }, { "name": "can_change_info", @@ -10338,6 +10614,14 @@ ], "optional": false, "description": "A JSON-serialized object for new default chat permissions" + }, + { + "name": "use_independent_chat_permissions", + "types": [ + "bool" + ], + "optional": true, + "description": "Pass True if chat permissions are set independently. Otherwise, the can_send_other_messages and can_add_web_page_previews permissions will imply the can_send_messages, can_send_audios, can_send_documents, can_send_photos, can_send_videos, can_send_video_notes, and can_send_voice_notes permissions; the can_send_polls permission will imply the can_send_messages permission." } ], "return_types": [ @@ -10796,7 +11080,7 @@ }, { "name": "getChatMember", - "description": "Use this method to get information about a member of a chat. The method is guaranteed to work only if the bot is an administrator in the chat. Returns a ChatMember object on success.", + "description": "Use this method to get information about a member of a chat. The method is guaranteed to work for other users, only if the bot is an administrator in the chat. Returns a ChatMember object on success.", "fields": [ { "name": "chat_id", diff --git a/schemas/botapi.yaml b/schemas/botapi.yaml index 76fba8f..d2f0e9a 100644 --- a/schemas/botapi.yaml +++ b/schemas/botapi.yaml @@ -1,4 +1,4 @@ -version: 6.4.0 +version: 6.5.0 types: - name: Update @@ -739,6 +739,18 @@ types: - SuccessfulPayment optional: true description: 'Optional. Message is a service message about a successful payment, information about the payment. More about payments »' + - + name: user_shared + types: + - UserShared + optional: true + description: 'Optional. Service message: a user was shared with the bot' + - + name: chat_shared + types: + - ChatShared + optional: true + description: 'Optional. Service message: a chat was shared with the bot' - name: connected_website types: @@ -1597,6 +1609,40 @@ types: description: 'This object represents a service message about General forum topic unhidden in the chat. Currently holds no information.' fields: { } extended_by: { } + - + name: UserShared + description: 'This object contains information about the user whose identifier was shared with the bot using a KeyboardButtonRequestUser button.' + fields: + - + name: request_id + types: + - int + optional: false + description: 'Identifier of the request' + - + name: user_id + types: + - int + optional: false + description: 'Identifier of the shared user. This number may have more than 32 significant bits and some programming languages may have difficulty/silent defects in interpreting it. But it has at most 52 significant bits, so a 64-bit integer or double-precision float type are safe for storing this identifier. The bot may not have access to the user and could be unable to use this identifier, unless the user is already known to the bot by some other means.' + extended_by: { } + - + name: ChatShared + description: 'This object contains information about the chat whose identifier was shared with the bot using a KeyboardButtonRequestChat button.' + fields: + - + name: request_id + types: + - int + optional: false + description: 'Identifier of the request' + - + name: chat_id + types: + - int + optional: false + description: 'Identifier of the shared chat. This number may have more than 32 significant bits and some programming languages may have difficulty/silent defects in interpreting it. But it has at most 52 significant bits, so a 64-bit integer or double-precision float type are safe for storing this identifier. The bot may not have access to the chat and could be unable to use this identifier, unless the chat is already known to the bot by some other means.' + extended_by: { } - name: WriteAccessAllowed description: 'This object represents a service message about a user allowing a bot added to the attachment menu to write messages. Currently holds no information.' @@ -1743,7 +1789,7 @@ types: extended_by: { } - name: KeyboardButton - description: 'This object represents one button of the reply keyboard. For simple text buttons String can be used instead of this object to specify text of the button. Optional fields web_app, request_contact, request_location, and request_poll are mutually exclusive.' + description: 'This object represents one button of the reply keyboard. For simple text buttons, String can be used instead of this object to specify the button text. The optional fields web_app, request_user, request_chat, request_contact, request_location, and request_poll are mutually exclusive.' fields: - name: text @@ -1751,6 +1797,18 @@ types: - string optional: false description: 'Text of the button. If none of the optional fields are used, it will be sent as a message when the button is pressed' + - + name: request_user + types: + - KeyboardButtonRequestUser + optional: true + description: 'Optional. If specified, pressing the button will open a list of suitable users. Tapping on any user will send their identifier to the bot in a “user_shared” service message. Available in private chats only.' + - + name: request_chat + types: + - KeyboardButtonRequestChat + optional: true + description: 'Optional. If specified, pressing the button will open a list of suitable chats. Tapping on a chat will send its identifier to the bot in a “chat_shared” service message. Available in private chats only.' - name: request_contact types: @@ -1776,6 +1834,82 @@ types: optional: true description: 'Optional. If specified, the described Web App will be launched when the button is pressed. The Web App will be able to send a “web_app_data” service message. Available in private chats only.' extended_by: { } + - + name: KeyboardButtonRequestUser + description: 'This object defines the criteria used to request a suitable user. The identifier of the selected user will be shared with the bot when the corresponding button is pressed.' + fields: + - + name: request_id + types: + - int + optional: false + description: 'Signed 32-bit identifier of the request' + - + name: user_is_bot + types: + - bool + optional: true + description: 'Optional. Pass True to request a bot, pass False to request a regular user. If not specified, no additional restrictions are applied.' + - + name: user_is_premium + types: + - bool + optional: true + description: 'Optional. Pass True to request a premium user, pass False to request a non-premium user. If not specified, no additional restrictions are applied.' + extended_by: { } + - + name: KeyboardButtonRequestChat + description: 'This object defines the criteria used to request a suitable chat. The identifier of the selected chat will be shared with the bot when the corresponding button is pressed.' + fields: + - + name: request_id + types: + - int + optional: false + description: 'Signed 32-bit identifier of the request' + - + name: chat_is_channel + types: + - bool + optional: false + description: 'Pass True to request a channel chat, pass False to request a group or a supergroup chat.' + - + name: chat_is_forum + types: + - bool + optional: true + description: 'Optional. Pass True to request a forum supergroup, pass False to request a non-forum chat. If not specified, no additional restrictions are applied.' + - + name: chat_has_username + types: + - bool + optional: true + description: 'Optional. Pass True to request a supergroup or a channel with a username, pass False to request a chat without a username. If not specified, no additional restrictions are applied.' + - + name: chat_is_created + types: + - bool + optional: true + description: 'Optional. Pass True to request a chat owned by the user. Otherwise, no additional restrictions are applied.' + - + name: user_administrator_rights + types: + - ChatAdministratorRights + optional: true + description: 'Optional. A JSON-serialized object listing the required administrator rights of the user in the chat. If not specified, no additional restrictions are applied.' + - + name: bot_administrator_rights + types: + - ChatAdministratorRights + optional: true + description: 'Optional. A JSON-serialized object listing the required administrator rights of the bot in the chat. The rights must be a subset of user_administrator_rights. If not specified, no additional restrictions are applied.' + - + name: bot_is_member + types: + - bool + optional: true + description: 'Optional. Pass True to request a chat with the bot as a member. Otherwise, no additional restrictions are applied.' + extended_by: { } - name: KeyboardButtonPollType description: 'This object represents type of a poll, which is allowed to be created and sent when the corresponding button is pressed.' @@ -2102,7 +2236,7 @@ types: types: - bool optional: false - description: 'True, if the administrator can add new administrators with a subset of their own privileges or demote administrators that he has promoted, directly or indirectly (promoted by administrators that were appointed by the user)' + description: 'True, if the administrator can add new administrators with a subset of their own privileges or demote administrators that they have promoted, directly or indirectly (promoted by administrators that were appointed by the user)' - name: can_change_info types: @@ -2237,7 +2371,7 @@ types: types: - bool optional: false - description: 'True, if the administrator can add new administrators with a subset of their own privileges or demote administrators that he has promoted, directly or indirectly (promoted by administrators that were appointed by the user)' + description: 'True, if the administrator can add new administrators with a subset of their own privileges or demote administrators that they have promoted, directly or indirectly (promoted by administrators that were appointed by the user)' - name: can_change_info types: @@ -2320,6 +2454,66 @@ types: - bool optional: false description: 'True, if the user is a member of the chat at the moment of the request' + - + name: can_send_messages + types: + - bool + optional: false + description: 'True, if the user is allowed to send text messages, contacts, invoices, locations and venues' + - + name: can_send_audios + types: + - bool + optional: false + description: 'True, if the user is allowed to send audios' + - + name: can_send_documents + types: + - bool + optional: false + description: 'True, if the user is allowed to send documents' + - + name: can_send_photos + types: + - bool + optional: false + description: 'True, if the user is allowed to send photos' + - + name: can_send_videos + types: + - bool + optional: false + description: 'True, if the user is allowed to send videos' + - + name: can_send_video_notes + types: + - bool + optional: false + description: 'True, if the user is allowed to send video notes' + - + name: can_send_voice_notes + types: + - bool + optional: false + description: 'True, if the user is allowed to send voice notes' + - + name: can_send_polls + types: + - bool + optional: false + description: 'True, if the user is allowed to send polls' + - + name: can_send_other_messages + types: + - bool + optional: false + description: 'True, if the user is allowed to send animations, games, stickers and use inline bots' + - + name: can_add_web_page_previews + types: + - bool + optional: false + description: 'True, if the user is allowed to add web page previews to their messages' - name: can_change_info types: @@ -2344,36 +2538,6 @@ types: - bool optional: false description: 'True, if the user is allowed to create forum topics' - - - name: can_send_messages - types: - - bool - optional: false - description: 'True, if the user is allowed to send text messages, contacts, locations and venues' - - - name: can_send_media_messages - types: - - bool - optional: false - description: 'True, if the user is allowed to send audios, documents, photos, videos, video notes and voice notes' - - - name: can_send_polls - types: - - bool - optional: false - description: 'True, if the user is allowed to send polls' - - - name: can_send_other_messages - types: - - bool - optional: false - description: 'True, if the user is allowed to send animations, games, stickers and use inline bots' - - - name: can_add_web_page_previews - types: - - bool - optional: false - description: 'True, if the user is allowed to add web page previews to their messages' - name: until_date types: @@ -2478,6 +2642,12 @@ types: - User optional: false description: 'User that sent the join request' + - + name: user_chat_id + types: + - int + optional: false + description: 'Identifier of a private chat with the user who sent the join request. This number may have more than 32 significant bits and some programming languages may have difficulty/silent defects in interpreting it. But it has at most 52 significant bits, so a 64-bit integer or double-precision float type are safe for storing this identifier. The bot can use this identifier for 24 hours to send messages until the join request is processed, assuming no other administrator contacted the user.' - name: date types: @@ -2506,31 +2676,61 @@ types: types: - bool optional: true - description: 'Optional. True, if the user is allowed to send text messages, contacts, locations and venues' + description: 'Optional. True, if the user is allowed to send text messages, contacts, invoices, locations and venues' - - name: can_send_media_messages + name: can_send_audios types: - bool optional: true - description: 'Optional. True, if the user is allowed to send audios, documents, photos, videos, video notes and voice notes, implies can_send_messages' + description: 'Optional. True, if the user is allowed to send audios' + - + name: can_send_documents + types: + - bool + optional: true + description: 'Optional. True, if the user is allowed to send documents' + - + name: can_send_photos + types: + - bool + optional: true + description: 'Optional. True, if the user is allowed to send photos' + - + name: can_send_videos + types: + - bool + optional: true + description: 'Optional. True, if the user is allowed to send videos' + - + name: can_send_video_notes + types: + - bool + optional: true + description: 'Optional. True, if the user is allowed to send video notes' + - + name: can_send_voice_notes + types: + - bool + optional: true + description: 'Optional. True, if the user is allowed to send voice notes' - name: can_send_polls types: - bool optional: true - description: 'Optional. True, if the user is allowed to send polls, implies can_send_messages' + description: 'Optional. True, if the user is allowed to send polls' - name: can_send_other_messages types: - bool optional: true - description: 'Optional. True, if the user is allowed to send animations, games, stickers and use inline bots, implies can_send_media_messages' + description: 'Optional. True, if the user is allowed to send animations, games, stickers and use inline bots' - name: can_add_web_page_previews types: - bool optional: true - description: 'Optional. True, if the user is allowed to add web page previews to their messages, implies can_send_media_messages' + description: 'Optional. True, if the user is allowed to add web page previews to their messages' - name: can_change_info types: @@ -7579,6 +7779,12 @@ methods: - ChatPermissions optional: false description: 'A JSON-serialized object for new user permissions' + - + name: use_independent_chat_permissions + types: + - bool + optional: true + description: 'Pass True if chat permissions are set independently. Otherwise, the can_send_other_messages and can_add_web_page_previews permissions will imply the can_send_messages, can_send_audios, can_send_documents, can_send_photos, can_send_videos, can_send_video_notes, and can_send_voice_notes permissions; the can_send_polls permission will imply the can_send_messages permission.' - name: until_date types: @@ -7651,7 +7857,7 @@ methods: types: - bool optional: true - description: 'Pass True if the administrator can add new administrators with a subset of their own privileges or demote administrators that he has promoted, directly or indirectly (promoted by administrators that were appointed by him)' + description: 'Pass True if the administrator can add new administrators with a subset of their own privileges or demote administrators that they have promoted, directly or indirectly (promoted by administrators that were appointed by him)' - name: can_change_info types: @@ -7758,6 +7964,12 @@ methods: - ChatPermissions optional: false description: 'A JSON-serialized object for new default chat permissions' + - + name: use_independent_chat_permissions + types: + - bool + optional: true + description: 'Pass True if chat permissions are set independently. Otherwise, the can_send_other_messages and can_add_web_page_previews permissions will imply the can_send_messages, can_send_audios, can_send_documents, can_send_photos, can_send_videos, can_send_video_notes, and can_send_voice_notes permissions; the can_send_polls permission will imply the can_send_messages permission.' return_types: - bool - @@ -8091,7 +8303,7 @@ methods: - int - name: getChatMember - description: 'Use this method to get information about a member of a chat. The method is guaranteed to work only if the bot is an administrator in the chat. Returns a ChatMember object on success.' + description: 'Use this method to get information about a member of a chat. The method is guaranteed to work for other users, only if the bot is an administrator in the chat. Returns a ChatMember object on success.' fields: - name: chat_id diff --git a/schemas/botapi_openapi.json b/schemas/botapi_openapi.json index e5342ce..404ba31 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": "6.4.0" + "version": "6.5.0" }, "servers": [ { @@ -598,6 +598,12 @@ "successful_payment": { "$ref": "#/components/schemas/SuccessfulPayment" }, + "user_shared": { + "$ref": "#/components/schemas/UserShared" + }, + "chat_shared": { + "$ref": "#/components/schemas/ChatShared" + }, "connected_website": { "type": "string" }, @@ -1218,6 +1224,38 @@ "description": "This object represents a service message about General forum topic unhidden in the chat. Currently holds no information.", "type": "object" }, + "UserShared": { + "description": "This object contains information about the user whose identifier was shared with the bot using a KeyboardButtonRequestUser button.", + "required": [ + "request_id", + "user_id" + ], + "properties": { + "request_id": { + "type": "integer" + }, + "user_id": { + "type": "integer" + } + }, + "type": "object" + }, + "ChatShared": { + "description": "This object contains information about the chat whose identifier was shared with the bot using a KeyboardButtonRequestChat button.", + "required": [ + "request_id", + "chat_id" + ], + "properties": { + "request_id": { + "type": "integer" + }, + "chat_id": { + "type": "integer" + } + }, + "type": "object" + }, "WriteAccessAllowed": { "description": "This object represents a service message about a user allowing a bot added to the attachment menu to write messages. Currently holds no information.", "type": "object" @@ -1355,7 +1393,7 @@ "type": "object" }, "KeyboardButton": { - "description": "This object represents one button of the reply keyboard. For simple text buttons String can be used instead of this object to specify text of the button. Optional fields web_app, request_contact, request_location, and request_poll are mutually exclusive.", + "description": "This object represents one button of the reply keyboard. For simple text buttons, String can be used instead of this object to specify the button text. The optional fields web_app, request_user, request_chat, request_contact, request_location, and request_poll are mutually exclusive.", "required": [ "text" ], @@ -1363,6 +1401,12 @@ "text": { "type": "string" }, + "request_user": { + "$ref": "#/components/schemas/KeyboardButtonRequestUser" + }, + "request_chat": { + "$ref": "#/components/schemas/KeyboardButtonRequestChat" + }, "request_contact": { "type": "boolean" }, @@ -1378,6 +1422,58 @@ }, "type": "object" }, + "KeyboardButtonRequestUser": { + "description": "This object defines the criteria used to request a suitable user. The identifier of the selected user will be shared with the bot when the corresponding button is pressed.", + "required": [ + "request_id" + ], + "properties": { + "request_id": { + "type": "integer" + }, + "user_is_bot": { + "type": "boolean" + }, + "user_is_premium": { + "type": "boolean" + } + }, + "type": "object" + }, + "KeyboardButtonRequestChat": { + "description": "This object defines the criteria used to request a suitable chat. The identifier of the selected chat will be shared with the bot when the corresponding button is pressed.", + "required": [ + "request_id", + "chat_is_channel" + ], + "properties": { + "request_id": { + "type": "integer" + }, + "chat_is_channel": { + "type": "boolean" + }, + "chat_is_forum": { + "type": "boolean" + }, + "chat_has_username": { + "type": "boolean" + }, + "chat_is_created": { + "type": "boolean" + }, + "user_administrator_rights": { + "$ref": "#/components/schemas/ChatAdministratorRights" + }, + "bot_administrator_rights": { + "$ref": "#/components/schemas/ChatAdministratorRights" + }, + "bot_is_member": { + "type": "boolean" + } + }, + "type": "object" + }, "KeyboardButtonPollType": { "description": "This object represents type of a poll, which is allowed to be created and sent when the corresponding button is pressed.", "properties": { @@ -1780,15 +1876,20 @@ "status", "user", "is_member", + "can_send_messages", + "can_send_audios", + "can_send_documents", + "can_send_photos", + "can_send_videos", + "can_send_video_notes", + "can_send_voice_notes", + "can_send_polls", + "can_send_other_messages", + "can_add_web_page_previews", "can_change_info", "can_invite_users", "can_pin_messages", "can_manage_topics", - "can_send_messages", - "can_send_media_messages", - "can_send_polls", - "can_send_other_messages", - "can_add_web_page_previews", "until_date" ], "properties": { @@ -1801,6 +1902,36 @@ "is_member": { "type": "boolean" }, + "can_send_messages": { + "type": "boolean" + }, + "can_send_audios": { + "type": "boolean" + }, + "can_send_documents": { + "type": "boolean" + }, + "can_send_photos": { + "type": "boolean" + }, + "can_send_videos": { + "type": "boolean" + }, + "can_send_video_notes": { + "type": "boolean" + }, + "can_send_voice_notes": { + "type": "boolean" + }, + "can_send_polls": { + "type": "boolean" + }, + "can_send_other_messages": { + "type": "boolean" + }, + "can_add_web_page_previews": { + "type": "boolean" + }, "can_change_info": { "type": "boolean" }, @@ -1813,21 +1944,6 @@ "can_manage_topics": { "type": "boolean" }, - "can_send_messages": { - "type": "boolean" - }, - "can_send_media_messages": { - "type": "boolean" - }, - "can_send_polls": { - "type": "boolean" - }, - "can_send_other_messages": { - "type": "boolean" - }, - "can_add_web_page_previews": { - "type": "boolean" - }, "until_date": { "type": "integer" } @@ -1906,6 +2022,7 @@ "required": [ "chat", "from", + "user_chat_id", "date" ], "properties": { @@ -1915,6 +2032,9 @@ "from": { "$ref": "#/components/schemas/User" }, + "user_chat_id": { + "type": "integer" + }, "date": { "type": "integer" }, @@ -1933,7 +2053,22 @@ "can_send_messages": { "type": "boolean" }, - "can_send_media_messages": { + "can_send_audios": { + "type": "boolean" + }, + "can_send_documents": { + "type": "boolean" + }, + "can_send_photos": { + "type": "boolean" + }, + "can_send_videos": { + "type": "boolean" + }, + "can_send_video_notes": { + "type": "boolean" + }, + "can_send_voice_notes": { "type": "boolean" }, "can_send_polls": { @@ -10817,6 +10952,9 @@ "permissions": { "$ref": "#/components/schemas/ChatPermissions" }, + "use_independent_chat_permissions": { + "type": "boolean" + }, "until_date": { "type": "integer" } @@ -10848,6 +10986,9 @@ "permissions": { "$ref": "#/components/schemas/ChatPermissions" }, + "use_independent_chat_permissions": { + "type": "boolean" + }, "until_date": { "type": "integer" } @@ -10879,6 +11020,9 @@ "permissions": { "$ref": "#/components/schemas/ChatPermissions" }, + "use_independent_chat_permissions": { + "type": "boolean" + }, "until_date": { "type": "integer" } @@ -11603,6 +11747,9 @@ }, "permissions": { "$ref": "#/components/schemas/ChatPermissions" + }, + "use_independent_chat_permissions": { + "type": "boolean" } } } @@ -11627,6 +11774,9 @@ }, "permissions": { "$ref": "#/components/schemas/ChatPermissions" + }, + "use_independent_chat_permissions": { + "type": "boolean" } } } @@ -11651,6 +11801,9 @@ }, "permissions": { "$ref": "#/components/schemas/ChatPermissions" + }, + "use_independent_chat_permissions": { + "type": "boolean" } } } @@ -13900,7 +14053,7 @@ } }, "/getChatMember": { - "description": "Use this method to get information about a member of a chat. The method is guaranteed to work only if the bot is an administrator in the chat. Returns a ChatMember object on success.", + "description": "Use this method to get information about a member of a chat. The method is guaranteed to work for other users, only if the bot is an administrator in the chat. Returns a ChatMember object on success.", "post": { "requestBody": { "required": true, diff --git a/schemas/botapi_openapi.yaml b/schemas/botapi_openapi.yaml index 7b7e9d3..839d72a 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: 6.4.0 + version: 6.5.0 servers: - url: 'https://api.telegram.org/bot{token}' @@ -402,6 +402,10 @@ components: $ref: '#/components/schemas/Invoice' successful_payment: $ref: '#/components/schemas/SuccessfulPayment' + user_shared: + $ref: '#/components/schemas/UserShared' + chat_shared: + $ref: '#/components/schemas/ChatShared' connected_website: type: string write_access_allowed: @@ -829,6 +833,28 @@ components: GeneralForumTopicUnhidden: description: 'This object represents a service message about General forum topic unhidden in the chat. Currently holds no information.' type: object + UserShared: + description: 'This object contains information about the user whose identifier was shared with the bot using a KeyboardButtonRequestUser button.' + required: + - request_id + - user_id + properties: + request_id: + type: integer + user_id: + type: integer + type: object + ChatShared: + description: 'This object contains information about the chat whose identifier was shared with the bot using a KeyboardButtonRequestChat button.' + required: + - request_id + - chat_id + properties: + request_id: + type: integer + chat_id: + type: integer + type: object WriteAccessAllowed: description: 'This object represents a service message about a user allowing a bot added to the attachment menu to write messages. Currently holds no information.' type: object @@ -922,12 +948,16 @@ components: type: boolean type: object KeyboardButton: - description: 'This object represents one button of the reply keyboard. For simple text buttons String can be used instead of this object to specify text of the button. Optional fields web_app, request_contact, request_location, and request_poll are mutually exclusive.' + description: 'This object represents one button of the reply keyboard. For simple text buttons, String can be used instead of this object to specify the button text. The optional fields web_app, request_user, request_chat, request_contact, request_location, and request_poll are mutually exclusive.' required: - text properties: text: type: string + request_user: + $ref: '#/components/schemas/KeyboardButtonRequestUser' + request_chat: + $ref: '#/components/schemas/KeyboardButtonRequestChat' request_contact: type: boolean request_location: @@ -937,6 +967,41 @@ components: web_app: $ref: '#/components/schemas/WebAppInfo' type: object + KeyboardButtonRequestUser: + description: 'This object defines the criteria used to request a suitable user. The identifier of the selected user will be shared with the bot when the corresponding button is pressed.' + required: + - request_id + properties: + request_id: + type: integer + user_is_bot: + type: boolean + user_is_premium: + type: boolean + type: object + KeyboardButtonRequestChat: + description: 'This object defines the criteria used to request a suitable chat. The identifier of the selected chat will be shared with the bot when the corresponding button is pressed.' + required: + - request_id + - chat_is_channel + properties: + request_id: + type: integer + chat_is_channel: + type: boolean + chat_is_forum: + type: boolean + chat_has_username: + type: boolean + chat_is_created: + type: boolean + user_administrator_rights: + $ref: '#/components/schemas/ChatAdministratorRights' + bot_administrator_rights: + $ref: '#/components/schemas/ChatAdministratorRights' + bot_is_member: + type: boolean + type: object KeyboardButtonPollType: description: 'This object represents type of a poll, which is allowed to be created and sent when the corresponding button is pressed.' properties: @@ -1217,15 +1282,20 @@ components: - status - user - is_member + - can_send_messages + - can_send_audios + - can_send_documents + - can_send_photos + - can_send_videos + - can_send_video_notes + - can_send_voice_notes + - can_send_polls + - can_send_other_messages + - can_add_web_page_previews - can_change_info - can_invite_users - can_pin_messages - can_manage_topics - - can_send_messages - - can_send_media_messages - - can_send_polls - - can_send_other_messages - - can_add_web_page_previews - until_date properties: status: @@ -1234,6 +1304,26 @@ components: $ref: '#/components/schemas/User' is_member: type: boolean + can_send_messages: + type: boolean + can_send_audios: + type: boolean + can_send_documents: + type: boolean + can_send_photos: + type: boolean + can_send_videos: + type: boolean + can_send_video_notes: + type: boolean + can_send_voice_notes: + type: boolean + can_send_polls: + type: boolean + can_send_other_messages: + type: boolean + can_add_web_page_previews: + type: boolean can_change_info: type: boolean can_invite_users: @@ -1242,16 +1332,6 @@ components: type: boolean can_manage_topics: type: boolean - can_send_messages: - type: boolean - can_send_media_messages: - type: boolean - can_send_polls: - type: boolean - can_send_other_messages: - type: boolean - can_add_web_page_previews: - type: boolean until_date: type: integer type: object @@ -1307,12 +1387,15 @@ components: required: - chat - from + - user_chat_id - date properties: chat: $ref: '#/components/schemas/Chat' from: $ref: '#/components/schemas/User' + user_chat_id: + type: integer date: type: integer bio: @@ -1325,7 +1408,17 @@ components: properties: can_send_messages: type: boolean - can_send_media_messages: + can_send_audios: + type: boolean + can_send_documents: + type: boolean + can_send_photos: + type: boolean + can_send_videos: + type: boolean + can_send_video_notes: + type: boolean + can_send_voice_notes: type: boolean can_send_polls: type: boolean @@ -7107,6 +7200,8 @@ paths: type: integer permissions: $ref: '#/components/schemas/ChatPermissions' + use_independent_chat_permissions: + type: boolean until_date: type: integer application/x-www-form-urlencoded: @@ -7127,6 +7222,8 @@ paths: type: integer permissions: $ref: '#/components/schemas/ChatPermissions' + use_independent_chat_permissions: + type: boolean until_date: type: integer multipart/form-data: @@ -7147,6 +7244,8 @@ paths: type: integer permissions: $ref: '#/components/schemas/ChatPermissions' + use_independent_chat_permissions: + type: boolean until_date: type: integer responses: @@ -7605,6 +7704,8 @@ paths: type: string permissions: $ref: '#/components/schemas/ChatPermissions' + use_independent_chat_permissions: + type: boolean application/x-www-form-urlencoded: schema: type: object @@ -7620,6 +7721,8 @@ paths: type: string permissions: $ref: '#/components/schemas/ChatPermissions' + use_independent_chat_permissions: + type: boolean multipart/form-data: schema: type: object @@ -7635,6 +7738,8 @@ paths: type: string permissions: $ref: '#/components/schemas/ChatPermissions' + use_independent_chat_permissions: + type: boolean responses: 200: description: 'Request was successful, the result is returned.' @@ -9021,7 +9126,7 @@ paths: default: $ref: '#/components/responses/UnknownError' /getChatMember: - description: 'Use this method to get information about a member of a chat. The method is guaranteed to work only if the bot is an administrator in the chat. Returns a ChatMember object on success.' + description: 'Use this method to get information about a member of a chat. The method is guaranteed to work for other users, only if the bot is an administrator in the chat. Returns a ChatMember object on success.' post: requestBody: required: true diff --git a/schemas/botapi_postman.json b/schemas/botapi_postman.json index f0cf90c..fdf6378 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": "6.4.0" + "version": "6.5.0" }, "variable": { "key": "token", @@ -2211,6 +2211,12 @@ "description": "Required. A JSON-serialized object for new user permissions", "type": "text" }, + { + "key": "use_independent_chat_permissions", + "disabled": true, + "description": "Optional. Pass True if chat permissions are set independently. Otherwise, the can_send_other_messages and can_add_web_page_previews permissions will imply the can_send_messages, can_send_audios, can_send_documents, can_send_photos, can_send_videos, can_send_video_notes, and can_send_voice_notes permissions; the can_send_polls permission will imply the can_send_messages permission.", + "type": "text" + }, { "key": "until_date", "disabled": true, @@ -2299,7 +2305,7 @@ { "key": "can_promote_members", "disabled": true, - "description": "Optional. Pass True if the administrator can add new administrators with a subset of their own privileges or demote administrators that he has promoted, directly or indirectly (promoted by administrators that were appointed by him)", + "description": "Optional. Pass True if the administrator can add new administrators with a subset of their own privileges or demote administrators that they have promoted, directly or indirectly (promoted by administrators that were appointed by him)", "type": "text" }, { @@ -2479,6 +2485,12 @@ "disabled": false, "description": "Required. A JSON-serialized object for new default chat permissions", "type": "text" + }, + { + "key": "use_independent_chat_permissions", + "disabled": true, + "description": "Optional. Pass True if chat permissions are set independently. Otherwise, the can_send_other_messages and can_add_web_page_previews permissions will imply the can_send_messages, can_send_audios, can_send_documents, can_send_photos, can_send_videos, can_send_video_notes, and can_send_voice_notes permissions; the can_send_polls permission will imply the can_send_messages permission.", + "type": "text" } ] }, @@ -3167,7 +3179,7 @@ "getChatMember" ] }, - "description": "Use this method to get information about a member of a chat. The method is guaranteed to work only if the bot is an administrator in the chat. Returns a ChatMember object on success." + "description": "Use this method to get information about a member of a chat. The method is guaranteed to work for other users, only if the bot is an administrator in the chat. Returns a ChatMember object on success." } }, {