Added full support of Telegram Bot API 9.3 (#1747)

* Added full support of Telegram Bot API 9.3

* Fixed tests that fails

* Add tests for `GetChatGifts`, `GetUserGifts`, `RepostStory`, and `SendMessageDraft` methods

* Added changelog record
This commit is contained in:
Alex Root Junior 2026-01-02 01:45:35 +02:00 committed by GitHub
parent ce4ddb77f4
commit dcff0f99c7
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
132 changed files with 2993 additions and 457 deletions

View file

@ -42,6 +42,14 @@
"rst_description": ":code:`True`, if a Telegram Premium subscription is accepted\n",
"name": "premium_subscription",
"required": true
},
{
"type": "Boolean",
"description": "True, if transfers of unique gifts from channels are accepted",
"html_description": "<td><em>True</em>, if transfers of unique gifts from channels are accepted</td>",
"rst_description": ":code:`True`, if transfers of unique gifts from channels are accepted\n",
"name": "gifts_from_channels",
"required": true
}
],
"category": "types"

View file

@ -387,6 +387,30 @@
"name": "location",
"required": false
},
{
"type": "UserRating",
"description": "For private chats, the rating of the user if any",
"html_description": "<td><em>Optional</em>. For private chats, the rating of the user if any</td>",
"rst_description": "*Optional*. For private chats, the rating of the user if any\n",
"name": "rating",
"required": false
},
{
"type": "UniqueGiftColors",
"description": "The color scheme based on a unique gift that must be used for the chat's name, message replies and link previews",
"html_description": "<td><em>Optional</em>. The color scheme based on a unique gift that must be used for the chat's name, message replies and link previews</td>",
"rst_description": "*Optional*. The color scheme based on a unique gift that must be used for the chat's name, message replies and link previews\n",
"name": "unique_gift_colors",
"required": false
},
{
"type": "Integer",
"description": "The number of Telegram Stars a general user have to pay to send a message to the chat",
"html_description": "<td><em>Optional</em>. The number of Telegram Stars a general user have to pay to send a message to the chat</td>",
"rst_description": "*Optional*. The number of Telegram Stars a general user have to pay to send a message to the chat\n",
"name": "paid_message_star_count",
"required": false
},
{
"type": "True",
"description": "True, if gifts can be sent to the chat",

View file

@ -37,12 +37,20 @@
},
{
"type": "User",
"description": "User that completed the task; omitted if the task wasn't completed",
"html_description": "<td><em>Optional</em>. User that completed the task; omitted if the task wasn't completed</td>",
"rst_description": "*Optional*. User that completed the task; omitted if the task wasn't completed\n",
"description": "User that completed the task; omitted if the task wasn't completed by a user",
"html_description": "<td><em>Optional</em>. User that completed the task; omitted if the task wasn't completed by a user</td>",
"rst_description": "*Optional*. User that completed the task; omitted if the task wasn't completed by a user\n",
"name": "completed_by_user",
"required": false
},
{
"type": "Chat",
"description": "Chat that completed the task; omitted if the task wasn't completed by a chat",
"html_description": "<td><em>Optional</em>. Chat that completed the task; omitted if the task wasn't completed by a chat</td>",
"rst_description": "*Optional*. Chat that completed the task; omitted if the task wasn't completed by a chat\n",
"name": "completed_by_chat",
"required": false
},
{
"type": "Integer",
"description": "Point in time (Unix timestamp) when the task was completed; 0 if the task wasn't completed",

View file

@ -13,9 +13,9 @@
"annotations": [
{
"type": "Integer",
"description": "Unique identifier of the topic",
"html_description": "<td>Unique identifier of the topic</td>",
"rst_description": "Unique identifier of the topic\n",
"description": "Unique identifier of the topic. 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.",
"html_description": "<td>Unique identifier of the topic. 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.</td>",
"rst_description": "Unique identifier of the topic. 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.\n",
"name": "topic_id",
"required": true
},

View file

@ -42,6 +42,14 @@
"rst_description": "*Optional*. Unique identifier of the custom emoji shown as the topic icon\n",
"name": "icon_custom_emoji_id",
"required": false
},
{
"type": "True",
"description": "True, if the name of the topic wasn't specified explicitly by its creator and likely needs to be changed by the bot",
"html_description": "<td><em>Optional</em>. <em>True</em>, if the name of the topic wasn't specified explicitly by its creator and likely needs to be changed by the bot</td>",
"rst_description": "*Optional*. :code:`True`, if the name of the topic wasn't specified explicitly by its creator and likely needs to be changed by the bot\n",
"name": "is_name_implicit",
"required": false
}
],
"category": "types"

View file

@ -34,6 +34,14 @@
"rst_description": "*Optional*. Unique identifier of the custom emoji shown as the topic icon\n",
"name": "icon_custom_emoji_id",
"required": false
},
{
"type": "True",
"description": "True, if the name of the topic wasn't specified explicitly by its creator and likely needs to be changed by the bot",
"html_description": "<td><em>Optional</em>. <em>True</em>, if the name of the topic wasn't specified explicitly by its creator and likely needs to be changed by the bot</td>",
"rst_description": "*Optional*. :code:`True`, if the name of the topic wasn't specified explicitly by its creator and likely needs to be changed by the bot\n",
"name": "is_name_implicit",
"required": false
}
],
"category": "types"

View file

@ -43,22 +43,70 @@
"name": "upgrade_star_count",
"required": false
},
{
"type": "True",
"description": "True, if the gift can only be purchased by Telegram Premium subscribers",
"html_description": "<td><em>Optional</em>. <em>True</em>, if the gift can only be purchased by Telegram Premium subscribers</td>",
"rst_description": "*Optional*. :code:`True`, if the gift can only be purchased by Telegram Premium subscribers\n",
"name": "is_premium",
"required": false
},
{
"type": "True",
"description": "True, if the gift can be used (after being upgraded) to customize a user's appearance",
"html_description": "<td><em>Optional</em>. <em>True</em>, if the gift can be used (after being upgraded) to customize a user's appearance</td>",
"rst_description": "*Optional*. :code:`True`, if the gift can be used (after being upgraded) to customize a user's appearance\n",
"name": "has_colors",
"required": false
},
{
"type": "Integer",
"description": "The total number of the gifts of this type that can be sent; for limited gifts only",
"html_description": "<td><em>Optional</em>. The total number of the gifts of this type that can be sent; for limited gifts only</td>",
"rst_description": "*Optional*. The total number of the gifts of this type that can be sent; for limited gifts only\n",
"description": "The total number of gifts of this type that can be sent by all users; for limited gifts only",
"html_description": "<td><em>Optional</em>. The total number of gifts of this type that can be sent by all users; for limited gifts only</td>",
"rst_description": "*Optional*. The total number of gifts of this type that can be sent by all users; for limited gifts only\n",
"name": "total_count",
"required": false
},
{
"type": "Integer",
"description": "The number of remaining gifts of this type that can be sent; for limited gifts only",
"html_description": "<td><em>Optional</em>. The number of remaining gifts of this type that can be sent; for limited gifts only</td>",
"rst_description": "*Optional*. The number of remaining gifts of this type that can be sent; for limited gifts only\n",
"description": "The number of remaining gifts of this type that can be sent by all users; for limited gifts only",
"html_description": "<td><em>Optional</em>. The number of remaining gifts of this type that can be sent by all users; for limited gifts only</td>",
"rst_description": "*Optional*. The number of remaining gifts of this type that can be sent by all users; for limited gifts only\n",
"name": "remaining_count",
"required": false
},
{
"type": "Integer",
"description": "The total number of gifts of this type that can be sent by the bot; for limited gifts only",
"html_description": "<td><em>Optional</em>. The total number of gifts of this type that can be sent by the bot; for limited gifts only</td>",
"rst_description": "*Optional*. The total number of gifts of this type that can be sent by the bot; for limited gifts only\n",
"name": "personal_total_count",
"required": false
},
{
"type": "Integer",
"description": "The number of remaining gifts of this type that can be sent by the bot; for limited gifts only",
"html_description": "<td><em>Optional</em>. The number of remaining gifts of this type that can be sent by the bot; for limited gifts only</td>",
"rst_description": "*Optional*. The number of remaining gifts of this type that can be sent by the bot; for limited gifts only\n",
"name": "personal_remaining_count",
"required": false
},
{
"type": "GiftBackground",
"description": "Background of the gift",
"html_description": "<td><em>Optional</em>. Background of the gift</td>",
"rst_description": "*Optional*. Background of the gift\n",
"name": "background",
"required": false
},
{
"type": "Integer",
"description": "The total number of different unique gifts that can be obtained by upgrading the gift",
"html_description": "<td><em>Optional</em>. The total number of different unique gifts that can be obtained by upgrading the gift</td>",
"rst_description": "*Optional*. The total number of different unique gifts that can be obtained by upgrading the gift\n",
"name": "unique_gift_variant_count",
"required": false
},
{
"type": "Chat",
"description": "Information about the chat that published the gift",

View file

@ -0,0 +1,41 @@
{
"meta": {},
"group": {
"title": "Available types",
"anchor": "available-types"
},
"object": {
"anchor": "giftbackground",
"name": "GiftBackground",
"description": "This object describes the background of a gift.",
"html_description": "<p>This object describes the background of a gift.</p>",
"rst_description": "This object describes the background of a gift.",
"annotations": [
{
"type": "Integer",
"description": "Center color of the background in RGB format",
"html_description": "<td>Center color of the background in RGB format</td>",
"rst_description": "Center color of the background in RGB format\n",
"name": "center_color",
"required": true
},
{
"type": "Integer",
"description": "Edge color of the background in RGB format",
"html_description": "<td>Edge color of the background in RGB format</td>",
"rst_description": "Edge color of the background in RGB format\n",
"name": "edge_color",
"required": true
},
{
"type": "Integer",
"description": "Text color of the background in RGB format",
"html_description": "<td>Text color of the background in RGB format</td>",
"rst_description": "Text color of the background in RGB format\n",
"name": "text_color",
"required": true
}
],
"category": "types"
}
}

View file

@ -37,12 +37,20 @@
},
{
"type": "Integer",
"description": "Number of Telegram Stars that were prepaid by the sender for the ability to upgrade the gift",
"html_description": "<td><em>Optional</em>. Number of Telegram Stars that were prepaid by the sender for the ability to upgrade the gift</td>",
"rst_description": "*Optional*. Number of Telegram Stars that were prepaid by the sender for the ability to upgrade the gift\n",
"description": "Number of Telegram Stars that were prepaid for the ability to upgrade the gift",
"html_description": "<td><em>Optional</em>. Number of Telegram Stars that were prepaid for the ability to upgrade the gift</td>",
"rst_description": "*Optional*. Number of Telegram Stars that were prepaid for the ability to upgrade the gift\n",
"name": "prepaid_upgrade_star_count",
"required": false
},
{
"type": "True",
"description": "True, if the gift's upgrade was purchased after the gift was sent",
"html_description": "<td><em>Optional</em>. <em>True</em>, if the gift's upgrade was purchased after the gift was sent</td>",
"rst_description": "*Optional*. :code:`True`, if the gift's upgrade was purchased after the gift was sent\n",
"name": "is_upgrade_separate",
"required": false
},
{
"type": "True",
"description": "True, if the gift can be upgraded to a unique gift",
@ -74,6 +82,14 @@
"rst_description": "*Optional*. :code:`True`, if the sender and gift text are shown only to the gift receiver; otherwise, everyone will be able to see them\n",
"name": "is_private",
"required": false
},
{
"type": "Integer",
"description": "Unique number reserved for this gift when upgraded. See the number field in UniqueGift",
"html_description": "<td><em>Optional</em>. Unique number reserved for this gift when upgraded. See the <em>number</em> field in <a href=\"#uniquegift\">UniqueGift</a></td>",
"rst_description": "*Optional*. Unique number reserved for this gift when upgraded. See the *number* field in :class:`aiogram.types.unique_gift.UniqueGift`\n",
"name": "unique_gift_number",
"required": false
}
],
"category": "types"

View file

@ -22,8 +22,8 @@
{
"type": "String",
"description": "Mode for parsing entities in the title. See formatting options for more details.",
"html_description": "<td>Optional. Mode for parsing entities in the title. See <a href=\"#formatting-options\">formatting options</a> for more details.</td>",
"rst_description": "Optional. Mode for parsing entities in the title. See `formatting options <https://core.telegram.org/bots/api#formatting-options>`_ for more details.\n",
"html_description": "<td><em>Optional</em>. Mode for parsing entities in the title. See <a href=\"#formatting-options\">formatting options</a> for more details.</td>",
"rst_description": "*Optional*. Mode for parsing entities in the title. See `formatting options <https://core.telegram.org/bots/api#formatting-options>`_ for more details.\n",
"name": "parse_mode",
"required": false
},

View file

@ -30,8 +30,8 @@
{
"type": "String",
"description": "Mode for parsing entities in the text. See formatting options for more details.",
"html_description": "<td>Optional. Mode for parsing entities in the text. See <a href=\"https://core.telegram.org/bots/api#formatting-options\">formatting options</a> for more details.</td>",
"rst_description": "Optional. Mode for parsing entities in the text. See `formatting options <https://core.telegram.org/bots/api#formatting-options>`_ for more details.\n",
"html_description": "<td><em>Optional</em>. Mode for parsing entities in the text. See <a href=\"https://core.telegram.org/bots/api#formatting-options\">formatting options</a> for more details.</td>",
"rst_description": "*Optional*. Mode for parsing entities in the text. See `formatting options <https://core.telegram.org/bots/api#formatting-options>`_ for more details.\n",
"name": "parse_mode",
"required": false
},

View file

@ -22,16 +22,16 @@
{
"type": "KeyboardButtonRequestUsers",
"description": "If specified, pressing the button will open a list of suitable users. Identifiers of selected users will be sent to the bot in a 'users_shared' service message. Available in private chats only.",
"html_description": "<td><em>Optional.</em> If specified, pressing the button will open a list of suitable users. Identifiers of selected users will be sent to the bot in a &#8220;users_shared&#8221; service message. Available in private chats only.</td>",
"rst_description": "*Optional.* If specified, pressing the button will open a list of suitable users. Identifiers of selected users will be sent to the bot in a 'users_shared' service message. Available in private chats only.\n",
"html_description": "<td><em>Optional</em>. If specified, pressing the button will open a list of suitable users. Identifiers of selected users will be sent to the bot in a &#8220;users_shared&#8221; service message. Available in private chats only.</td>",
"rst_description": "*Optional*. If specified, pressing the button will open a list of suitable users. Identifiers of selected users will be sent to the bot in a 'users_shared' service message. Available in private chats only.\n",
"name": "request_users",
"required": false
},
{
"type": "KeyboardButtonRequestChat",
"description": "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.",
"html_description": "<td><em>Optional.</em> 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 &#8220;chat_shared&#8221; service message. Available in private chats only.</td>",
"rst_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.\n",
"html_description": "<td><em>Optional</em>. 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 &#8220;chat_shared&#8221; service message. Available in private chats only.</td>",
"rst_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.\n",
"name": "request_chat",
"required": false
},

View file

@ -21,9 +21,9 @@
},
{
"type": "Integer",
"description": "Unique identifier of a message thread to which the message belongs; for supergroups only",
"html_description": "<td><em>Optional</em>. Unique identifier of a message thread to which the message belongs; for supergroups only</td>",
"rst_description": "*Optional*. Unique identifier of a message thread to which the message belongs; for supergroups only\n",
"description": "Unique identifier of a message thread or forum topic to which the message belongs; for supergroups and private chats only",
"html_description": "<td><em>Optional</em>. Unique identifier of a message thread or forum topic to which the message belongs; for supergroups and private chats only</td>",
"rst_description": "*Optional*. Unique identifier of a message thread or forum topic to which the message belongs; for supergroups and private chats only\n",
"name": "message_thread_id",
"required": false
},
@ -101,9 +101,9 @@
},
{
"type": "True",
"description": "True, if the message is sent to a forum topic",
"html_description": "<td><em>Optional</em>. <em>True</em>, if the message is sent to a forum topic</td>",
"rst_description": "*Optional*. :code:`True`, if the message is sent to a forum topic\n",
"description": "True, if the message is sent to a topic in a forum supergroup or a private chat with the bot",
"html_description": "<td><em>Optional</em>. <em>True</em>, if the message is sent to a topic in a forum supergroup or a private chat with the bot</td>",
"rst_description": "*Optional*. :code:`True`, if the message is sent to a topic in a forum supergroup or a private chat with the bot\n",
"name": "is_topic_message",
"required": false
},
@ -579,6 +579,14 @@
"name": "unique_gift",
"required": false
},
{
"type": "GiftInfo",
"description": "Service message: upgrade of a gift was purchased after the gift was sent",
"html_description": "<td><em>Optional</em>. Service message: upgrade of a gift was purchased after the gift was sent</td>",
"rst_description": "*Optional*. Service message: upgrade of a gift was purchased after the gift was sent\n",
"name": "gift_upgrade_sent",
"required": false
},
{
"type": "String",
"description": "The domain name of the website on which the user has logged in.",

View file

@ -101,19 +101,35 @@
},
{
"type": "Integer",
"description": "Number of Telegram Stars that can be claimed by the receiver instead of the gift; omitted if the gift cannot be converted to Telegram Stars",
"html_description": "<td><em>Optional</em>. Number of Telegram Stars that can be claimed by the receiver instead of the gift; omitted if the gift cannot be converted to Telegram Stars</td>",
"rst_description": "*Optional*. Number of Telegram Stars that can be claimed by the receiver instead of the gift; omitted if the gift cannot be converted to Telegram Stars\n",
"description": "Number of Telegram Stars that can be claimed by the receiver instead of the gift; omitted if the gift cannot be converted to Telegram Stars; for gifts received on behalf of business accounts only",
"html_description": "<td><em>Optional</em>. Number of Telegram Stars that can be claimed by the receiver instead of the gift; omitted if the gift cannot be converted to Telegram Stars; for gifts received on behalf of business accounts only</td>",
"rst_description": "*Optional*. Number of Telegram Stars that can be claimed by the receiver instead of the gift; omitted if the gift cannot be converted to Telegram Stars; for gifts received on behalf of business accounts only\n",
"name": "convert_star_count",
"required": false
},
{
"type": "Integer",
"description": "Number of Telegram Stars that were paid by the sender for the ability to upgrade the gift",
"html_description": "<td><em>Optional</em>. Number of Telegram Stars that were paid by the sender for the ability to upgrade the gift</td>",
"rst_description": "*Optional*. Number of Telegram Stars that were paid by the sender for the ability to upgrade the gift\n",
"description": "Number of Telegram Stars that were paid for the ability to upgrade the gift",
"html_description": "<td><em>Optional</em>. Number of Telegram Stars that were paid for the ability to upgrade the gift</td>",
"rst_description": "*Optional*. Number of Telegram Stars that were paid for the ability to upgrade the gift\n",
"name": "prepaid_upgrade_star_count",
"required": false
},
{
"type": "True",
"description": "True, if the gift's upgrade was purchased after the gift was sent; for gifts received on behalf of business accounts only",
"html_description": "<td><em>Optional</em>. <em>True</em>, if the gift's upgrade was purchased after the gift was sent; for gifts received on behalf of business accounts only</td>",
"rst_description": "*Optional*. :code:`True`, if the gift's upgrade was purchased after the gift was sent; for gifts received on behalf of business accounts only\n",
"name": "is_upgrade_separate",
"required": false
},
{
"type": "Integer",
"description": "Unique number reserved for this gift when upgraded. See the number field in UniqueGift",
"html_description": "<td><em>Optional</em>. Unique number reserved for this gift when upgraded. See the <em>number</em> field in <a href=\"#uniquegift\">UniqueGift</a></td>",
"rst_description": "*Optional*. Unique number reserved for this gift when upgraded. See the *number* field in :class:`aiogram.types.unique_gift.UniqueGift`\n",
"name": "unique_gift_number",
"required": false
}
],
"category": "types"

View file

@ -7,9 +7,9 @@
"object": {
"anchor": "suggestedpostprice",
"name": "SuggestedPostPrice",
"description": "Desribes price of a suggested post.",
"html_description": "<p>Desribes price of a suggested post.</p>",
"rst_description": "Desribes price of a suggested post.",
"description": "Describes the price of a suggested post.",
"html_description": "<p>Describes the price of a suggested post.</p>",
"rst_description": "Describes the price of a suggested post.",
"annotations": [
{
"type": "String",

View file

@ -11,6 +11,14 @@
"html_description": "<p>This object describes a unique gift that was upgraded from a regular gift.</p>",
"rst_description": "This object describes a unique gift that was upgraded from a regular gift.",
"annotations": [
{
"type": "String",
"description": "Identifier of the regular gift from which the gift was upgraded",
"html_description": "<td>Identifier of the regular gift from which the gift was upgraded</td>",
"rst_description": "Identifier of the regular gift from which the gift was upgraded\n",
"name": "gift_id",
"required": true
},
{
"type": "String",
"description": "Human-readable name of the regular gift from which this unique gift was upgraded",
@ -59,6 +67,30 @@
"name": "backdrop",
"required": true
},
{
"type": "True",
"description": "True, if the original regular gift was exclusively purchaseable by Telegram Premium subscribers",
"html_description": "<td><em>Optional</em>. <em>True</em>, if the original regular gift was exclusively purchaseable by Telegram Premium subscribers</td>",
"rst_description": "*Optional*. :code:`True`, if the original regular gift was exclusively purchaseable by Telegram Premium subscribers\n",
"name": "is_premium",
"required": false
},
{
"type": "True",
"description": "True, if the gift is assigned from the TON blockchain and can't be resold or transferred in Telegram",
"html_description": "<td><em>Optional</em>. <em>True</em>, if the gift is assigned from the TON blockchain and can't be resold or transferred in Telegram</td>",
"rst_description": "*Optional*. :code:`True`, if the gift is assigned from the TON blockchain and can't be resold or transferred in Telegram\n",
"name": "is_from_blockchain",
"required": false
},
{
"type": "UniqueGiftColors",
"description": "The color scheme that can be used by the gift's owner for the chat's name, replies to messages and link previews; for business account gifts and gifts that are currently on sale only",
"html_description": "<td><em>Optional</em>. The color scheme that can be used by the gift's owner for the chat's name, replies to messages and link previews; for business account gifts and gifts that are currently on sale only</td>",
"rst_description": "*Optional*. The color scheme that can be used by the gift's owner for the chat's name, replies to messages and link previews; for business account gifts and gifts that are currently on sale only\n",
"name": "colors",
"required": false
},
{
"type": "Chat",
"description": "Information about the chat that published the gift",

View file

@ -0,0 +1,65 @@
{
"meta": {},
"group": {
"title": "Available types",
"anchor": "available-types"
},
"object": {
"anchor": "uniquegiftcolors",
"name": "UniqueGiftColors",
"description": "This object contains information about the color scheme for a user's name, message replies and link previews based on a unique gift.",
"html_description": "<p>This object contains information about the color scheme for a user's name, message replies and link previews based on a unique gift.</p>",
"rst_description": "This object contains information about the color scheme for a user's name, message replies and link previews based on a unique gift.",
"annotations": [
{
"type": "String",
"description": "Custom emoji identifier of the unique gift's model",
"html_description": "<td>Custom emoji identifier of the unique gift's model</td>",
"rst_description": "Custom emoji identifier of the unique gift's model\n",
"name": "model_custom_emoji_id",
"required": true
},
{
"type": "String",
"description": "Custom emoji identifier of the unique gift's symbol",
"html_description": "<td>Custom emoji identifier of the unique gift's symbol</td>",
"rst_description": "Custom emoji identifier of the unique gift's symbol\n",
"name": "symbol_custom_emoji_id",
"required": true
},
{
"type": "Integer",
"description": "Main color used in light themes; RGB format",
"html_description": "<td>Main color used in light themes; RGB format</td>",
"rst_description": "Main color used in light themes; RGB format\n",
"name": "light_theme_main_color",
"required": true
},
{
"type": "Array of Integer",
"description": "List of 1-3 additional colors used in light themes; RGB format",
"html_description": "<td>List of 1-3 additional colors used in light themes; RGB format</td>",
"rst_description": "List of 1-3 additional colors used in light themes; RGB format\n",
"name": "light_theme_other_colors",
"required": true
},
{
"type": "Integer",
"description": "Main color used in dark themes; RGB format",
"html_description": "<td>Main color used in dark themes; RGB format</td>",
"rst_description": "Main color used in dark themes; RGB format\n",
"name": "dark_theme_main_color",
"required": true
},
{
"type": "Array of Integer",
"description": "List of 1-3 additional colors used in dark themes; RGB format",
"html_description": "<td>List of 1-3 additional colors used in dark themes; RGB format</td>",
"rst_description": "List of 1-3 additional colors used in dark themes; RGB format\n",
"name": "dark_theme_other_colors",
"required": true
}
],
"category": "types"
}
}

View file

@ -21,18 +21,26 @@
},
{
"type": "String",
"description": "Origin of the gift. Currently, either 'upgrade' for gifts upgraded from regular gifts, 'transfer' for gifts transferred from other users or channels, or 'resale' for gifts bought from other users",
"html_description": "<td>Origin of the gift. Currently, either &#8220;upgrade&#8221; for gifts upgraded from regular gifts, &#8220;transfer&#8221; for gifts transferred from other users or channels, or &#8220;resale&#8221; for gifts bought from other users</td>",
"rst_description": "Origin of the gift. Currently, either 'upgrade' for gifts upgraded from regular gifts, 'transfer' for gifts transferred from other users or channels, or 'resale' for gifts bought from other users\n",
"description": "Origin of the gift. Currently, either 'upgrade' for gifts upgraded from regular gifts, 'transfer' for gifts transferred from other users or channels, 'resale' for gifts bought from other users, 'gifted_upgrade' for upgrades purchased after the gift was sent, or 'offer' for gifts bought or sold through gift purchase offers",
"html_description": "<td>Origin of the gift. Currently, either &#8220;upgrade&#8221; for gifts upgraded from regular gifts, &#8220;transfer&#8221; for gifts transferred from other users or channels, &#8220;resale&#8221; for gifts bought from other users, &#8220;gifted_upgrade&#8221; for upgrades purchased after the gift was sent, or &#8220;offer&#8221; for gifts bought or sold through gift purchase offers</td>",
"rst_description": "Origin of the gift. Currently, either 'upgrade' for gifts upgraded from regular gifts, 'transfer' for gifts transferred from other users or channels, 'resale' for gifts bought from other users, 'gifted_upgrade' for upgrades purchased after the gift was sent, or 'offer' for gifts bought or sold through gift purchase offers\n",
"name": "origin",
"required": true
},
{
"type": "String",
"description": "For gifts bought from other users, the currency in which the payment for the gift was done. Currently, one of 'XTR' for Telegram Stars or 'TON' for toncoins.",
"html_description": "<td><em>Optional</em>. For gifts bought from other users, the currency in which the payment for the gift was done. Currently, one of &#8220;XTR&#8221; for Telegram Stars or &#8220;TON&#8221; for toncoins.</td>",
"rst_description": "*Optional*. For gifts bought from other users, the currency in which the payment for the gift was done. Currently, one of 'XTR' for Telegram Stars or 'TON' for toncoins.\n",
"name": "last_resale_currency",
"required": false
},
{
"type": "Integer",
"description": "For gifts bought from other users, the price paid for the gift",
"html_description": "<td><em>Optional</em>. For gifts bought from other users, the price paid for the gift</td>",
"rst_description": "*Optional*. For gifts bought from other users, the price paid for the gift\n",
"name": "last_resale_star_count",
"description": "For gifts bought from other users, the price paid for the gift in either Telegram Stars or nanotoncoins",
"html_description": "<td><em>Optional</em>. For gifts bought from other users, the price paid for the gift in either Telegram Stars or nanotoncoins</td>",
"rst_description": "*Optional*. For gifts bought from other users, the price paid for the gift in either Telegram Stars or nanotoncoins\n",
"name": "last_resale_amount",
"required": false
},
{
@ -58,6 +66,18 @@
"rst_description": "*Optional*. Point in time (Unix timestamp) when the gift can be transferred. If it is in the past, then the gift can be transferred now\n",
"name": "next_transfer_date",
"required": false
},
{
"type": "Integer",
"description": "For gifts bought from other users, the price paid for the gift",
"html_description": "<td><em>Optional</em>. For gifts bought from other users, the price paid for the gift</td>",
"rst_description": "*Optional*. For gifts bought from other users, the price paid for the gift\n",
"name": "last_resale_star_count",
"required": false,
"deprecated": {
"version": "9.3",
"release_date": "2025-12-31"
}
}
],
"category": "types"

View file

@ -114,6 +114,14 @@
"rst_description": "*Optional*. :code:`True`, if the bot has a main Web App. Returned only in :class:`aiogram.methods.get_me.GetMe`.\n",
"name": "has_main_web_app",
"required": false
},
{
"type": "Boolean",
"description": "True, if the bot has forum topic mode enabled in private chats. Returned only in getMe.",
"html_description": "<td><em>Optional</em>. <em>True</em>, if the bot has forum topic mode enabled in private chats. Returned only in <a href=\"#getme\">getMe</a>.</td>",
"rst_description": "*Optional*. :code:`True`, if the bot has forum topic mode enabled in private chats. Returned only in :class:`aiogram.methods.get_me.GetMe`.\n",
"name": "has_topics_enabled",
"required": false
}
],
"category": "types"

49
.butcher/types/UserRating/entity.json generated Normal file
View file

@ -0,0 +1,49 @@
{
"meta": {},
"group": {
"title": "Available types",
"anchor": "available-types"
},
"object": {
"anchor": "userrating",
"name": "UserRating",
"description": "This object describes the rating of a user based on their Telegram Star spendings.",
"html_description": "<p>This object describes the rating of a user based on their Telegram Star spendings.</p>",
"rst_description": "This object describes the rating of a user based on their Telegram Star spendings.",
"annotations": [
{
"type": "Integer",
"description": "Current level of the user, indicating their reliability when purchasing digital goods and services. A higher level suggests a more trustworthy customer; a negative level is likely reason for concern.",
"html_description": "<td>Current level of the user, indicating their reliability when purchasing digital goods and services. A higher level suggests a more trustworthy customer; a negative level is likely reason for concern.</td>",
"rst_description": "Current level of the user, indicating their reliability when purchasing digital goods and services. A higher level suggests a more trustworthy customer; a negative level is likely reason for concern.\n",
"name": "level",
"required": true
},
{
"type": "Integer",
"description": "Numerical value of the user's rating; the higher the rating, the better",
"html_description": "<td>Numerical value of the user's rating; the higher the rating, the better</td>",
"rst_description": "Numerical value of the user's rating; the higher the rating, the better\n",
"name": "rating",
"required": true
},
{
"type": "Integer",
"description": "The rating value required to get the current level",
"html_description": "<td>The rating value required to get the current level</td>",
"rst_description": "The rating value required to get the current level\n",
"name": "current_level_rating",
"required": true
},
{
"type": "Integer",
"description": "The rating value required to get to the next level; omitted if the maximum level was reached",
"html_description": "<td><em>Optional</em>. The rating value required to get to the next level; omitted if the maximum level was reached</td>",
"rst_description": "*Optional*. The rating value required to get to the next level; omitted if the maximum level was reached\n",
"name": "next_level_rating",
"required": false
}
],
"category": "types"
}
}