{
  "openapi": "3.0.0",
  "info": {
    "title": "Telegram Bot API",
    "description": "Auto-generated OpenAPI schema by TGScraper.",
    "version": "7.9.0"
  },
  "servers": [
    {
      "url": "https://api.telegram.org/bot{token}",
      "variables": {
        "token": {
          "default": "1234:AAbbcc",
          "description": "Bot's unique authentication token, given by @BotFather."
        }
      }
    }
  ],
  "externalDocs": {
    "description": "Official Telegram Bot API documentation.",
    "url": "https://core.telegram.org/bots/api"
  },
  "components": {
    "responses": {
      "BadRequest": {
        "description": "Bad request, you have provided malformed data.",
        "content": {
          "application/json": {
            "schema": { "$ref": "#/components/schemas/Error" }
          }
        }
      },
      "Unauthorized": {
        "description": "The authorization token is invalid or it has been revoked.",
        "content": {
          "application/json": {
            "schema": { "$ref": "#/components/schemas/Error" }
          }
        }
      },
      "Forbidden": {
        "description": "This action is forbidden.",
        "content": {
          "application/json": {
            "schema": { "$ref": "#/components/schemas/Error" }
          }
        }
      },
      "NotFound": {
        "description": "The specified resource was not found.",
        "content": {
          "application/json": {
            "schema": { "$ref": "#/components/schemas/Error" }
          }
        }
      },
      "Conflict": {
        "description": "There is a conflict with another instance using webhook or polling.",
        "content": {
          "application/json": {
            "schema": { "$ref": "#/components/schemas/Error" }
          }
        }
      },
      "TooManyRequests": {
        "description": "You're doing too many requests, retry after a while.",
        "content": {
          "application/json": {
            "schema": { "$ref": "#/components/schemas/Error" }
          }
        }
      },
      "ServerError": {
        "description": "The bot API is experiencing some issues, try again later.",
        "content": {
          "application/json": {
            "schema": { "$ref": "#/components/schemas/Error" }
          }
        }
      },
      "UnknownError": {
        "description": "An unknown error occurred.",
        "content": {
          "application/json": {
            "schema": { "$ref": "#/components/schemas/Error" }
          }
        }
      }
    },
    "schemas": {
      "Response": {
        "type": "object",
        "description": "Represents the default response object.",
        "required": ["ok"],
        "properties": { "ok": { "type": "boolean" } }
      },
      "Success": {
        "description": "Request was successful, the result is returned.",
        "allOf": [
          { "$ref": "#/components/schemas/Response" },
          {
            "type": "object",
            "required": ["result"],
            "properties": { "result": { "type": "object" } }
          }
        ]
      },
      "Error": {
        "description": "Request was unsuccessful, so an error occurred.",
        "allOf": [
          { "$ref": "#/components/schemas/Response" },
          {
            "type": "object",
            "required": ["error_code", "description"],
            "properties": {
              "error_code": { "type": "integer" },
              "description": { "type": "string" },
              "parameters": {
                "$ref": "#/components/schemas/ResponseParameters"
              }
            }
          }
        ]
      },
      "Update": {
        "description": "This object represents an incoming update.At most one of the optional parameters can be present in any given update.",
        "required": ["update_id"],
        "properties": {
          "update_id": { "type": "integer" },
          "message": { "$ref": "#/components/schemas/Message" },
          "edited_message": { "$ref": "#/components/schemas/Message" },
          "channel_post": { "$ref": "#/components/schemas/Message" },
          "edited_channel_post": { "$ref": "#/components/schemas/Message" },
          "business_connection": {
            "$ref": "#/components/schemas/BusinessConnection"
          },
          "business_message": { "$ref": "#/components/schemas/Message" },
          "edited_business_message": { "$ref": "#/components/schemas/Message" },
          "deleted_business_messages": {
            "$ref": "#/components/schemas/BusinessMessagesDeleted"
          },
          "message_reaction": {
            "$ref": "#/components/schemas/MessageReactionUpdated"
          },
          "message_reaction_count": {
            "$ref": "#/components/schemas/MessageReactionCountUpdated"
          },
          "inline_query": { "$ref": "#/components/schemas/InlineQuery" },
          "chosen_inline_result": {
            "$ref": "#/components/schemas/ChosenInlineResult"
          },
          "callback_query": { "$ref": "#/components/schemas/CallbackQuery" },
          "shipping_query": { "$ref": "#/components/schemas/ShippingQuery" },
          "pre_checkout_query": {
            "$ref": "#/components/schemas/PreCheckoutQuery"
          },
          "poll": { "$ref": "#/components/schemas/Poll" },
          "poll_answer": { "$ref": "#/components/schemas/PollAnswer" },
          "my_chat_member": {
            "$ref": "#/components/schemas/ChatMemberUpdated"
          },
          "chat_member": { "$ref": "#/components/schemas/ChatMemberUpdated" },
          "chat_join_request": {
            "$ref": "#/components/schemas/ChatJoinRequest"
          },
          "chat_boost": { "$ref": "#/components/schemas/ChatBoostUpdated" },
          "removed_chat_boost": {
            "$ref": "#/components/schemas/ChatBoostRemoved"
          }
        },
        "type": "object"
      },
      "WebhookInfo": {
        "description": "Describes the current status of a webhook.",
        "required": ["url", "has_custom_certificate", "pending_update_count"],
        "properties": {
          "url": { "type": "string" },
          "has_custom_certificate": { "type": "boolean" },
          "pending_update_count": { "type": "integer" },
          "ip_address": { "type": "string" },
          "last_error_date": { "type": "integer" },
          "last_error_message": { "type": "string" },
          "last_synchronization_error_date": { "type": "integer" },
          "max_connections": { "type": "integer" },
          "allowed_updates": { "type": "array", "items": { "type": "string" } }
        },
        "type": "object"
      },
      "User": {
        "description": "This object represents a Telegram user or bot.",
        "required": ["id", "is_bot", "first_name"],
        "properties": {
          "id": { "type": "integer" },
          "is_bot": { "type": "boolean" },
          "first_name": { "type": "string" },
          "last_name": { "type": "string" },
          "username": { "type": "string" },
          "language_code": { "type": "string" },
          "is_premium": { "type": "boolean", "default": true },
          "added_to_attachment_menu": { "type": "boolean", "default": true },
          "can_join_groups": { "type": "boolean" },
          "can_read_all_group_messages": { "type": "boolean" },
          "supports_inline_queries": { "type": "boolean" },
          "can_connect_to_business": { "type": "boolean" },
          "has_main_web_app": { "type": "boolean" }
        },
        "type": "object"
      },
      "Chat": {
        "description": "This object represents a chat.",
        "required": ["id", "type"],
        "properties": {
          "id": { "type": "integer" },
          "type": { "type": "string" },
          "title": { "type": "string" },
          "username": { "type": "string" },
          "first_name": { "type": "string" },
          "last_name": { "type": "string" },
          "is_forum": { "type": "boolean", "default": true }
        },
        "type": "object"
      },
      "ChatFullInfo": {
        "description": "This object contains full information about a chat.",
        "required": ["id", "type", "accent_color_id", "max_reaction_count"],
        "properties": {
          "id": { "type": "integer" },
          "type": { "type": "string" },
          "title": { "type": "string" },
          "username": { "type": "string" },
          "first_name": { "type": "string" },
          "last_name": { "type": "string" },
          "is_forum": { "type": "boolean", "default": true },
          "accent_color_id": { "type": "integer" },
          "max_reaction_count": { "type": "integer" },
          "photo": { "$ref": "#/components/schemas/ChatPhoto" },
          "active_usernames": {
            "type": "array",
            "items": { "type": "string" }
          },
          "birthdate": { "$ref": "#/components/schemas/Birthdate" },
          "business_intro": { "$ref": "#/components/schemas/BusinessIntro" },
          "business_location": {
            "$ref": "#/components/schemas/BusinessLocation"
          },
          "business_opening_hours": {
            "$ref": "#/components/schemas/BusinessOpeningHours"
          },
          "personal_chat": { "$ref": "#/components/schemas/Chat" },
          "available_reactions": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/ReactionType" }
          },
          "background_custom_emoji_id": { "type": "string" },
          "profile_accent_color_id": { "type": "integer" },
          "profile_background_custom_emoji_id": { "type": "string" },
          "emoji_status_custom_emoji_id": { "type": "string" },
          "emoji_status_expiration_date": { "type": "integer" },
          "bio": { "type": "string" },
          "has_private_forwards": { "type": "boolean", "default": true },
          "has_restricted_voice_and_video_messages": {
            "type": "boolean",
            "default": true
          },
          "join_to_send_messages": { "type": "boolean", "default": true },
          "join_by_request": { "type": "boolean", "default": true },
          "description": { "type": "string" },
          "invite_link": { "type": "string" },
          "pinned_message": { "$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": { "type": "integer" },
          "message_auto_delete_time": { "type": "integer" },
          "has_aggressive_anti_spam_enabled": {
            "type": "boolean",
            "default": true
          },
          "has_hidden_members": { "type": "boolean", "default": true },
          "has_protected_content": { "type": "boolean", "default": true },
          "has_visible_history": { "type": "boolean", "default": true },
          "sticker_set_name": { "type": "string" },
          "can_set_sticker_set": { "type": "boolean", "default": true },
          "custom_emoji_sticker_set_name": { "type": "string" },
          "linked_chat_id": { "type": "integer" },
          "location": { "$ref": "#/components/schemas/ChatLocation" }
        },
        "type": "object"
      },
      "Message": {
        "description": "This object represents a message.",
        "required": ["message_id", "date", "chat"],
        "properties": {
          "message_id": { "type": "integer" },
          "message_thread_id": { "type": "integer" },
          "from": { "$ref": "#/components/schemas/User" },
          "sender_chat": { "$ref": "#/components/schemas/Chat" },
          "sender_boost_count": { "type": "integer" },
          "sender_business_bot": { "$ref": "#/components/schemas/User" },
          "date": { "type": "integer" },
          "business_connection_id": { "type": "string" },
          "chat": { "$ref": "#/components/schemas/Chat" },
          "forward_origin": { "$ref": "#/components/schemas/MessageOrigin" },
          "is_topic_message": { "type": "boolean", "default": true },
          "is_automatic_forward": { "type": "boolean", "default": true },
          "reply_to_message": { "$ref": "#/components/schemas/Message" },
          "external_reply": {
            "$ref": "#/components/schemas/ExternalReplyInfo"
          },
          "quote": { "$ref": "#/components/schemas/TextQuote" },
          "reply_to_story": { "$ref": "#/components/schemas/Story" },
          "via_bot": { "$ref": "#/components/schemas/User" },
          "edit_date": { "type": "integer" },
          "has_protected_content": { "type": "boolean", "default": true },
          "is_from_offline": { "type": "boolean", "default": true },
          "media_group_id": { "type": "string" },
          "author_signature": { "type": "string" },
          "text": { "type": "string" },
          "entities": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/MessageEntity" }
          },
          "link_preview_options": {
            "$ref": "#/components/schemas/LinkPreviewOptions"
          },
          "effect_id": { "type": "string" },
          "animation": { "$ref": "#/components/schemas/Animation" },
          "audio": { "$ref": "#/components/schemas/Audio" },
          "document": { "$ref": "#/components/schemas/Document" },
          "paid_media": { "$ref": "#/components/schemas/PaidMediaInfo" },
          "photo": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/PhotoSize" }
          },
          "sticker": { "$ref": "#/components/schemas/Sticker" },
          "story": { "$ref": "#/components/schemas/Story" },
          "video": { "$ref": "#/components/schemas/Video" },
          "video_note": { "$ref": "#/components/schemas/VideoNote" },
          "voice": { "$ref": "#/components/schemas/Voice" },
          "caption": { "type": "string" },
          "caption_entities": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/MessageEntity" }
          },
          "show_caption_above_media": { "type": "boolean", "default": true },
          "has_media_spoiler": { "type": "boolean", "default": true },
          "contact": { "$ref": "#/components/schemas/Contact" },
          "dice": { "$ref": "#/components/schemas/Dice" },
          "game": { "$ref": "#/components/schemas/Game" },
          "poll": { "$ref": "#/components/schemas/Poll" },
          "venue": { "$ref": "#/components/schemas/Venue" },
          "location": { "$ref": "#/components/schemas/Location" },
          "new_chat_members": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/User" }
          },
          "left_chat_member": { "$ref": "#/components/schemas/User" },
          "new_chat_title": { "type": "string" },
          "new_chat_photo": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/PhotoSize" }
          },
          "delete_chat_photo": { "type": "boolean", "default": true },
          "group_chat_created": { "type": "boolean", "default": true },
          "supergroup_chat_created": { "type": "boolean", "default": true },
          "channel_chat_created": { "type": "boolean", "default": true },
          "message_auto_delete_timer_changed": {
            "$ref": "#/components/schemas/MessageAutoDeleteTimerChanged"
          },
          "migrate_to_chat_id": { "type": "integer" },
          "migrate_from_chat_id": { "type": "integer" },
          "pinned_message": {
            "$ref": "#/components/schemas/MaybeInaccessibleMessage"
          },
          "invoice": { "$ref": "#/components/schemas/Invoice" },
          "successful_payment": {
            "$ref": "#/components/schemas/SuccessfulPayment"
          },
          "refunded_payment": {
            "$ref": "#/components/schemas/RefundedPayment"
          },
          "users_shared": { "$ref": "#/components/schemas/UsersShared" },
          "chat_shared": { "$ref": "#/components/schemas/ChatShared" },
          "connected_website": { "type": "string" },
          "write_access_allowed": {
            "$ref": "#/components/schemas/WriteAccessAllowed"
          },
          "passport_data": { "$ref": "#/components/schemas/PassportData" },
          "proximity_alert_triggered": {
            "$ref": "#/components/schemas/ProximityAlertTriggered"
          },
          "boost_added": { "$ref": "#/components/schemas/ChatBoostAdded" },
          "chat_background_set": {
            "$ref": "#/components/schemas/ChatBackground"
          },
          "forum_topic_created": {
            "$ref": "#/components/schemas/ForumTopicCreated"
          },
          "forum_topic_edited": {
            "$ref": "#/components/schemas/ForumTopicEdited"
          },
          "forum_topic_closed": {
            "$ref": "#/components/schemas/ForumTopicClosed"
          },
          "forum_topic_reopened": {
            "$ref": "#/components/schemas/ForumTopicReopened"
          },
          "general_forum_topic_hidden": {
            "$ref": "#/components/schemas/GeneralForumTopicHidden"
          },
          "general_forum_topic_unhidden": {
            "$ref": "#/components/schemas/GeneralForumTopicUnhidden"
          },
          "giveaway_created": {
            "$ref": "#/components/schemas/GiveawayCreated"
          },
          "giveaway": { "$ref": "#/components/schemas/Giveaway" },
          "giveaway_winners": {
            "$ref": "#/components/schemas/GiveawayWinners"
          },
          "giveaway_completed": {
            "$ref": "#/components/schemas/GiveawayCompleted"
          },
          "video_chat_scheduled": {
            "$ref": "#/components/schemas/VideoChatScheduled"
          },
          "video_chat_started": {
            "$ref": "#/components/schemas/VideoChatStarted"
          },
          "video_chat_ended": { "$ref": "#/components/schemas/VideoChatEnded" },
          "video_chat_participants_invited": {
            "$ref": "#/components/schemas/VideoChatParticipantsInvited"
          },
          "web_app_data": { "$ref": "#/components/schemas/WebAppData" },
          "reply_markup": {
            "$ref": "#/components/schemas/InlineKeyboardMarkup"
          }
        },
        "type": "object"
      },
      "MessageId": {
        "description": "This object represents a unique message identifier.",
        "required": ["message_id"],
        "properties": { "message_id": { "type": "integer" } },
        "type": "object"
      },
      "InaccessibleMessage": {
        "description": "This object describes a message that was deleted or is otherwise inaccessible to the bot.",
        "required": ["chat", "message_id", "date"],
        "properties": {
          "chat": { "$ref": "#/components/schemas/Chat" },
          "message_id": { "type": "integer" },
          "date": { "type": "integer" }
        },
        "type": "object"
      },
      "MaybeInaccessibleMessage": {
        "description": "This object describes a message that can be inaccessible to the bot. It can be one of",
        "anyOf": [
          { "$ref": "#/components/schemas/Message" },
          { "$ref": "#/components/schemas/InaccessibleMessage" }
        ]
      },
      "MessageEntity": {
        "description": "This object represents one special entity in a text message. For example, hashtags, usernames, URLs, etc.",
        "required": ["type", "offset", "length"],
        "properties": {
          "type": { "type": "string" },
          "offset": { "type": "integer" },
          "length": { "type": "integer" },
          "url": { "type": "string" },
          "user": { "$ref": "#/components/schemas/User" },
          "language": { "type": "string" },
          "custom_emoji_id": { "type": "string" }
        },
        "type": "object"
      },
      "TextQuote": {
        "description": "This object contains information about the quoted part of a message that is replied to by the given message.",
        "required": ["text", "position"],
        "properties": {
          "text": { "type": "string" },
          "entities": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/MessageEntity" }
          },
          "position": { "type": "integer" },
          "is_manual": { "type": "boolean", "default": true }
        },
        "type": "object"
      },
      "ExternalReplyInfo": {
        "description": "This object contains information about a message that is being replied to, which may come from another chat or forum topic.",
        "required": ["origin"],
        "properties": {
          "origin": { "$ref": "#/components/schemas/MessageOrigin" },
          "chat": { "$ref": "#/components/schemas/Chat" },
          "message_id": { "type": "integer" },
          "link_preview_options": {
            "$ref": "#/components/schemas/LinkPreviewOptions"
          },
          "animation": { "$ref": "#/components/schemas/Animation" },
          "audio": { "$ref": "#/components/schemas/Audio" },
          "document": { "$ref": "#/components/schemas/Document" },
          "paid_media": { "$ref": "#/components/schemas/PaidMediaInfo" },
          "photo": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/PhotoSize" }
          },
          "sticker": { "$ref": "#/components/schemas/Sticker" },
          "story": { "$ref": "#/components/schemas/Story" },
          "video": { "$ref": "#/components/schemas/Video" },
          "video_note": { "$ref": "#/components/schemas/VideoNote" },
          "voice": { "$ref": "#/components/schemas/Voice" },
          "has_media_spoiler": { "type": "boolean", "default": true },
          "contact": { "$ref": "#/components/schemas/Contact" },
          "dice": { "$ref": "#/components/schemas/Dice" },
          "game": { "$ref": "#/components/schemas/Game" },
          "giveaway": { "$ref": "#/components/schemas/Giveaway" },
          "giveaway_winners": {
            "$ref": "#/components/schemas/GiveawayWinners"
          },
          "invoice": { "$ref": "#/components/schemas/Invoice" },
          "location": { "$ref": "#/components/schemas/Location" },
          "poll": { "$ref": "#/components/schemas/Poll" },
          "venue": { "$ref": "#/components/schemas/Venue" }
        },
        "type": "object"
      },
      "ReplyParameters": {
        "description": "Describes reply parameters for the message that is being sent.",
        "required": ["message_id"],
        "properties": {
          "message_id": { "type": "integer" },
          "chat_id": { "anyOf": [{ "type": "integer" }, { "type": "string" }] },
          "allow_sending_without_reply": { "type": "boolean" },
          "quote": { "type": "string" },
          "quote_parse_mode": { "type": "string" },
          "quote_entities": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/MessageEntity" }
          },
          "quote_position": { "type": "integer" }
        },
        "type": "object"
      },
      "MessageOrigin": {
        "description": "This object describes the origin of a message. It can be one of",
        "anyOf": [
          { "$ref": "#/components/schemas/MessageOriginUser" },
          { "$ref": "#/components/schemas/MessageOriginHiddenUser" },
          { "$ref": "#/components/schemas/MessageOriginChat" },
          { "$ref": "#/components/schemas/MessageOriginChannel" }
        ]
      },
      "MessageOriginUser": {
        "description": "The message was originally sent by a known user.",
        "required": ["type", "date", "sender_user"],
        "properties": {
          "type": { "type": "string" },
          "date": { "type": "integer" },
          "sender_user": { "$ref": "#/components/schemas/User" }
        },
        "type": "object"
      },
      "MessageOriginHiddenUser": {
        "description": "The message was originally sent by an unknown user.",
        "required": ["type", "date", "sender_user_name"],
        "properties": {
          "type": { "type": "string" },
          "date": { "type": "integer" },
          "sender_user_name": { "type": "string" }
        },
        "type": "object"
      },
      "MessageOriginChat": {
        "description": "The message was originally sent on behalf of a chat to a group chat.",
        "required": ["type", "date", "sender_chat"],
        "properties": {
          "type": { "type": "string" },
          "date": { "type": "integer" },
          "sender_chat": { "$ref": "#/components/schemas/Chat" },
          "author_signature": { "type": "string" }
        },
        "type": "object"
      },
      "MessageOriginChannel": {
        "description": "The message was originally sent to a channel chat.",
        "required": ["type", "date", "chat", "message_id"],
        "properties": {
          "type": { "type": "string" },
          "date": { "type": "integer" },
          "chat": { "$ref": "#/components/schemas/Chat" },
          "message_id": { "type": "integer" },
          "author_signature": { "type": "string" }
        },
        "type": "object"
      },
      "PhotoSize": {
        "description": "This object represents one size of a photo or a file / sticker thumbnail.",
        "required": ["file_id", "file_unique_id", "width", "height"],
        "properties": {
          "file_id": { "type": "string" },
          "file_unique_id": { "type": "string" },
          "width": { "type": "integer" },
          "height": { "type": "integer" },
          "file_size": { "type": "integer" }
        },
        "type": "object"
      },
      "Animation": {
        "description": "This object represents an animation file (GIF or H.264/MPEG-4 AVC video without sound).",
        "required": [
          "file_id",
          "file_unique_id",
          "width",
          "height",
          "duration"
        ],
        "properties": {
          "file_id": { "type": "string" },
          "file_unique_id": { "type": "string" },
          "width": { "type": "integer" },
          "height": { "type": "integer" },
          "duration": { "type": "integer" },
          "thumbnail": { "$ref": "#/components/schemas/PhotoSize" },
          "file_name": { "type": "string" },
          "mime_type": { "type": "string" },
          "file_size": { "type": "integer" }
        },
        "type": "object"
      },
      "Audio": {
        "description": "This object represents an audio file to be treated as music by the Telegram clients.",
        "required": ["file_id", "file_unique_id", "duration"],
        "properties": {
          "file_id": { "type": "string" },
          "file_unique_id": { "type": "string" },
          "duration": { "type": "integer" },
          "performer": { "type": "string" },
          "title": { "type": "string" },
          "file_name": { "type": "string" },
          "mime_type": { "type": "string" },
          "file_size": { "type": "integer" },
          "thumbnail": { "$ref": "#/components/schemas/PhotoSize" }
        },
        "type": "object"
      },
      "Document": {
        "description": "This object represents a general file (as opposed to photos, voice messages and audio files).",
        "required": ["file_id", "file_unique_id"],
        "properties": {
          "file_id": { "type": "string" },
          "file_unique_id": { "type": "string" },
          "thumbnail": { "$ref": "#/components/schemas/PhotoSize" },
          "file_name": { "type": "string" },
          "mime_type": { "type": "string" },
          "file_size": { "type": "integer" }
        },
        "type": "object"
      },
      "Story": {
        "description": "This object represents a story.",
        "required": ["chat", "id"],
        "properties": {
          "chat": { "$ref": "#/components/schemas/Chat" },
          "id": { "type": "integer" }
        },
        "type": "object"
      },
      "Video": {
        "description": "This object represents a video file.",
        "required": [
          "file_id",
          "file_unique_id",
          "width",
          "height",
          "duration"
        ],
        "properties": {
          "file_id": { "type": "string" },
          "file_unique_id": { "type": "string" },
          "width": { "type": "integer" },
          "height": { "type": "integer" },
          "duration": { "type": "integer" },
          "thumbnail": { "$ref": "#/components/schemas/PhotoSize" },
          "file_name": { "type": "string" },
          "mime_type": { "type": "string" },
          "file_size": { "type": "integer" }
        },
        "type": "object"
      },
      "VideoNote": {
        "description": "This object represents a video message (available in Telegram apps as of v.4.0).",
        "required": ["file_id", "file_unique_id", "length", "duration"],
        "properties": {
          "file_id": { "type": "string" },
          "file_unique_id": { "type": "string" },
          "length": { "type": "integer" },
          "duration": { "type": "integer" },
          "thumbnail": { "$ref": "#/components/schemas/PhotoSize" },
          "file_size": { "type": "integer" }
        },
        "type": "object"
      },
      "Voice": {
        "description": "This object represents a voice note.",
        "required": ["file_id", "file_unique_id", "duration"],
        "properties": {
          "file_id": { "type": "string" },
          "file_unique_id": { "type": "string" },
          "duration": { "type": "integer" },
          "mime_type": { "type": "string" },
          "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": ["phone_number", "first_name"],
        "properties": {
          "phone_number": { "type": "string" },
          "first_name": { "type": "string" },
          "last_name": { "type": "string" },
          "user_id": { "type": "integer" },
          "vcard": { "type": "string" }
        },
        "type": "object"
      },
      "Dice": {
        "description": "This object represents an animated emoji that displays a random value.",
        "required": ["emoji", "value"],
        "properties": {
          "emoji": { "type": "string" },
          "value": { "type": "integer" }
        },
        "type": "object"
      },
      "PollOption": {
        "description": "This object contains information about one answer option in a poll.",
        "required": ["text", "voter_count"],
        "properties": {
          "text": { "type": "string" },
          "text_entities": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/MessageEntity" }
          },
          "voter_count": { "type": "integer" }
        },
        "type": "object"
      },
      "InputPollOption": {
        "description": "This object contains information about one answer option in a poll to be sent.",
        "required": ["text"],
        "properties": {
          "text": { "type": "string" },
          "text_parse_mode": { "type": "string" },
          "text_entities": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/MessageEntity" }
          }
        },
        "type": "object"
      },
      "PollAnswer": {
        "description": "This object represents an answer of a user in a non-anonymous poll.",
        "required": ["poll_id", "option_ids"],
        "properties": {
          "poll_id": { "type": "string" },
          "voter_chat": { "$ref": "#/components/schemas/Chat" },
          "user": { "$ref": "#/components/schemas/User" },
          "option_ids": { "type": "array", "items": { "type": "integer" } }
        },
        "type": "object"
      },
      "Poll": {
        "description": "This object contains information about a poll.",
        "required": [
          "id",
          "question",
          "options",
          "total_voter_count",
          "is_closed",
          "is_anonymous",
          "type",
          "allows_multiple_answers"
        ],
        "properties": {
          "id": { "type": "string" },
          "question": { "type": "string" },
          "question_entities": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/MessageEntity" }
          },
          "options": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/PollOption" }
          },
          "total_voter_count": { "type": "integer" },
          "is_closed": { "type": "boolean" },
          "is_anonymous": { "type": "boolean" },
          "type": { "type": "string" },
          "allows_multiple_answers": { "type": "boolean" },
          "correct_option_id": { "type": "integer" },
          "explanation": { "type": "string" },
          "explanation_entities": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/MessageEntity" }
          },
          "open_period": { "type": "integer" },
          "close_date": { "type": "integer" }
        },
        "type": "object"
      },
      "Location": {
        "description": "This object represents a point on the map.",
        "required": ["latitude", "longitude"],
        "properties": {
          "latitude": { "type": "number" },
          "longitude": { "type": "number" },
          "horizontal_accuracy": { "type": "number" },
          "live_period": { "type": "integer" },
          "heading": { "type": "integer" },
          "proximity_alert_radius": { "type": "integer" }
        },
        "type": "object"
      },
      "Venue": {
        "description": "This object represents a venue.",
        "required": ["location", "title", "address"],
        "properties": {
          "location": { "$ref": "#/components/schemas/Location" },
          "title": { "type": "string" },
          "address": { "type": "string" },
          "foursquare_id": { "type": "string" },
          "foursquare_type": { "type": "string" },
          "google_place_id": { "type": "string" },
          "google_place_type": { "type": "string" }
        },
        "type": "object"
      },
      "WebAppData": {
        "description": "Describes data sent from a Web App to the bot.",
        "required": ["data", "button_text"],
        "properties": {
          "data": { "type": "string" },
          "button_text": { "type": "string" }
        },
        "type": "object"
      },
      "ProximityAlertTriggered": {
        "description": "This object represents the content of a service message, sent whenever a user in the chat triggers a proximity alert set by another user.",
        "required": ["traveler", "watcher", "distance"],
        "properties": {
          "traveler": { "$ref": "#/components/schemas/User" },
          "watcher": { "$ref": "#/components/schemas/User" },
          "distance": { "type": "integer" }
        },
        "type": "object"
      },
      "MessageAutoDeleteTimerChanged": {
        "description": "This object represents a service message about a change in auto-delete timer settings.",
        "required": ["message_auto_delete_time"],
        "properties": { "message_auto_delete_time": { "type": "integer" } },
        "type": "object"
      },
      "ChatBoostAdded": {
        "description": "This object represents a service message about a user boosting a chat.",
        "required": ["boost_count"],
        "properties": { "boost_count": { "type": "integer" } },
        "type": "object"
      },
      "BackgroundFill": {
        "description": "This object describes the way a background is filled based on the selected colors. Currently, it can be one of",
        "anyOf": [
          { "$ref": "#/components/schemas/BackgroundFillSolid" },
          { "$ref": "#/components/schemas/BackgroundFillGradient" },
          { "$ref": "#/components/schemas/BackgroundFillFreeformGradient" }
        ]
      },
      "BackgroundFillSolid": {
        "description": "The background is filled using the selected color.",
        "required": ["type", "color"],
        "properties": {
          "type": { "type": "string" },
          "color": { "type": "integer" }
        },
        "type": "object"
      },
      "BackgroundFillGradient": {
        "description": "The background is a gradient fill.",
        "required": ["type", "top_color", "bottom_color", "rotation_angle"],
        "properties": {
          "type": { "type": "string" },
          "top_color": { "type": "integer" },
          "bottom_color": { "type": "integer" },
          "rotation_angle": { "type": "integer" }
        },
        "type": "object"
      },
      "BackgroundFillFreeformGradient": {
        "description": "The background is a freeform gradient that rotates after every message in the chat.",
        "required": ["type", "colors"],
        "properties": {
          "type": { "type": "string" },
          "colors": { "type": "array", "items": { "type": "integer" } }
        },
        "type": "object"
      },
      "BackgroundType": {
        "description": "This object describes the type of a background. Currently, it can be one of",
        "anyOf": [
          { "$ref": "#/components/schemas/BackgroundTypeFill" },
          { "$ref": "#/components/schemas/BackgroundTypeWallpaper" },
          { "$ref": "#/components/schemas/BackgroundTypePattern" },
          { "$ref": "#/components/schemas/BackgroundTypeChatTheme" }
        ]
      },
      "BackgroundTypeFill": {
        "description": "The background is automatically filled based on the selected colors.",
        "required": ["type", "fill", "dark_theme_dimming"],
        "properties": {
          "type": { "type": "string" },
          "fill": { "$ref": "#/components/schemas/BackgroundFill" },
          "dark_theme_dimming": { "type": "integer" }
        },
        "type": "object"
      },
      "BackgroundTypeWallpaper": {
        "description": "The background is a wallpaper in the JPEG format.",
        "required": ["type", "document", "dark_theme_dimming"],
        "properties": {
          "type": { "type": "string" },
          "document": { "$ref": "#/components/schemas/Document" },
          "dark_theme_dimming": { "type": "integer" },
          "is_blurred": { "type": "boolean", "default": true },
          "is_moving": { "type": "boolean", "default": true }
        },
        "type": "object"
      },
      "BackgroundTypePattern": {
        "description": "The background is a PNG or TGV (gzipped subset of SVG with MIME type \u201capplication/x-tgwallpattern\u201d) pattern to be combined with the background fill chosen by the user.",
        "required": ["type", "document", "fill", "intensity"],
        "properties": {
          "type": { "type": "string" },
          "document": { "$ref": "#/components/schemas/Document" },
          "fill": { "$ref": "#/components/schemas/BackgroundFill" },
          "intensity": { "type": "integer" },
          "is_inverted": { "type": "boolean", "default": true },
          "is_moving": { "type": "boolean", "default": true }
        },
        "type": "object"
      },
      "BackgroundTypeChatTheme": {
        "description": "The background is taken directly from a built-in chat theme.",
        "required": ["type", "theme_name"],
        "properties": {
          "type": { "type": "string" },
          "theme_name": { "type": "string" }
        },
        "type": "object"
      },
      "ChatBackground": {
        "description": "This object represents a chat background.",
        "required": ["type"],
        "properties": {
          "type": { "$ref": "#/components/schemas/BackgroundType" }
        },
        "type": "object"
      },
      "ForumTopicCreated": {
        "description": "This object represents a service message about a new forum topic created in the chat.",
        "required": ["name", "icon_color"],
        "properties": {
          "name": { "type": "string" },
          "icon_color": { "type": "integer" },
          "icon_custom_emoji_id": { "type": "string" }
        },
        "type": "object"
      },
      "ForumTopicClosed": {
        "description": "This object represents a service message about a forum topic closed in the chat. Currently holds no information.",
        "type": "object"
      },
      "ForumTopicEdited": {
        "description": "This object represents a service message about an edited forum topic.",
        "properties": {
          "name": { "type": "string" },
          "icon_custom_emoji_id": { "type": "string" }
        },
        "type": "object"
      },
      "ForumTopicReopened": {
        "description": "This object represents a service message about a forum topic reopened in the chat. Currently holds no information.",
        "type": "object"
      },
      "GeneralForumTopicHidden": {
        "description": "This object represents a service message about General forum topic hidden in the chat. Currently holds no information.",
        "type": "object"
      },
      "GeneralForumTopicUnhidden": {
        "description": "This object represents a service message about General forum topic unhidden in the chat. Currently holds no information.",
        "type": "object"
      },
      "SharedUser": {
        "description": "This object contains information about a user that was shared with the bot using a KeyboardButtonRequestUsers button.",
        "required": ["user_id"],
        "properties": {
          "user_id": { "type": "integer" },
          "first_name": { "type": "string" },
          "last_name": { "type": "string" },
          "username": { "type": "string" },
          "photo": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/PhotoSize" }
          }
        },
        "type": "object"
      },
      "UsersShared": {
        "description": "This object contains information about the users whose identifiers were shared with the bot using a KeyboardButtonRequestUsers button.",
        "required": ["request_id", "users"],
        "properties": {
          "request_id": { "type": "integer" },
          "users": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/SharedUser" }
          }
        },
        "type": "object"
      },
      "ChatShared": {
        "description": "This object contains information about a chat that was shared with the bot using a KeyboardButtonRequestChat button.",
        "required": ["request_id", "chat_id"],
        "properties": {
          "request_id": { "type": "integer" },
          "chat_id": { "type": "integer" },
          "title": { "type": "string" },
          "username": { "type": "string" },
          "photo": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/PhotoSize" }
          }
        },
        "type": "object"
      },
      "WriteAccessAllowed": {
        "description": "This object represents a service message about a user allowing a bot to write messages after adding it to the attachment menu, launching a Web App from a link, or accepting an explicit request from a Web App sent by the method requestWriteAccess.",
        "properties": {
          "from_request": { "type": "boolean" },
          "web_app_name": { "type": "string" },
          "from_attachment_menu": { "type": "boolean" }
        },
        "type": "object"
      },
      "VideoChatScheduled": {
        "description": "This object represents a service message about a video chat scheduled in the chat.",
        "required": ["start_date"],
        "properties": { "start_date": { "type": "integer" } },
        "type": "object"
      },
      "VideoChatStarted": {
        "description": "This object represents a service message about a video chat started in the chat. Currently holds no information.",
        "type": "object"
      },
      "VideoChatEnded": {
        "description": "This object represents a service message about a video chat ended in the chat.",
        "required": ["duration"],
        "properties": { "duration": { "type": "integer" } },
        "type": "object"
      },
      "VideoChatParticipantsInvited": {
        "description": "This object represents a service message about new members invited to a video chat.",
        "required": ["users"],
        "properties": {
          "users": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/User" }
          }
        },
        "type": "object"
      },
      "GiveawayCreated": {
        "description": "This object represents a service message about the creation of a scheduled giveaway. Currently holds no information.",
        "type": "object"
      },
      "Giveaway": {
        "description": "This object represents a message about a scheduled giveaway.",
        "required": ["chats", "winners_selection_date", "winner_count"],
        "properties": {
          "chats": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/Chat" }
          },
          "winners_selection_date": { "type": "integer" },
          "winner_count": { "type": "integer" },
          "only_new_members": { "type": "boolean", "default": true },
          "has_public_winners": { "type": "boolean", "default": true },
          "prize_description": { "type": "string" },
          "country_codes": { "type": "array", "items": { "type": "string" } },
          "premium_subscription_month_count": { "type": "integer" }
        },
        "type": "object"
      },
      "GiveawayWinners": {
        "description": "This object represents a message about the completion of a giveaway with public winners.",
        "required": [
          "chat",
          "giveaway_message_id",
          "winners_selection_date",
          "winner_count",
          "winners"
        ],
        "properties": {
          "chat": { "$ref": "#/components/schemas/Chat" },
          "giveaway_message_id": { "type": "integer" },
          "winners_selection_date": { "type": "integer" },
          "winner_count": { "type": "integer" },
          "winners": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/User" }
          },
          "additional_chat_count": { "type": "integer" },
          "premium_subscription_month_count": { "type": "integer" },
          "unclaimed_prize_count": { "type": "integer" },
          "only_new_members": { "type": "boolean", "default": true },
          "was_refunded": { "type": "boolean", "default": true },
          "prize_description": { "type": "string" }
        },
        "type": "object"
      },
      "GiveawayCompleted": {
        "description": "This object represents a service message about the completion of a giveaway without public winners.",
        "required": ["winner_count"],
        "properties": {
          "winner_count": { "type": "integer" },
          "unclaimed_prize_count": { "type": "integer" },
          "giveaway_message": { "$ref": "#/components/schemas/Message" }
        },
        "type": "object"
      },
      "LinkPreviewOptions": {
        "description": "Describes the options used for link preview generation.",
        "properties": {
          "is_disabled": { "type": "boolean" },
          "url": { "type": "string" },
          "prefer_small_media": { "type": "boolean" },
          "prefer_large_media": { "type": "boolean" },
          "show_above_text": { "type": "boolean" }
        },
        "type": "object"
      },
      "UserProfilePhotos": {
        "description": "This object represent a user's profile pictures.",
        "required": ["total_count", "photos"],
        "properties": {
          "total_count": { "type": "integer" },
          "photos": {
            "type": "array",
            "items": {
              "type": "array",
              "items": { "$ref": "#/components/schemas/PhotoSize" }
            }
          }
        },
        "type": "object"
      },
      "File": {
        "description": "This object represents a file ready to be downloaded. The file can be downloaded via the link https://api.telegram.org/file/bot<token>/<file_path>. It is guaranteed that the link will be valid for at least 1 hour. When the link expires, a new one can be requested by calling getFile.",
        "required": ["file_id", "file_unique_id"],
        "properties": {
          "file_id": { "type": "string" },
          "file_unique_id": { "type": "string" },
          "file_size": { "type": "integer" },
          "file_path": { "type": "string" }
        },
        "type": "object"
      },
      "WebAppInfo": {
        "description": "Describes a Web App.",
        "required": ["url"],
        "properties": { "url": { "type": "string" } },
        "type": "object"
      },
      "ReplyKeyboardMarkup": {
        "description": "This object represents a custom keyboard with reply options (see Introduction to bots for details and examples). Not supported in channels and for messages sent on behalf of a Telegram Business account.",
        "required": ["keyboard"],
        "properties": {
          "keyboard": {
            "type": "array",
            "items": {
              "type": "array",
              "items": { "$ref": "#/components/schemas/KeyboardButton" }
            }
          },
          "is_persistent": { "type": "boolean" },
          "resize_keyboard": { "type": "boolean" },
          "one_time_keyboard": { "type": "boolean" },
          "input_field_placeholder": { "type": "string" },
          "selective": { "type": "boolean" }
        },
        "type": "object"
      },
      "KeyboardButton": {
        "description": "This object represents one button of the reply keyboard. At most one of the optional fields must be used to specify type of the button. For simple text buttons, String can be used instead of this object to specify the button text.",
        "required": ["text"],
        "properties": {
          "text": { "type": "string" },
          "request_users": {
            "$ref": "#/components/schemas/KeyboardButtonRequestUsers"
          },
          "request_chat": {
            "$ref": "#/components/schemas/KeyboardButtonRequestChat"
          },
          "request_contact": { "type": "boolean" },
          "request_location": { "type": "boolean" },
          "request_poll": {
            "$ref": "#/components/schemas/KeyboardButtonPollType"
          },
          "web_app": { "$ref": "#/components/schemas/WebAppInfo" }
        },
        "type": "object"
      },
      "KeyboardButtonRequestUsers": {
        "description": "This object defines the criteria used to request suitable users. Information about the selected users will be shared with the bot when the corresponding button is pressed. More about requesting users \u00bb",
        "required": ["request_id"],
        "properties": {
          "request_id": { "type": "integer" },
          "user_is_bot": { "type": "boolean" },
          "user_is_premium": { "type": "boolean" },
          "max_quantity": { "type": "integer", "default": 1 },
          "request_name": { "type": "boolean" },
          "request_username": { "type": "boolean" },
          "request_photo": { "type": "boolean" }
        },
        "type": "object"
      },
      "KeyboardButtonRequestChat": {
        "description": "This object defines the criteria used to request a suitable chat. Information about the selected chat will be shared with the bot when the corresponding button is pressed. The bot will be granted requested rights in the chat if appropriate. More about requesting chats \u00bb.",
        "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" },
          "request_title": { "type": "boolean" },
          "request_username": { "type": "boolean" },
          "request_photo": { "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": { "type": { "type": "string" } },
        "type": "object"
      },
      "ReplyKeyboardRemove": {
        "description": "Upon receiving a message with this object, Telegram clients will remove the current custom keyboard and display the default letter-keyboard. By default, custom keyboards are displayed until a new keyboard is sent by a bot. An exception is made for one-time keyboards that are hidden immediately after the user presses a button (see ReplyKeyboardMarkup). Not supported in channels and for messages sent on behalf of a Telegram Business account.",
        "required": ["remove_keyboard"],
        "properties": {
          "remove_keyboard": { "type": "boolean", "default": true },
          "selective": { "type": "boolean" }
        },
        "type": "object"
      },
      "InlineKeyboardMarkup": {
        "description": "This object represents an inline keyboard that appears right next to the message it belongs to.",
        "required": ["inline_keyboard"],
        "properties": {
          "inline_keyboard": {
            "type": "array",
            "items": {
              "type": "array",
              "items": { "$ref": "#/components/schemas/InlineKeyboardButton" }
            }
          }
        },
        "type": "object"
      },
      "InlineKeyboardButton": {
        "description": "This object represents one button of an inline keyboard. Exactly one of the optional fields must be used to specify type of the button.",
        "required": ["text"],
        "properties": {
          "text": { "type": "string" },
          "url": { "type": "string" },
          "callback_data": { "type": "string" },
          "web_app": { "$ref": "#/components/schemas/WebAppInfo" },
          "login_url": { "$ref": "#/components/schemas/LoginUrl" },
          "switch_inline_query": { "type": "string" },
          "switch_inline_query_current_chat": { "type": "string" },
          "switch_inline_query_chosen_chat": {
            "$ref": "#/components/schemas/SwitchInlineQueryChosenChat"
          },
          "callback_game": { "$ref": "#/components/schemas/CallbackGame" },
          "pay": { "type": "boolean" }
        },
        "type": "object"
      },
      "LoginUrl": {
        "description": "This object represents a parameter of the inline keyboard button used to automatically authorize a user. Serves as a great replacement for the Telegram Login Widget when the user is coming from Telegram. All the user needs to do is tap/click a button and confirm that they want to log in:\r\nTelegram apps support these buttons as of version 5.7.",
        "required": ["url"],
        "properties": {
          "url": { "type": "string" },
          "forward_text": { "type": "string" },
          "bot_username": { "type": "string" },
          "request_write_access": { "type": "boolean" }
        },
        "type": "object"
      },
      "SwitchInlineQueryChosenChat": {
        "description": "This object represents an inline button that switches the current user to inline mode in a chosen chat, with an optional default inline query.",
        "properties": {
          "query": { "type": "string" },
          "allow_user_chats": { "type": "boolean" },
          "allow_bot_chats": { "type": "boolean" },
          "allow_group_chats": { "type": "boolean" },
          "allow_channel_chats": { "type": "boolean" }
        },
        "type": "object"
      },
      "CallbackQuery": {
        "description": "This object represents an incoming callback query from a callback button in an inline keyboard. If the button that originated the query was attached to a message sent by the bot, the field message will be present. If the button was attached to a message sent via the bot (in inline mode), the field inline_message_id will be present. Exactly one of the fields data or game_short_name will be present.",
        "required": ["id", "from", "chat_instance"],
        "properties": {
          "id": { "type": "string" },
          "from": { "$ref": "#/components/schemas/User" },
          "message": {
            "$ref": "#/components/schemas/MaybeInaccessibleMessage"
          },
          "inline_message_id": { "type": "string" },
          "chat_instance": { "type": "string" },
          "data": { "type": "string" },
          "game_short_name": { "type": "string" }
        },
        "type": "object"
      },
      "ForceReply": {
        "description": "Upon receiving a message with this object, Telegram clients will display a reply interface to the user (act as if the user has selected the bot's message and tapped 'Reply'). This can be extremely useful if you want to create user-friendly step-by-step interfaces without having to sacrifice privacy mode. Not supported in channels and for messages sent on behalf of a Telegram Business account.",
        "required": ["force_reply"],
        "properties": {
          "force_reply": { "type": "boolean", "default": true },
          "input_field_placeholder": { "type": "string" },
          "selective": { "type": "boolean" }
        },
        "type": "object"
      },
      "ChatPhoto": {
        "description": "This object represents a chat photo.",
        "required": [
          "small_file_id",
          "small_file_unique_id",
          "big_file_id",
          "big_file_unique_id"
        ],
        "properties": {
          "small_file_id": { "type": "string" },
          "small_file_unique_id": { "type": "string" },
          "big_file_id": { "type": "string" },
          "big_file_unique_id": { "type": "string" }
        },
        "type": "object"
      },
      "ChatInviteLink": {
        "description": "Represents an invite link for a chat.",
        "required": [
          "invite_link",
          "creator",
          "creates_join_request",
          "is_primary",
          "is_revoked"
        ],
        "properties": {
          "invite_link": { "type": "string" },
          "creator": { "$ref": "#/components/schemas/User" },
          "creates_join_request": { "type": "boolean" },
          "is_primary": { "type": "boolean" },
          "is_revoked": { "type": "boolean" },
          "name": { "type": "string" },
          "expire_date": { "type": "integer" },
          "member_limit": { "type": "integer" },
          "pending_join_request_count": { "type": "integer" }
        },
        "type": "object"
      },
      "ChatAdministratorRights": {
        "description": "Represents the rights of an administrator in a chat.",
        "required": [
          "is_anonymous",
          "can_manage_chat",
          "can_delete_messages",
          "can_manage_video_chats",
          "can_restrict_members",
          "can_promote_members",
          "can_change_info",
          "can_invite_users",
          "can_post_stories",
          "can_edit_stories",
          "can_delete_stories"
        ],
        "properties": {
          "is_anonymous": { "type": "boolean" },
          "can_manage_chat": { "type": "boolean" },
          "can_delete_messages": { "type": "boolean" },
          "can_manage_video_chats": { "type": "boolean" },
          "can_restrict_members": { "type": "boolean" },
          "can_promote_members": { "type": "boolean" },
          "can_change_info": { "type": "boolean" },
          "can_invite_users": { "type": "boolean" },
          "can_post_stories": { "type": "boolean" },
          "can_edit_stories": { "type": "boolean" },
          "can_delete_stories": { "type": "boolean" },
          "can_post_messages": { "type": "boolean" },
          "can_edit_messages": { "type": "boolean" },
          "can_pin_messages": { "type": "boolean" },
          "can_manage_topics": { "type": "boolean" }
        },
        "type": "object"
      },
      "ChatMemberUpdated": {
        "description": "This object represents changes in the status of a chat member.",
        "required": [
          "chat",
          "from",
          "date",
          "old_chat_member",
          "new_chat_member"
        ],
        "properties": {
          "chat": { "$ref": "#/components/schemas/Chat" },
          "from": { "$ref": "#/components/schemas/User" },
          "date": { "type": "integer" },
          "old_chat_member": { "$ref": "#/components/schemas/ChatMember" },
          "new_chat_member": { "$ref": "#/components/schemas/ChatMember" },
          "invite_link": { "$ref": "#/components/schemas/ChatInviteLink" },
          "via_join_request": { "type": "boolean" },
          "via_chat_folder_invite_link": { "type": "boolean" }
        },
        "type": "object"
      },
      "ChatMember": {
        "description": "This object contains information about one member of a chat. Currently, the following 6 types of chat members are supported:",
        "anyOf": [
          { "$ref": "#/components/schemas/ChatMemberOwner" },
          { "$ref": "#/components/schemas/ChatMemberAdministrator" },
          { "$ref": "#/components/schemas/ChatMemberMember" },
          { "$ref": "#/components/schemas/ChatMemberRestricted" },
          { "$ref": "#/components/schemas/ChatMemberLeft" },
          { "$ref": "#/components/schemas/ChatMemberBanned" }
        ]
      },
      "ChatMemberOwner": {
        "description": "Represents a chat member that owns the chat and has all administrator privileges.",
        "required": ["status", "user", "is_anonymous"],
        "properties": {
          "status": { "type": "string" },
          "user": { "$ref": "#/components/schemas/User" },
          "is_anonymous": { "type": "boolean" },
          "custom_title": { "type": "string" }
        },
        "type": "object"
      },
      "ChatMemberAdministrator": {
        "description": "Represents a chat member that has some additional privileges.",
        "required": [
          "status",
          "user",
          "can_be_edited",
          "is_anonymous",
          "can_manage_chat",
          "can_delete_messages",
          "can_manage_video_chats",
          "can_restrict_members",
          "can_promote_members",
          "can_change_info",
          "can_invite_users",
          "can_post_stories",
          "can_edit_stories",
          "can_delete_stories"
        ],
        "properties": {
          "status": { "type": "string" },
          "user": { "$ref": "#/components/schemas/User" },
          "can_be_edited": { "type": "boolean" },
          "is_anonymous": { "type": "boolean" },
          "can_manage_chat": { "type": "boolean" },
          "can_delete_messages": { "type": "boolean" },
          "can_manage_video_chats": { "type": "boolean" },
          "can_restrict_members": { "type": "boolean" },
          "can_promote_members": { "type": "boolean" },
          "can_change_info": { "type": "boolean" },
          "can_invite_users": { "type": "boolean" },
          "can_post_stories": { "type": "boolean" },
          "can_edit_stories": { "type": "boolean" },
          "can_delete_stories": { "type": "boolean" },
          "can_post_messages": { "type": "boolean" },
          "can_edit_messages": { "type": "boolean" },
          "can_pin_messages": { "type": "boolean" },
          "can_manage_topics": { "type": "boolean" },
          "custom_title": { "type": "string" }
        },
        "type": "object"
      },
      "ChatMemberMember": {
        "description": "Represents a chat member that has no additional privileges or restrictions.",
        "required": ["status", "user"],
        "properties": {
          "status": { "type": "string" },
          "user": { "$ref": "#/components/schemas/User" },
          "until_date": { "type": "integer" }
        },
        "type": "object"
      },
      "ChatMemberRestricted": {
        "description": "Represents a chat member that is under certain restrictions in the chat. Supergroups only.",
        "required": [
          "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",
          "until_date"
        ],
        "properties": {
          "status": { "type": "string" },
          "user": { "$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": { "type": "boolean" },
          "can_pin_messages": { "type": "boolean" },
          "can_manage_topics": { "type": "boolean" },
          "until_date": { "type": "integer" }
        },
        "type": "object"
      },
      "ChatMemberLeft": {
        "description": "Represents a chat member that isn't currently a member of the chat, but may join it themselves.",
        "required": ["status", "user"],
        "properties": {
          "status": { "type": "string" },
          "user": { "$ref": "#/components/schemas/User" }
        },
        "type": "object"
      },
      "ChatMemberBanned": {
        "description": "Represents a chat member that was banned in the chat and can't return to the chat or view chat messages.",
        "required": ["status", "user", "until_date"],
        "properties": {
          "status": { "type": "string" },
          "user": { "$ref": "#/components/schemas/User" },
          "until_date": { "type": "integer" }
        },
        "type": "object"
      },
      "ChatJoinRequest": {
        "description": "Represents a join request sent to a chat.",
        "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": { "type": "string" },
          "invite_link": { "$ref": "#/components/schemas/ChatInviteLink" }
        },
        "type": "object"
      },
      "ChatPermissions": {
        "description": "Describes actions that a non-administrator user is allowed to take in a chat.",
        "properties": {
          "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": { "type": "boolean" },
          "can_pin_messages": { "type": "boolean" },
          "can_manage_topics": { "type": "boolean" }
        },
        "type": "object"
      },
      "Birthdate": {
        "description": "Describes the birthdate of a user.",
        "required": ["day", "month"],
        "properties": {
          "day": { "type": "integer" },
          "month": { "type": "integer" },
          "year": { "type": "integer" }
        },
        "type": "object"
      },
      "BusinessIntro": {
        "description": "Contains information about the start page settings of a Telegram Business account.",
        "properties": {
          "title": { "type": "string" },
          "message": { "type": "string" },
          "sticker": { "$ref": "#/components/schemas/Sticker" }
        },
        "type": "object"
      },
      "BusinessLocation": {
        "description": "Contains information about the location of a Telegram Business account.",
        "required": ["address"],
        "properties": {
          "address": { "type": "string" },
          "location": { "$ref": "#/components/schemas/Location" }
        },
        "type": "object"
      },
      "BusinessOpeningHoursInterval": {
        "description": "Describes an interval of time during which a business is open.",
        "required": ["opening_minute", "closing_minute"],
        "properties": {
          "opening_minute": { "type": "integer" },
          "closing_minute": { "type": "integer" }
        },
        "type": "object"
      },
      "BusinessOpeningHours": {
        "description": "Describes the opening hours of a business.",
        "required": ["time_zone_name", "opening_hours"],
        "properties": {
          "time_zone_name": { "type": "string" },
          "opening_hours": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/BusinessOpeningHoursInterval"
            }
          }
        },
        "type": "object"
      },
      "ChatLocation": {
        "description": "Represents a location to which a chat is connected.",
        "required": ["location", "address"],
        "properties": {
          "location": { "$ref": "#/components/schemas/Location" },
          "address": { "type": "string" }
        },
        "type": "object"
      },
      "ReactionType": {
        "description": "This object describes the type of a reaction. Currently, it can be one of",
        "anyOf": [
          { "$ref": "#/components/schemas/ReactionTypeEmoji" },
          { "$ref": "#/components/schemas/ReactionTypeCustomEmoji" },
          { "$ref": "#/components/schemas/ReactionTypePaid" }
        ]
      },
      "ReactionTypeEmoji": {
        "description": "The reaction is based on an emoji.",
        "required": ["type", "emoji"],
        "properties": {
          "type": { "type": "string" },
          "emoji": { "type": "string" }
        },
        "type": "object"
      },
      "ReactionTypeCustomEmoji": {
        "description": "The reaction is based on a custom emoji.",
        "required": ["type", "custom_emoji_id"],
        "properties": {
          "type": { "type": "string" },
          "custom_emoji_id": { "type": "string" }
        },
        "type": "object"
      },
      "ReactionTypePaid": {
        "description": "The reaction is paid.",
        "required": ["type"],
        "properties": { "type": { "type": "string" } },
        "type": "object"
      },
      "ReactionCount": {
        "description": "Represents a reaction added to a message along with the number of times it was added.",
        "required": ["type", "total_count"],
        "properties": {
          "type": { "$ref": "#/components/schemas/ReactionType" },
          "total_count": { "type": "integer" }
        },
        "type": "object"
      },
      "MessageReactionUpdated": {
        "description": "This object represents a change of a reaction on a message performed by a user.",
        "required": [
          "chat",
          "message_id",
          "date",
          "old_reaction",
          "new_reaction"
        ],
        "properties": {
          "chat": { "$ref": "#/components/schemas/Chat" },
          "message_id": { "type": "integer" },
          "user": { "$ref": "#/components/schemas/User" },
          "actor_chat": { "$ref": "#/components/schemas/Chat" },
          "date": { "type": "integer" },
          "old_reaction": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/ReactionType" }
          },
          "new_reaction": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/ReactionType" }
          }
        },
        "type": "object"
      },
      "MessageReactionCountUpdated": {
        "description": "This object represents reaction changes on a message with anonymous reactions.",
        "required": ["chat", "message_id", "date", "reactions"],
        "properties": {
          "chat": { "$ref": "#/components/schemas/Chat" },
          "message_id": { "type": "integer" },
          "date": { "type": "integer" },
          "reactions": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/ReactionCount" }
          }
        },
        "type": "object"
      },
      "ForumTopic": {
        "description": "This object represents a forum topic.",
        "required": ["message_thread_id", "name", "icon_color"],
        "properties": {
          "message_thread_id": { "type": "integer" },
          "name": { "type": "string" },
          "icon_color": { "type": "integer" },
          "icon_custom_emoji_id": { "type": "string" }
        },
        "type": "object"
      },
      "BotCommand": {
        "description": "This object represents a bot command.",
        "required": ["command", "description"],
        "properties": {
          "command": { "type": "string" },
          "description": { "type": "string" }
        },
        "type": "object"
      },
      "BotCommandScope": {
        "description": "This object represents the scope to which bot commands are applied. Currently, the following 7 scopes are supported:",
        "anyOf": [
          { "$ref": "#/components/schemas/BotCommandScopeDefault" },
          { "$ref": "#/components/schemas/BotCommandScopeAllPrivateChats" },
          { "$ref": "#/components/schemas/BotCommandScopeAllGroupChats" },
          {
            "$ref": "#/components/schemas/BotCommandScopeAllChatAdministrators"
          },
          { "$ref": "#/components/schemas/BotCommandScopeChat" },
          { "$ref": "#/components/schemas/BotCommandScopeChatAdministrators" },
          { "$ref": "#/components/schemas/BotCommandScopeChatMember" }
        ]
      },
      "BotCommandScopeDefault": {
        "description": "Represents the default scope of bot commands. Default commands are used if no commands with a narrower scope are specified for the user.",
        "required": ["type"],
        "properties": { "type": { "type": "string", "default": "default" } },
        "type": "object"
      },
      "BotCommandScopeAllPrivateChats": {
        "description": "Represents the scope of bot commands, covering all private chats.",
        "required": ["type"],
        "properties": {
          "type": { "type": "string", "default": "all_private_chats" }
        },
        "type": "object"
      },
      "BotCommandScopeAllGroupChats": {
        "description": "Represents the scope of bot commands, covering all group and supergroup chats.",
        "required": ["type"],
        "properties": {
          "type": { "type": "string", "default": "all_group_chats" }
        },
        "type": "object"
      },
      "BotCommandScopeAllChatAdministrators": {
        "description": "Represents the scope of bot commands, covering all group and supergroup chat administrators.",
        "required": ["type"],
        "properties": {
          "type": { "type": "string", "default": "all_chat_administrators" }
        },
        "type": "object"
      },
      "BotCommandScopeChat": {
        "description": "Represents the scope of bot commands, covering a specific chat.",
        "required": ["type", "chat_id"],
        "properties": {
          "type": { "type": "string", "default": "chat" },
          "chat_id": { "anyOf": [{ "type": "integer" }, { "type": "string" }] }
        },
        "type": "object"
      },
      "BotCommandScopeChatAdministrators": {
        "description": "Represents the scope of bot commands, covering all administrators of a specific group or supergroup chat.",
        "required": ["type", "chat_id"],
        "properties": {
          "type": { "type": "string", "default": "chat_administrators" },
          "chat_id": { "anyOf": [{ "type": "integer" }, { "type": "string" }] }
        },
        "type": "object"
      },
      "BotCommandScopeChatMember": {
        "description": "Represents the scope of bot commands, covering a specific member of a group or supergroup chat.",
        "required": ["type", "chat_id", "user_id"],
        "properties": {
          "type": { "type": "string", "default": "chat_member" },
          "chat_id": { "anyOf": [{ "type": "integer" }, { "type": "string" }] },
          "user_id": { "type": "integer" }
        },
        "type": "object"
      },
      "BotName": {
        "description": "This object represents the bot's name.",
        "required": ["name"],
        "properties": { "name": { "type": "string" } },
        "type": "object"
      },
      "BotDescription": {
        "description": "This object represents the bot's description.",
        "required": ["description"],
        "properties": { "description": { "type": "string" } },
        "type": "object"
      },
      "BotShortDescription": {
        "description": "This object represents the bot's short description.",
        "required": ["short_description"],
        "properties": { "short_description": { "type": "string" } },
        "type": "object"
      },
      "MenuButton": {
        "description": "This object describes the bot's menu button in a private chat. It should be one of",
        "anyOf": [
          { "$ref": "#/components/schemas/MenuButtonCommands" },
          { "$ref": "#/components/schemas/MenuButtonWebApp" },
          { "$ref": "#/components/schemas/MenuButtonDefault" }
        ]
      },
      "MenuButtonCommands": {
        "description": "Represents a menu button, which opens the bot's list of commands.",
        "required": ["type"],
        "properties": { "type": { "type": "string", "default": "commands" } },
        "type": "object"
      },
      "MenuButtonWebApp": {
        "description": "Represents a menu button, which launches a Web App.",
        "required": ["type", "text", "web_app"],
        "properties": {
          "type": { "type": "string", "default": "web_app" },
          "text": { "type": "string" },
          "web_app": { "$ref": "#/components/schemas/WebAppInfo" }
        },
        "type": "object"
      },
      "MenuButtonDefault": {
        "description": "Describes that no specific value for the menu button was set.",
        "required": ["type"],
        "properties": { "type": { "type": "string", "default": "default" } },
        "type": "object"
      },
      "ChatBoostSource": {
        "description": "This object describes the source of a chat boost. It can be one of",
        "anyOf": [
          { "$ref": "#/components/schemas/ChatBoostSourcePremium" },
          { "$ref": "#/components/schemas/ChatBoostSourceGiftCode" },
          { "$ref": "#/components/schemas/ChatBoostSourceGiveaway" }
        ]
      },
      "ChatBoostSourcePremium": {
        "description": "The boost was obtained by subscribing to Telegram Premium or by gifting a Telegram Premium subscription to another user.",
        "required": ["source", "user"],
        "properties": {
          "source": { "type": "string" },
          "user": { "$ref": "#/components/schemas/User" }
        },
        "type": "object"
      },
      "ChatBoostSourceGiftCode": {
        "description": "The boost was obtained by the creation of Telegram Premium gift codes to boost a chat. Each such code boosts the chat 4 times for the duration of the corresponding Telegram Premium subscription.",
        "required": ["source", "user"],
        "properties": {
          "source": { "type": "string" },
          "user": { "$ref": "#/components/schemas/User" }
        },
        "type": "object"
      },
      "ChatBoostSourceGiveaway": {
        "description": "The boost was obtained by the creation of a Telegram Premium giveaway. This boosts the chat 4 times for the duration of the corresponding Telegram Premium subscription.",
        "required": ["source", "giveaway_message_id"],
        "properties": {
          "source": { "type": "string" },
          "giveaway_message_id": { "type": "integer" },
          "user": { "$ref": "#/components/schemas/User" },
          "is_unclaimed": { "type": "boolean", "default": true }
        },
        "type": "object"
      },
      "ChatBoost": {
        "description": "This object contains information about a chat boost.",
        "required": ["boost_id", "add_date", "expiration_date", "source"],
        "properties": {
          "boost_id": { "type": "string" },
          "add_date": { "type": "integer" },
          "expiration_date": { "type": "integer" },
          "source": { "$ref": "#/components/schemas/ChatBoostSource" }
        },
        "type": "object"
      },
      "ChatBoostUpdated": {
        "description": "This object represents a boost added to a chat or changed.",
        "required": ["chat", "boost"],
        "properties": {
          "chat": { "$ref": "#/components/schemas/Chat" },
          "boost": { "$ref": "#/components/schemas/ChatBoost" }
        },
        "type": "object"
      },
      "ChatBoostRemoved": {
        "description": "This object represents a boost removed from a chat.",
        "required": ["chat", "boost_id", "remove_date", "source"],
        "properties": {
          "chat": { "$ref": "#/components/schemas/Chat" },
          "boost_id": { "type": "string" },
          "remove_date": { "type": "integer" },
          "source": { "$ref": "#/components/schemas/ChatBoostSource" }
        },
        "type": "object"
      },
      "UserChatBoosts": {
        "description": "This object represents a list of boosts added to a chat by a user.",
        "required": ["boosts"],
        "properties": {
          "boosts": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/ChatBoost" }
          }
        },
        "type": "object"
      },
      "BusinessConnection": {
        "description": "Describes the connection of the bot with a business account.",
        "required": [
          "id",
          "user",
          "user_chat_id",
          "date",
          "can_reply",
          "is_enabled"
        ],
        "properties": {
          "id": { "type": "string" },
          "user": { "$ref": "#/components/schemas/User" },
          "user_chat_id": { "type": "integer" },
          "date": { "type": "integer" },
          "can_reply": { "type": "boolean" },
          "is_enabled": { "type": "boolean" }
        },
        "type": "object"
      },
      "BusinessMessagesDeleted": {
        "description": "This object is received when messages are deleted from a connected business account.",
        "required": ["business_connection_id", "chat", "message_ids"],
        "properties": {
          "business_connection_id": { "type": "string" },
          "chat": { "$ref": "#/components/schemas/Chat" },
          "message_ids": { "type": "array", "items": { "type": "integer" } }
        },
        "type": "object"
      },
      "ResponseParameters": {
        "description": "Describes why a request was unsuccessful.",
        "properties": {
          "migrate_to_chat_id": { "type": "integer" },
          "retry_after": { "type": "integer" }
        },
        "type": "object"
      },
      "InputMedia": {
        "description": "This object represents the content of a media message to be sent. It should be one of",
        "anyOf": [
          { "$ref": "#/components/schemas/InputMediaAnimation" },
          { "$ref": "#/components/schemas/InputMediaDocument" },
          { "$ref": "#/components/schemas/InputMediaAudio" },
          { "$ref": "#/components/schemas/InputMediaPhoto" },
          { "$ref": "#/components/schemas/InputMediaVideo" }
        ]
      },
      "InputMediaPhoto": {
        "description": "Represents a photo to be sent.",
        "required": ["type", "media"],
        "properties": {
          "type": { "type": "string", "default": "photo" },
          "media": { "type": "string" },
          "caption": { "type": "string" },
          "parse_mode": { "type": "string" },
          "caption_entities": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/MessageEntity" }
          },
          "show_caption_above_media": { "type": "boolean" },
          "has_spoiler": { "type": "boolean" }
        },
        "type": "object"
      },
      "InputMediaVideo": {
        "description": "Represents a video to be sent.",
        "required": ["type", "media"],
        "properties": {
          "type": { "type": "string", "default": "video" },
          "media": { "type": "string" },
          "thumbnail": {
            "anyOf": [
              { "$ref": "#/components/schemas/InputFile" },
              { "type": "string" }
            ]
          },
          "caption": { "type": "string" },
          "parse_mode": { "type": "string" },
          "caption_entities": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/MessageEntity" }
          },
          "show_caption_above_media": { "type": "boolean" },
          "width": { "type": "integer" },
          "height": { "type": "integer" },
          "duration": { "type": "integer" },
          "supports_streaming": { "type": "boolean" },
          "has_spoiler": { "type": "boolean" }
        },
        "type": "object"
      },
      "InputMediaAnimation": {
        "description": "Represents an animation file (GIF or H.264/MPEG-4 AVC video without sound) to be sent.",
        "required": ["type", "media"],
        "properties": {
          "type": { "type": "string", "default": "animation" },
          "media": { "type": "string" },
          "thumbnail": {
            "anyOf": [
              { "$ref": "#/components/schemas/InputFile" },
              { "type": "string" }
            ]
          },
          "caption": { "type": "string" },
          "parse_mode": { "type": "string" },
          "caption_entities": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/MessageEntity" }
          },
          "show_caption_above_media": { "type": "boolean" },
          "width": { "type": "integer" },
          "height": { "type": "integer" },
          "duration": { "type": "integer" },
          "has_spoiler": { "type": "boolean" }
        },
        "type": "object"
      },
      "InputMediaAudio": {
        "description": "Represents an audio file to be treated as music to be sent.",
        "required": ["type", "media"],
        "properties": {
          "type": { "type": "string", "default": "audio" },
          "media": { "type": "string" },
          "thumbnail": {
            "anyOf": [
              { "$ref": "#/components/schemas/InputFile" },
              { "type": "string" }
            ]
          },
          "caption": { "type": "string" },
          "parse_mode": { "type": "string" },
          "caption_entities": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/MessageEntity" }
          },
          "duration": { "type": "integer" },
          "performer": { "type": "string" },
          "title": { "type": "string" }
        },
        "type": "object"
      },
      "InputMediaDocument": {
        "description": "Represents a general file to be sent.",
        "required": ["type", "media"],
        "properties": {
          "type": { "type": "string", "default": "document" },
          "media": { "type": "string" },
          "thumbnail": {
            "anyOf": [
              { "$ref": "#/components/schemas/InputFile" },
              { "type": "string" }
            ]
          },
          "caption": { "type": "string" },
          "parse_mode": { "type": "string" },
          "caption_entities": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/MessageEntity" }
          },
          "disable_content_type_detection": { "type": "boolean" }
        },
        "type": "object"
      },
      "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": [
          "file_id",
          "file_unique_id",
          "type",
          "width",
          "height",
          "is_animated",
          "is_video"
        ],
        "properties": {
          "file_id": { "type": "string" },
          "file_unique_id": { "type": "string" },
          "type": { "type": "string" },
          "width": { "type": "integer" },
          "height": { "type": "integer" },
          "is_animated": { "type": "boolean" },
          "is_video": { "type": "boolean" },
          "thumbnail": { "$ref": "#/components/schemas/PhotoSize" },
          "emoji": { "type": "string" },
          "set_name": { "type": "string" },
          "premium_animation": { "$ref": "#/components/schemas/File" },
          "mask_position": { "$ref": "#/components/schemas/MaskPosition" },
          "custom_emoji_id": { "type": "string" },
          "needs_repainting": { "type": "boolean", "default": true },
          "file_size": { "type": "integer" }
        },
        "type": "object"
      },
      "StickerSet": {
        "description": "This object represents a sticker set.",
        "required": ["name", "title", "sticker_type", "stickers"],
        "properties": {
          "name": { "type": "string" },
          "title": { "type": "string" },
          "sticker_type": { "type": "string" },
          "stickers": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/Sticker" }
          },
          "thumbnail": { "$ref": "#/components/schemas/PhotoSize" }
        },
        "type": "object"
      },
      "MaskPosition": {
        "description": "This object describes the position on faces where a mask should be placed by default.",
        "required": ["point", "x_shift", "y_shift", "scale"],
        "properties": {
          "point": { "type": "string" },
          "x_shift": { "type": "number" },
          "y_shift": { "type": "number" },
          "scale": { "type": "number" }
        },
        "type": "object"
      },
      "InputSticker": {
        "description": "This object describes a sticker to be added to a sticker set.",
        "required": ["sticker", "format", "emoji_list"],
        "properties": {
          "sticker": {
            "anyOf": [
              { "$ref": "#/components/schemas/InputFile" },
              { "type": "string" }
            ]
          },
          "format": { "type": "string" },
          "emoji_list": { "type": "array", "items": { "type": "string" } },
          "mask_position": { "$ref": "#/components/schemas/MaskPosition" },
          "keywords": { "type": "array", "items": { "type": "string" } }
        },
        "type": "object"
      },
      "InlineQuery": {
        "description": "This object represents an incoming inline query. When the user sends an empty query, your bot could return some default or trending results.",
        "required": ["id", "from", "query", "offset"],
        "properties": {
          "id": { "type": "string" },
          "from": { "$ref": "#/components/schemas/User" },
          "query": { "type": "string" },
          "offset": { "type": "string" },
          "chat_type": { "type": "string" },
          "location": { "$ref": "#/components/schemas/Location" }
        },
        "type": "object"
      },
      "InlineQueryResultsButton": {
        "description": "This object represents a button to be shown above inline query results. You must use exactly one of the optional fields.",
        "required": ["text"],
        "properties": {
          "text": { "type": "string" },
          "web_app": { "$ref": "#/components/schemas/WebAppInfo" },
          "start_parameter": { "type": "string" }
        },
        "type": "object"
      },
      "InlineQueryResult": {
        "description": "This object represents one result of an inline query. Telegram clients currently support results of the following 20 types:",
        "anyOf": [
          { "$ref": "#/components/schemas/InlineQueryResultCachedAudio" },
          { "$ref": "#/components/schemas/InlineQueryResultCachedDocument" },
          { "$ref": "#/components/schemas/InlineQueryResultCachedGif" },
          { "$ref": "#/components/schemas/InlineQueryResultCachedMpeg4Gif" },
          { "$ref": "#/components/schemas/InlineQueryResultCachedPhoto" },
          { "$ref": "#/components/schemas/InlineQueryResultCachedSticker" },
          { "$ref": "#/components/schemas/InlineQueryResultCachedVideo" },
          { "$ref": "#/components/schemas/InlineQueryResultCachedVoice" },
          { "$ref": "#/components/schemas/InlineQueryResultArticle" },
          { "$ref": "#/components/schemas/InlineQueryResultAudio" },
          { "$ref": "#/components/schemas/InlineQueryResultContact" },
          { "$ref": "#/components/schemas/InlineQueryResultGame" },
          { "$ref": "#/components/schemas/InlineQueryResultDocument" },
          { "$ref": "#/components/schemas/InlineQueryResultGif" },
          { "$ref": "#/components/schemas/InlineQueryResultLocation" },
          { "$ref": "#/components/schemas/InlineQueryResultMpeg4Gif" },
          { "$ref": "#/components/schemas/InlineQueryResultPhoto" },
          { "$ref": "#/components/schemas/InlineQueryResultVenue" },
          { "$ref": "#/components/schemas/InlineQueryResultVideo" },
          { "$ref": "#/components/schemas/InlineQueryResultVoice" }
        ]
      },
      "InlineQueryResultArticle": {
        "description": "Represents a link to an article or web page.",
        "required": ["type", "id", "title", "input_message_content"],
        "properties": {
          "type": { "type": "string", "default": "article" },
          "id": { "type": "string" },
          "title": { "type": "string" },
          "input_message_content": {
            "$ref": "#/components/schemas/InputMessageContent"
          },
          "reply_markup": {
            "$ref": "#/components/schemas/InlineKeyboardMarkup"
          },
          "url": { "type": "string" },
          "hide_url": { "type": "boolean" },
          "description": { "type": "string" },
          "thumbnail_url": { "type": "string" },
          "thumbnail_width": { "type": "integer" },
          "thumbnail_height": { "type": "integer" }
        },
        "type": "object"
      },
      "InlineQueryResultPhoto": {
        "description": "Represents a link to a photo. By default, this photo will be sent by the user with optional caption. Alternatively, you can use input_message_content to send a message with the specified content instead of the photo.",
        "required": ["type", "id", "photo_url", "thumbnail_url"],
        "properties": {
          "type": { "type": "string", "default": "photo" },
          "id": { "type": "string" },
          "photo_url": { "type": "string" },
          "thumbnail_url": { "type": "string" },
          "photo_width": { "type": "integer" },
          "photo_height": { "type": "integer" },
          "title": { "type": "string" },
          "description": { "type": "string" },
          "caption": { "type": "string" },
          "parse_mode": { "type": "string" },
          "caption_entities": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/MessageEntity" }
          },
          "show_caption_above_media": { "type": "boolean" },
          "reply_markup": {
            "$ref": "#/components/schemas/InlineKeyboardMarkup"
          },
          "input_message_content": {
            "$ref": "#/components/schemas/InputMessageContent"
          }
        },
        "type": "object"
      },
      "InlineQueryResultGif": {
        "description": "Represents a link to an animated GIF file. By default, this animated GIF file will be sent by the user with optional caption. Alternatively, you can use input_message_content to send a message with the specified content instead of the animation.",
        "required": ["type", "id", "gif_url", "thumbnail_url"],
        "properties": {
          "type": { "type": "string", "default": "gif" },
          "id": { "type": "string" },
          "gif_url": { "type": "string" },
          "gif_width": { "type": "integer" },
          "gif_height": { "type": "integer" },
          "gif_duration": { "type": "integer" },
          "thumbnail_url": { "type": "string" },
          "thumbnail_mime_type": { "type": "string", "default": "image/jpeg" },
          "title": { "type": "string" },
          "caption": { "type": "string" },
          "parse_mode": { "type": "string" },
          "caption_entities": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/MessageEntity" }
          },
          "show_caption_above_media": { "type": "boolean" },
          "reply_markup": {
            "$ref": "#/components/schemas/InlineKeyboardMarkup"
          },
          "input_message_content": {
            "$ref": "#/components/schemas/InputMessageContent"
          }
        },
        "type": "object"
      },
      "InlineQueryResultMpeg4Gif": {
        "description": "Represents a link to a video animation (H.264/MPEG-4 AVC video without sound). By default, this animated MPEG-4 file will be sent by the user with optional caption. Alternatively, you can use input_message_content to send a message with the specified content instead of the animation.",
        "required": ["type", "id", "mpeg4_url", "thumbnail_url"],
        "properties": {
          "type": { "type": "string", "default": "mpeg4_gif" },
          "id": { "type": "string" },
          "mpeg4_url": { "type": "string" },
          "mpeg4_width": { "type": "integer" },
          "mpeg4_height": { "type": "integer" },
          "mpeg4_duration": { "type": "integer" },
          "thumbnail_url": { "type": "string" },
          "thumbnail_mime_type": { "type": "string", "default": "image/jpeg" },
          "title": { "type": "string" },
          "caption": { "type": "string" },
          "parse_mode": { "type": "string" },
          "caption_entities": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/MessageEntity" }
          },
          "show_caption_above_media": { "type": "boolean" },
          "reply_markup": {
            "$ref": "#/components/schemas/InlineKeyboardMarkup"
          },
          "input_message_content": {
            "$ref": "#/components/schemas/InputMessageContent"
          }
        },
        "type": "object"
      },
      "InlineQueryResultVideo": {
        "description": "Represents a link to a page containing an embedded video player or a video file. By default, this video file will be sent by the user with an optional caption. Alternatively, you can use input_message_content to send a message with the specified content instead of the video.",
        "required": [
          "type",
          "id",
          "video_url",
          "mime_type",
          "thumbnail_url",
          "title"
        ],
        "properties": {
          "type": { "type": "string", "default": "video" },
          "id": { "type": "string" },
          "video_url": { "type": "string" },
          "mime_type": { "type": "string" },
          "thumbnail_url": { "type": "string" },
          "title": { "type": "string" },
          "caption": { "type": "string" },
          "parse_mode": { "type": "string" },
          "caption_entities": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/MessageEntity" }
          },
          "show_caption_above_media": { "type": "boolean" },
          "video_width": { "type": "integer" },
          "video_height": { "type": "integer" },
          "video_duration": { "type": "integer" },
          "description": { "type": "string" },
          "reply_markup": {
            "$ref": "#/components/schemas/InlineKeyboardMarkup"
          },
          "input_message_content": {
            "$ref": "#/components/schemas/InputMessageContent"
          }
        },
        "type": "object"
      },
      "InlineQueryResultAudio": {
        "description": "Represents a link to an MP3 audio file. By default, this audio file will be sent by the user. Alternatively, you can use input_message_content to send a message with the specified content instead of the audio.",
        "required": ["type", "id", "audio_url", "title"],
        "properties": {
          "type": { "type": "string", "default": "audio" },
          "id": { "type": "string" },
          "audio_url": { "type": "string" },
          "title": { "type": "string" },
          "caption": { "type": "string" },
          "parse_mode": { "type": "string" },
          "caption_entities": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/MessageEntity" }
          },
          "performer": { "type": "string" },
          "audio_duration": { "type": "integer" },
          "reply_markup": {
            "$ref": "#/components/schemas/InlineKeyboardMarkup"
          },
          "input_message_content": {
            "$ref": "#/components/schemas/InputMessageContent"
          }
        },
        "type": "object"
      },
      "InlineQueryResultVoice": {
        "description": "Represents a link to a voice recording in an .OGG container encoded with OPUS. By default, this voice recording will be sent by the user. Alternatively, you can use input_message_content to send a message with the specified content instead of the the voice message.",
        "required": ["type", "id", "voice_url", "title"],
        "properties": {
          "type": { "type": "string", "default": "voice" },
          "id": { "type": "string" },
          "voice_url": { "type": "string" },
          "title": { "type": "string" },
          "caption": { "type": "string" },
          "parse_mode": { "type": "string" },
          "caption_entities": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/MessageEntity" }
          },
          "voice_duration": { "type": "integer" },
          "reply_markup": {
            "$ref": "#/components/schemas/InlineKeyboardMarkup"
          },
          "input_message_content": {
            "$ref": "#/components/schemas/InputMessageContent"
          }
        },
        "type": "object"
      },
      "InlineQueryResultDocument": {
        "description": "Represents a link to a file. By default, this file will be sent by the user with an optional caption. Alternatively, you can use input_message_content to send a message with the specified content instead of the file. Currently, only .PDF and .ZIP files can be sent using this method.",
        "required": ["type", "id", "title", "document_url", "mime_type"],
        "properties": {
          "type": { "type": "string", "default": "document" },
          "id": { "type": "string" },
          "title": { "type": "string" },
          "caption": { "type": "string" },
          "parse_mode": { "type": "string" },
          "caption_entities": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/MessageEntity" }
          },
          "document_url": { "type": "string" },
          "mime_type": { "type": "string" },
          "description": { "type": "string" },
          "reply_markup": {
            "$ref": "#/components/schemas/InlineKeyboardMarkup"
          },
          "input_message_content": {
            "$ref": "#/components/schemas/InputMessageContent"
          },
          "thumbnail_url": { "type": "string" },
          "thumbnail_width": { "type": "integer" },
          "thumbnail_height": { "type": "integer" }
        },
        "type": "object"
      },
      "InlineQueryResultLocation": {
        "description": "Represents a location on a map. By default, the location will be sent by the user. Alternatively, you can use input_message_content to send a message with the specified content instead of the location.",
        "required": ["type", "id", "latitude", "longitude", "title"],
        "properties": {
          "type": { "type": "string", "default": "location" },
          "id": { "type": "string" },
          "latitude": { "type": "number" },
          "longitude": { "type": "number" },
          "title": { "type": "string" },
          "horizontal_accuracy": { "type": "number" },
          "live_period": { "type": "integer" },
          "heading": { "type": "integer" },
          "proximity_alert_radius": { "type": "integer" },
          "reply_markup": {
            "$ref": "#/components/schemas/InlineKeyboardMarkup"
          },
          "input_message_content": {
            "$ref": "#/components/schemas/InputMessageContent"
          },
          "thumbnail_url": { "type": "string" },
          "thumbnail_width": { "type": "integer" },
          "thumbnail_height": { "type": "integer" }
        },
        "type": "object"
      },
      "InlineQueryResultVenue": {
        "description": "Represents a venue. By default, the venue will be sent by the user. Alternatively, you can use input_message_content to send a message with the specified content instead of the venue.",
        "required": ["type", "id", "latitude", "longitude", "title", "address"],
        "properties": {
          "type": { "type": "string", "default": "venue" },
          "id": { "type": "string" },
          "latitude": { "type": "number" },
          "longitude": { "type": "number" },
          "title": { "type": "string" },
          "address": { "type": "string" },
          "foursquare_id": { "type": "string" },
          "foursquare_type": { "type": "string" },
          "google_place_id": { "type": "string" },
          "google_place_type": { "type": "string" },
          "reply_markup": {
            "$ref": "#/components/schemas/InlineKeyboardMarkup"
          },
          "input_message_content": {
            "$ref": "#/components/schemas/InputMessageContent"
          },
          "thumbnail_url": { "type": "string" },
          "thumbnail_width": { "type": "integer" },
          "thumbnail_height": { "type": "integer" }
        },
        "type": "object"
      },
      "InlineQueryResultContact": {
        "description": "Represents a contact with a phone number. By default, this contact will be sent by the user. Alternatively, you can use input_message_content to send a message with the specified content instead of the contact.",
        "required": ["type", "id", "phone_number", "first_name"],
        "properties": {
          "type": { "type": "string", "default": "contact" },
          "id": { "type": "string" },
          "phone_number": { "type": "string" },
          "first_name": { "type": "string" },
          "last_name": { "type": "string" },
          "vcard": { "type": "string" },
          "reply_markup": {
            "$ref": "#/components/schemas/InlineKeyboardMarkup"
          },
          "input_message_content": {
            "$ref": "#/components/schemas/InputMessageContent"
          },
          "thumbnail_url": { "type": "string" },
          "thumbnail_width": { "type": "integer" },
          "thumbnail_height": { "type": "integer" }
        },
        "type": "object"
      },
      "InlineQueryResultGame": {
        "description": "Represents a Game.",
        "required": ["type", "id", "game_short_name"],
        "properties": {
          "type": { "type": "string", "default": "game" },
          "id": { "type": "string" },
          "game_short_name": { "type": "string" },
          "reply_markup": {
            "$ref": "#/components/schemas/InlineKeyboardMarkup"
          }
        },
        "type": "object"
      },
      "InlineQueryResultCachedPhoto": {
        "description": "Represents a link to a photo stored on the Telegram servers. By default, this photo will be sent by the user with an optional caption. Alternatively, you can use input_message_content to send a message with the specified content instead of the photo.",
        "required": ["type", "id", "photo_file_id"],
        "properties": {
          "type": { "type": "string", "default": "photo" },
          "id": { "type": "string" },
          "photo_file_id": { "type": "string" },
          "title": { "type": "string" },
          "description": { "type": "string" },
          "caption": { "type": "string" },
          "parse_mode": { "type": "string" },
          "caption_entities": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/MessageEntity" }
          },
          "show_caption_above_media": { "type": "boolean" },
          "reply_markup": {
            "$ref": "#/components/schemas/InlineKeyboardMarkup"
          },
          "input_message_content": {
            "$ref": "#/components/schemas/InputMessageContent"
          }
        },
        "type": "object"
      },
      "InlineQueryResultCachedGif": {
        "description": "Represents a link to an animated GIF file stored on the Telegram servers. By default, this animated GIF file will be sent by the user with an optional caption. Alternatively, you can use input_message_content to send a message with specified content instead of the animation.",
        "required": ["type", "id", "gif_file_id"],
        "properties": {
          "type": { "type": "string", "default": "gif" },
          "id": { "type": "string" },
          "gif_file_id": { "type": "string" },
          "title": { "type": "string" },
          "caption": { "type": "string" },
          "parse_mode": { "type": "string" },
          "caption_entities": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/MessageEntity" }
          },
          "show_caption_above_media": { "type": "boolean" },
          "reply_markup": {
            "$ref": "#/components/schemas/InlineKeyboardMarkup"
          },
          "input_message_content": {
            "$ref": "#/components/schemas/InputMessageContent"
          }
        },
        "type": "object"
      },
      "InlineQueryResultCachedMpeg4Gif": {
        "description": "Represents a link to a video animation (H.264/MPEG-4 AVC video without sound) stored on the Telegram servers. By default, this animated MPEG-4 file will be sent by the user with an optional caption. Alternatively, you can use input_message_content to send a message with the specified content instead of the animation.",
        "required": ["type", "id", "mpeg4_file_id"],
        "properties": {
          "type": { "type": "string", "default": "mpeg4_gif" },
          "id": { "type": "string" },
          "mpeg4_file_id": { "type": "string" },
          "title": { "type": "string" },
          "caption": { "type": "string" },
          "parse_mode": { "type": "string" },
          "caption_entities": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/MessageEntity" }
          },
          "show_caption_above_media": { "type": "boolean" },
          "reply_markup": {
            "$ref": "#/components/schemas/InlineKeyboardMarkup"
          },
          "input_message_content": {
            "$ref": "#/components/schemas/InputMessageContent"
          }
        },
        "type": "object"
      },
      "InlineQueryResultCachedSticker": {
        "description": "Represents a link to a sticker stored on the Telegram servers. By default, this sticker will be sent by the user. Alternatively, you can use input_message_content to send a message with the specified content instead of the sticker.",
        "required": ["type", "id", "sticker_file_id"],
        "properties": {
          "type": { "type": "string", "default": "sticker" },
          "id": { "type": "string" },
          "sticker_file_id": { "type": "string" },
          "reply_markup": {
            "$ref": "#/components/schemas/InlineKeyboardMarkup"
          },
          "input_message_content": {
            "$ref": "#/components/schemas/InputMessageContent"
          }
        },
        "type": "object"
      },
      "InlineQueryResultCachedDocument": {
        "description": "Represents a link to a file stored on the Telegram servers. By default, this file will be sent by the user with an optional caption. Alternatively, you can use input_message_content to send a message with the specified content instead of the file.",
        "required": ["type", "id", "title", "document_file_id"],
        "properties": {
          "type": { "type": "string", "default": "document" },
          "id": { "type": "string" },
          "title": { "type": "string" },
          "document_file_id": { "type": "string" },
          "description": { "type": "string" },
          "caption": { "type": "string" },
          "parse_mode": { "type": "string" },
          "caption_entities": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/MessageEntity" }
          },
          "reply_markup": {
            "$ref": "#/components/schemas/InlineKeyboardMarkup"
          },
          "input_message_content": {
            "$ref": "#/components/schemas/InputMessageContent"
          }
        },
        "type": "object"
      },
      "InlineQueryResultCachedVideo": {
        "description": "Represents a link to a video file stored on the Telegram servers. By default, this video file will be sent by the user with an optional caption. Alternatively, you can use input_message_content to send a message with the specified content instead of the video.",
        "required": ["type", "id", "video_file_id", "title"],
        "properties": {
          "type": { "type": "string", "default": "video" },
          "id": { "type": "string" },
          "video_file_id": { "type": "string" },
          "title": { "type": "string" },
          "description": { "type": "string" },
          "caption": { "type": "string" },
          "parse_mode": { "type": "string" },
          "caption_entities": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/MessageEntity" }
          },
          "show_caption_above_media": { "type": "boolean" },
          "reply_markup": {
            "$ref": "#/components/schemas/InlineKeyboardMarkup"
          },
          "input_message_content": {
            "$ref": "#/components/schemas/InputMessageContent"
          }
        },
        "type": "object"
      },
      "InlineQueryResultCachedVoice": {
        "description": "Represents a link to a voice message stored on the Telegram servers. By default, this voice message will be sent by the user. Alternatively, you can use input_message_content to send a message with the specified content instead of the voice message.",
        "required": ["type", "id", "voice_file_id", "title"],
        "properties": {
          "type": { "type": "string", "default": "voice" },
          "id": { "type": "string" },
          "voice_file_id": { "type": "string" },
          "title": { "type": "string" },
          "caption": { "type": "string" },
          "parse_mode": { "type": "string" },
          "caption_entities": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/MessageEntity" }
          },
          "reply_markup": {
            "$ref": "#/components/schemas/InlineKeyboardMarkup"
          },
          "input_message_content": {
            "$ref": "#/components/schemas/InputMessageContent"
          }
        },
        "type": "object"
      },
      "InlineQueryResultCachedAudio": {
        "description": "Represents a link to an MP3 audio file stored on the Telegram servers. By default, this audio file will be sent by the user. Alternatively, you can use input_message_content to send a message with the specified content instead of the audio.",
        "required": ["type", "id", "audio_file_id"],
        "properties": {
          "type": { "type": "string", "default": "audio" },
          "id": { "type": "string" },
          "audio_file_id": { "type": "string" },
          "caption": { "type": "string" },
          "parse_mode": { "type": "string" },
          "caption_entities": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/MessageEntity" }
          },
          "reply_markup": {
            "$ref": "#/components/schemas/InlineKeyboardMarkup"
          },
          "input_message_content": {
            "$ref": "#/components/schemas/InputMessageContent"
          }
        },
        "type": "object"
      },
      "InputMessageContent": {
        "description": "This object represents the content of a message to be sent as a result of an inline query. Telegram clients currently support the following 5 types:",
        "anyOf": [
          { "$ref": "#/components/schemas/InputTextMessageContent" },
          { "$ref": "#/components/schemas/InputLocationMessageContent" },
          { "$ref": "#/components/schemas/InputVenueMessageContent" },
          { "$ref": "#/components/schemas/InputContactMessageContent" },
          { "$ref": "#/components/schemas/InputInvoiceMessageContent" }
        ]
      },
      "InputTextMessageContent": {
        "description": "Represents the content of a text message to be sent as the result of an inline query.",
        "required": ["message_text"],
        "properties": {
          "message_text": { "type": "string" },
          "parse_mode": { "type": "string" },
          "entities": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/MessageEntity" }
          },
          "link_preview_options": {
            "$ref": "#/components/schemas/LinkPreviewOptions"
          }
        },
        "type": "object"
      },
      "InputLocationMessageContent": {
        "description": "Represents the content of a location message to be sent as the result of an inline query.",
        "required": ["latitude", "longitude"],
        "properties": {
          "latitude": { "type": "number" },
          "longitude": { "type": "number" },
          "horizontal_accuracy": { "type": "number" },
          "live_period": { "type": "integer" },
          "heading": { "type": "integer" },
          "proximity_alert_radius": { "type": "integer" }
        },
        "type": "object"
      },
      "InputVenueMessageContent": {
        "description": "Represents the content of a venue message to be sent as the result of an inline query.",
        "required": ["latitude", "longitude", "title", "address"],
        "properties": {
          "latitude": { "type": "number" },
          "longitude": { "type": "number" },
          "title": { "type": "string" },
          "address": { "type": "string" },
          "foursquare_id": { "type": "string" },
          "foursquare_type": { "type": "string" },
          "google_place_id": { "type": "string" },
          "google_place_type": { "type": "string" }
        },
        "type": "object"
      },
      "InputContactMessageContent": {
        "description": "Represents the content of a contact message to be sent as the result of an inline query.",
        "required": ["phone_number", "first_name"],
        "properties": {
          "phone_number": { "type": "string" },
          "first_name": { "type": "string" },
          "last_name": { "type": "string" },
          "vcard": { "type": "string" }
        },
        "type": "object"
      },
      "InputInvoiceMessageContent": {
        "description": "Represents the content of an invoice message to be sent as the result of an inline query.",
        "required": ["title", "description", "payload", "currency", "prices"],
        "properties": {
          "title": { "type": "string" },
          "description": { "type": "string" },
          "payload": { "type": "string" },
          "provider_token": { "type": "string" },
          "currency": { "type": "string" },
          "prices": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/LabeledPrice" }
          },
          "max_tip_amount": { "type": "integer" },
          "suggested_tip_amounts": {
            "type": "array",
            "items": { "type": "integer" }
          },
          "provider_data": { "type": "string" },
          "photo_url": { "type": "string" },
          "photo_size": { "type": "integer" },
          "photo_width": { "type": "integer" },
          "photo_height": { "type": "integer" },
          "need_name": { "type": "boolean" },
          "need_phone_number": { "type": "boolean" },
          "need_email": { "type": "boolean" },
          "need_shipping_address": { "type": "boolean" },
          "send_phone_number_to_provider": { "type": "boolean" },
          "send_email_to_provider": { "type": "boolean" },
          "is_flexible": { "type": "boolean" }
        },
        "type": "object"
      },
      "ChosenInlineResult": {
        "description": "Represents a result of an inline query that was chosen by the user and sent to their chat partner.",
        "required": ["result_id", "from", "query"],
        "properties": {
          "result_id": { "type": "string" },
          "from": { "$ref": "#/components/schemas/User" },
          "location": { "$ref": "#/components/schemas/Location" },
          "inline_message_id": { "type": "string" },
          "query": { "type": "string" }
        },
        "type": "object"
      },
      "SentWebAppMessage": {
        "description": "Describes an inline message sent by a Web App on behalf of a user.",
        "properties": { "inline_message_id": { "type": "string" } },
        "type": "object"
      },
      "LabeledPrice": {
        "description": "This object represents a portion of the price for goods or services.",
        "required": ["label", "amount"],
        "properties": {
          "label": { "type": "string" },
          "amount": { "type": "integer" }
        },
        "type": "object"
      },
      "Invoice": {
        "description": "This object contains basic information about an invoice.",
        "required": [
          "title",
          "description",
          "start_parameter",
          "currency",
          "total_amount"
        ],
        "properties": {
          "title": { "type": "string" },
          "description": { "type": "string" },
          "start_parameter": { "type": "string" },
          "currency": { "type": "string" },
          "total_amount": { "type": "integer" }
        },
        "type": "object"
      },
      "ShippingAddress": {
        "description": "This object represents a shipping address.",
        "required": [
          "country_code",
          "state",
          "city",
          "street_line1",
          "street_line2",
          "post_code"
        ],
        "properties": {
          "country_code": { "type": "string" },
          "state": { "type": "string" },
          "city": { "type": "string" },
          "street_line1": { "type": "string" },
          "street_line2": { "type": "string" },
          "post_code": { "type": "string" }
        },
        "type": "object"
      },
      "OrderInfo": {
        "description": "This object represents information about an order.",
        "properties": {
          "name": { "type": "string" },
          "phone_number": { "type": "string" },
          "email": { "type": "string" },
          "shipping_address": { "$ref": "#/components/schemas/ShippingAddress" }
        },
        "type": "object"
      },
      "ShippingOption": {
        "description": "This object represents one shipping option.",
        "required": ["id", "title", "prices"],
        "properties": {
          "id": { "type": "string" },
          "title": { "type": "string" },
          "prices": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/LabeledPrice" }
          }
        },
        "type": "object"
      },
      "SuccessfulPayment": {
        "description": "This object contains basic information about a successful payment.",
        "required": [
          "currency",
          "total_amount",
          "invoice_payload",
          "telegram_payment_charge_id",
          "provider_payment_charge_id"
        ],
        "properties": {
          "currency": { "type": "string" },
          "total_amount": { "type": "integer" },
          "invoice_payload": { "type": "string" },
          "shipping_option_id": { "type": "string" },
          "order_info": { "$ref": "#/components/schemas/OrderInfo" },
          "telegram_payment_charge_id": { "type": "string" },
          "provider_payment_charge_id": { "type": "string" }
        },
        "type": "object"
      },
      "RefundedPayment": {
        "description": "This object contains basic information about a refunded payment.",
        "required": [
          "currency",
          "total_amount",
          "invoice_payload",
          "telegram_payment_charge_id"
        ],
        "properties": {
          "currency": { "type": "string" },
          "total_amount": { "type": "integer" },
          "invoice_payload": { "type": "string" },
          "telegram_payment_charge_id": { "type": "string" },
          "provider_payment_charge_id": { "type": "string" }
        },
        "type": "object"
      },
      "ShippingQuery": {
        "description": "This object contains information about an incoming shipping query.",
        "required": ["id", "from", "invoice_payload", "shipping_address"],
        "properties": {
          "id": { "type": "string" },
          "from": { "$ref": "#/components/schemas/User" },
          "invoice_payload": { "type": "string" },
          "shipping_address": { "$ref": "#/components/schemas/ShippingAddress" }
        },
        "type": "object"
      },
      "PreCheckoutQuery": {
        "description": "This object contains information about an incoming pre-checkout query.",
        "required": [
          "id",
          "from",
          "currency",
          "total_amount",
          "invoice_payload"
        ],
        "properties": {
          "id": { "type": "string" },
          "from": { "$ref": "#/components/schemas/User" },
          "currency": { "type": "string" },
          "total_amount": { "type": "integer" },
          "invoice_payload": { "type": "string" },
          "shipping_option_id": { "type": "string" },
          "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" },
          "paid_media": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/PaidMedia" }
          }
        },
        "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": ["data", "credentials"],
        "properties": {
          "data": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/EncryptedPassportElement" }
          },
          "credentials": { "$ref": "#/components/schemas/EncryptedCredentials" }
        },
        "type": "object"
      },
      "PassportFile": {
        "description": "This object represents a file uploaded to Telegram Passport. Currently all Telegram Passport files are in JPEG format when decrypted and don't exceed 10MB.",
        "required": ["file_id", "file_unique_id", "file_size", "file_date"],
        "properties": {
          "file_id": { "type": "string" },
          "file_unique_id": { "type": "string" },
          "file_size": { "type": "integer" },
          "file_date": { "type": "integer" }
        },
        "type": "object"
      },
      "EncryptedPassportElement": {
        "description": "Describes documents or other Telegram Passport elements shared with the bot by the user.",
        "required": ["type", "hash"],
        "properties": {
          "type": { "type": "string" },
          "data": { "type": "string" },
          "phone_number": { "type": "string" },
          "email": { "type": "string" },
          "files": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/PassportFile" }
          },
          "front_side": { "$ref": "#/components/schemas/PassportFile" },
          "reverse_side": { "$ref": "#/components/schemas/PassportFile" },
          "selfie": { "$ref": "#/components/schemas/PassportFile" },
          "translation": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/PassportFile" }
          },
          "hash": { "type": "string" }
        },
        "type": "object"
      },
      "EncryptedCredentials": {
        "description": "Describes data required for decrypting and authenticating EncryptedPassportElement. See the Telegram Passport Documentation for a complete description of the data decryption and authentication processes.",
        "required": ["data", "hash", "secret"],
        "properties": {
          "data": { "type": "string" },
          "hash": { "type": "string" },
          "secret": { "type": "string" }
        },
        "type": "object"
      },
      "PassportElementError": {
        "description": "This object represents an error in the Telegram Passport element which was submitted that should be resolved by the user. It should be one of:",
        "anyOf": [
          { "$ref": "#/components/schemas/PassportElementErrorDataField" },
          { "$ref": "#/components/schemas/PassportElementErrorFrontSide" },
          { "$ref": "#/components/schemas/PassportElementErrorReverseSide" },
          { "$ref": "#/components/schemas/PassportElementErrorSelfie" },
          { "$ref": "#/components/schemas/PassportElementErrorFile" },
          { "$ref": "#/components/schemas/PassportElementErrorFiles" },
          {
            "$ref": "#/components/schemas/PassportElementErrorTranslationFile"
          },
          {
            "$ref": "#/components/schemas/PassportElementErrorTranslationFiles"
          },
          { "$ref": "#/components/schemas/PassportElementErrorUnspecified" }
        ]
      },
      "PassportElementErrorDataField": {
        "description": "Represents an issue in one of the data fields that was provided by the user. The error is considered resolved when the field's value changes.",
        "required": ["source", "type", "field_name", "data_hash", "message"],
        "properties": {
          "source": { "type": "string", "default": "data" },
          "type": { "type": "string" },
          "field_name": { "type": "string" },
          "data_hash": { "type": "string" },
          "message": { "type": "string" }
        },
        "type": "object"
      },
      "PassportElementErrorFrontSide": {
        "description": "Represents an issue with the front side of a document. The error is considered resolved when the file with the front side of the document changes.",
        "required": ["source", "type", "file_hash", "message"],
        "properties": {
          "source": { "type": "string", "default": "front_side" },
          "type": { "type": "string" },
          "file_hash": { "type": "string" },
          "message": { "type": "string" }
        },
        "type": "object"
      },
      "PassportElementErrorReverseSide": {
        "description": "Represents an issue with the reverse side of a document. The error is considered resolved when the file with reverse side of the document changes.",
        "required": ["source", "type", "file_hash", "message"],
        "properties": {
          "source": { "type": "string", "default": "reverse_side" },
          "type": { "type": "string" },
          "file_hash": { "type": "string" },
          "message": { "type": "string" }
        },
        "type": "object"
      },
      "PassportElementErrorSelfie": {
        "description": "Represents an issue with the selfie with a document. The error is considered resolved when the file with the selfie changes.",
        "required": ["source", "type", "file_hash", "message"],
        "properties": {
          "source": { "type": "string", "default": "selfie" },
          "type": { "type": "string" },
          "file_hash": { "type": "string" },
          "message": { "type": "string" }
        },
        "type": "object"
      },
      "PassportElementErrorFile": {
        "description": "Represents an issue with a document scan. The error is considered resolved when the file with the document scan changes.",
        "required": ["source", "type", "file_hash", "message"],
        "properties": {
          "source": { "type": "string", "default": "file" },
          "type": { "type": "string" },
          "file_hash": { "type": "string" },
          "message": { "type": "string" }
        },
        "type": "object"
      },
      "PassportElementErrorFiles": {
        "description": "Represents an issue with a list of scans. The error is considered resolved when the list of files containing the scans changes.",
        "required": ["source", "type", "file_hashes", "message"],
        "properties": {
          "source": { "type": "string", "default": "files" },
          "type": { "type": "string" },
          "file_hashes": { "type": "array", "items": { "type": "string" } },
          "message": { "type": "string" }
        },
        "type": "object"
      },
      "PassportElementErrorTranslationFile": {
        "description": "Represents an issue with one of the files that constitute the translation of a document. The error is considered resolved when the file changes.",
        "required": ["source", "type", "file_hash", "message"],
        "properties": {
          "source": { "type": "string", "default": "translation_file" },
          "type": { "type": "string" },
          "file_hash": { "type": "string" },
          "message": { "type": "string" }
        },
        "type": "object"
      },
      "PassportElementErrorTranslationFiles": {
        "description": "Represents an issue with the translated version of a document. The error is considered resolved when a file with the document translation change.",
        "required": ["source", "type", "file_hashes", "message"],
        "properties": {
          "source": { "type": "string", "default": "translation_files" },
          "type": { "type": "string" },
          "file_hashes": { "type": "array", "items": { "type": "string" } },
          "message": { "type": "string" }
        },
        "type": "object"
      },
      "PassportElementErrorUnspecified": {
        "description": "Represents an issue in an unspecified place. The error is considered resolved when new data is added.",
        "required": ["source", "type", "element_hash", "message"],
        "properties": {
          "source": { "type": "string", "default": "unspecified" },
          "type": { "type": "string" },
          "element_hash": { "type": "string" },
          "message": { "type": "string" }
        },
        "type": "object"
      },
      "Game": {
        "description": "This object represents a game. Use BotFather to create and edit games, their short names will act as unique identifiers.",
        "required": ["title", "description", "photo"],
        "properties": {
          "title": { "type": "string" },
          "description": { "type": "string" },
          "photo": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/PhotoSize" }
          },
          "text": { "type": "string" },
          "text_entities": {
            "type": "array",
            "items": { "$ref": "#/components/schemas/MessageEntity" }
          },
          "animation": { "$ref": "#/components/schemas/Animation" }
        },
        "type": "object"
      },
      "CallbackGame": {
        "description": "A placeholder, currently holds no information. Use BotFather to set up your game.",
        "type": "object"
      },
      "GameHighScore": {
        "description": "This object represents one row of the high scores table for a game.",
        "required": ["position", "user", "score"],
        "properties": {
          "position": { "type": "integer" },
          "user": { "$ref": "#/components/schemas/User" },
          "score": { "type": "integer" }
        },
        "type": "object"
      }
    }
  },
  "paths": {
    "/getUpdates": {
      "description": "Use this method to receive incoming updates using long polling (wiki). Returns an Array of Update objects.",
      "post": {
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "offset": { "type": "integer" },
                  "limit": { "type": "integer", "default": 100 },
                  "timeout": { "type": "integer" },
                  "allowed_updates": {
                    "type": "array",
                    "items": { "type": "string" }
                  }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "offset": { "type": "integer" },
                  "limit": { "type": "integer", "default": 100 },
                  "timeout": { "type": "integer" },
                  "allowed_updates": {
                    "type": "array",
                    "items": { "type": "string" }
                  }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "offset": { "type": "integer" },
                  "limit": { "type": "integer", "default": 100 },
                  "timeout": { "type": "integer" },
                  "allowed_updates": {
                    "type": "array",
                    "items": { "type": "string" }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": {
                        "result": {
                          "type": "array",
                          "items": { "$ref": "#/components/schemas/Update" }
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/setWebhook": {
      "description": "Use this method to specify a URL and receive incoming updates via an outgoing webhook. Whenever there is an update for the bot, we will send an HTTPS POST request to the specified URL, containing a JSON-serialized Update. In case of an unsuccessful request, we will give up after a reasonable amount of attempts. Returns True on success.\r\nIf you'd like to make sure that the webhook was set by you, you can specify secret data in the parameter secret_token. If specified, the request will contain a header \u201cX-Telegram-Bot-Api-Secret-Token\u201d with the secret token as content.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["url"],
                "properties": {
                  "url": { "type": "string" },
                  "certificate": { "$ref": "#/components/schemas/InputFile" },
                  "ip_address": { "type": "string" },
                  "max_connections": { "type": "integer", "default": 40 },
                  "allowed_updates": {
                    "type": "array",
                    "items": { "type": "string" }
                  },
                  "drop_pending_updates": { "type": "boolean" },
                  "secret_token": { "type": "string" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["url"],
                "properties": {
                  "url": { "type": "string" },
                  "certificate": { "$ref": "#/components/schemas/InputFile" },
                  "ip_address": { "type": "string" },
                  "max_connections": { "type": "integer", "default": 40 },
                  "allowed_updates": {
                    "type": "array",
                    "items": { "type": "string" }
                  },
                  "drop_pending_updates": { "type": "boolean" },
                  "secret_token": { "type": "string" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["url"],
                "properties": {
                  "url": { "type": "string" },
                  "certificate": { "$ref": "#/components/schemas/InputFile" },
                  "ip_address": { "type": "string" },
                  "max_connections": { "type": "integer", "default": 40 },
                  "allowed_updates": {
                    "type": "array",
                    "items": { "type": "string" }
                  },
                  "drop_pending_updates": { "type": "boolean" },
                  "secret_token": { "type": "string" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/deleteWebhook": {
      "description": "Use this method to remove webhook integration if you decide to switch back to getUpdates. Returns True on success.",
      "post": {
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": { "drop_pending_updates": { "type": "boolean" } }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": { "drop_pending_updates": { "type": "boolean" } }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": { "drop_pending_updates": { "type": "boolean" } }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/getWebhookInfo": {
      "description": "Use this method to get current webhook status. Requires no parameters. On success, returns a WebhookInfo object. If the bot is using getUpdates, will return an object with the url field empty.",
      "post": {
        "requestBody": {
          "content": {
            "application/json": { "schema": { "type": "object" } },
            "application/x-www-form-urlencoded": {
              "schema": { "type": "object" }
            },
            "multipart/form-data": { "schema": { "type": "object" } }
          }
        },
        "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/WebhookInfo" }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/getMe": {
      "description": "A simple method for testing your bot's authentication token. Requires no parameters. Returns basic information about the bot in form of a User object.",
      "post": {
        "requestBody": {
          "content": {
            "application/json": { "schema": { "type": "object" } },
            "application/x-www-form-urlencoded": {
              "schema": { "type": "object" }
            },
            "multipart/form-data": { "schema": { "type": "object" } }
          }
        },
        "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/User" }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/logOut": {
      "description": "Use this method to log out from the cloud Bot API server before launching the bot locally. You must log out the bot before running it locally, otherwise there is no guarantee that the bot will receive updates. After a successful call, you can immediately log in on a local server, but will not be able to log in back to the cloud Bot API server for 10 minutes. Returns True on success. Requires no parameters.",
      "post": {
        "requestBody": {
          "content": {
            "application/json": { "schema": { "type": "object" } },
            "application/x-www-form-urlencoded": {
              "schema": { "type": "object" }
            },
            "multipart/form-data": { "schema": { "type": "object" } }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/close": {
      "description": "Use this method to close the bot instance before moving it from one local server to another. You need to delete the webhook before calling this method to ensure that the bot isn't launched again after server restart. The method will return error 429 in the first 10 minutes after the bot is launched. Returns True on success. Requires no parameters.",
      "post": {
        "requestBody": {
          "content": {
            "application/json": { "schema": { "type": "object" } },
            "application/x-www-form-urlencoded": {
              "schema": { "type": "object" }
            },
            "multipart/form-data": { "schema": { "type": "object" } }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/sendMessage": {
      "description": "Use this method to send text messages. On success, the sent Message is returned.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "text": { "type": "string" },
                  "parse_mode": { "type": "string" },
                  "entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "link_preview_options": {
                    "$ref": "#/components/schemas/LinkPreviewOptions"
                  },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "text"]
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "text": { "type": "string" },
                  "parse_mode": { "type": "string" },
                  "entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "link_preview_options": {
                    "$ref": "#/components/schemas/LinkPreviewOptions"
                  },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "text"]
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "text": { "type": "string" },
                  "parse_mode": { "type": "string" },
                  "entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "link_preview_options": {
                    "$ref": "#/components/schemas/LinkPreviewOptions"
                  },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "text"]
              }
            }
          }
        },
        "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" }
        }
      }
    },
    "/forwardMessage": {
      "description": "Use this method to forward messages of any kind. Service messages and messages with protected content can't be forwarded. On success, the sent Message is returned.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "from_chat_id", "message_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "from_chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_id": { "type": "integer" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "from_chat_id", "message_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "from_chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_id": { "type": "integer" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "from_chat_id", "message_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "from_chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_id": { "type": "integer" }
                }
              }
            }
          }
        },
        "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" }
        }
      }
    },
    "/forwardMessages": {
      "description": "Use this method to forward multiple messages of any kind. If some of the specified messages can't be found or forwarded, they are skipped. Service messages and messages with protected content can't be forwarded. Album grouping is kept for forwarded messages. On success, an array of MessageId of the sent messages is returned.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "from_chat_id", "message_ids"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "from_chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_ids": {
                    "type": "array",
                    "items": { "type": "integer" }
                  },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "from_chat_id", "message_ids"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "from_chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_ids": {
                    "type": "array",
                    "items": { "type": "integer" }
                  },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "from_chat_id", "message_ids"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "from_chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_ids": {
                    "type": "array",
                    "items": { "type": "integer" }
                  },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": {
                        "result": {
                          "type": "array",
                          "items": { "$ref": "#/components/schemas/MessageId" }
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/copyMessage": {
      "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,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "from_chat_id", "message_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "from_chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" },
                  "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", "from_chat_id", "message_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "from_chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" },
                  "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", "from_chat_id", "message_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "from_chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" },
                  "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/MessageId" }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/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, 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,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "from_chat_id", "message_ids"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "from_chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_ids": {
                    "type": "array",
                    "items": { "type": "integer" }
                  },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "remove_caption": { "type": "boolean" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "from_chat_id", "message_ids"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "from_chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_ids": {
                    "type": "array",
                    "items": { "type": "integer" }
                  },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "remove_caption": { "type": "boolean" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "from_chat_id", "message_ids"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "from_chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_ids": {
                    "type": "array",
                    "items": { "type": "integer" }
                  },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "remove_caption": { "type": "boolean" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": {
                        "result": {
                          "type": "array",
                          "items": { "$ref": "#/components/schemas/MessageId" }
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/sendPhoto": {
      "description": "Use this method to send photos. On success, the sent Message is returned.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "photo": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "caption": { "type": "string" },
                  "parse_mode": { "type": "string" },
                  "caption_entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "show_caption_above_media": { "type": "boolean" },
                  "has_spoiler": { "type": "boolean" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "photo"]
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "photo": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "caption": { "type": "string" },
                  "parse_mode": { "type": "string" },
                  "caption_entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "show_caption_above_media": { "type": "boolean" },
                  "has_spoiler": { "type": "boolean" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "photo"]
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "photo": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "caption": { "type": "string" },
                  "parse_mode": { "type": "string" },
                  "caption_entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "show_caption_above_media": { "type": "boolean" },
                  "has_spoiler": { "type": "boolean" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "photo"]
              }
            }
          }
        },
        "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" }
        }
      }
    },
    "/sendAudio": {
      "description": "Use this method to send audio files, if you want Telegram clients to display them in the music player. Your audio must be in the .MP3 or .M4A format. On success, the sent Message is returned. Bots can currently send audio files of up to 50 MB in size, this limit may be changed in the future.\r\nFor sending voice messages, use the sendVoice method instead.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "audio": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "caption": { "type": "string" },
                  "parse_mode": { "type": "string" },
                  "caption_entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "duration": { "type": "integer" },
                  "performer": { "type": "string" },
                  "title": { "type": "string" },
                  "thumbnail": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "audio"]
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "audio": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "caption": { "type": "string" },
                  "parse_mode": { "type": "string" },
                  "caption_entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "duration": { "type": "integer" },
                  "performer": { "type": "string" },
                  "title": { "type": "string" },
                  "thumbnail": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "audio"]
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "audio": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "caption": { "type": "string" },
                  "parse_mode": { "type": "string" },
                  "caption_entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "duration": { "type": "integer" },
                  "performer": { "type": "string" },
                  "title": { "type": "string" },
                  "thumbnail": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "audio"]
              }
            }
          }
        },
        "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" }
        }
      }
    },
    "/sendDocument": {
      "description": "Use this method to send general files. On success, the sent Message is returned. Bots can currently send files of any type of up to 50 MB in size, this limit may be changed in the future.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "document": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "thumbnail": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "caption": { "type": "string" },
                  "parse_mode": { "type": "string" },
                  "caption_entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "disable_content_type_detection": { "type": "boolean" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "document"]
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "document": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "thumbnail": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "caption": { "type": "string" },
                  "parse_mode": { "type": "string" },
                  "caption_entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "disable_content_type_detection": { "type": "boolean" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "document"]
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "document": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "thumbnail": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "caption": { "type": "string" },
                  "parse_mode": { "type": "string" },
                  "caption_entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "disable_content_type_detection": { "type": "boolean" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "document"]
              }
            }
          }
        },
        "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" }
        }
      }
    },
    "/sendVideo": {
      "description": "Use this method to send video files, Telegram clients support MPEG4 videos (other formats may be sent as Document). On success, the sent Message is returned. Bots can currently send video files of up to 50 MB in size, this limit may be changed in the future.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "video": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "duration": { "type": "integer" },
                  "width": { "type": "integer" },
                  "height": { "type": "integer" },
                  "thumbnail": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "caption": { "type": "string" },
                  "parse_mode": { "type": "string" },
                  "caption_entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "show_caption_above_media": { "type": "boolean" },
                  "has_spoiler": { "type": "boolean" },
                  "supports_streaming": { "type": "boolean" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "video"]
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "video": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "duration": { "type": "integer" },
                  "width": { "type": "integer" },
                  "height": { "type": "integer" },
                  "thumbnail": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "caption": { "type": "string" },
                  "parse_mode": { "type": "string" },
                  "caption_entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "show_caption_above_media": { "type": "boolean" },
                  "has_spoiler": { "type": "boolean" },
                  "supports_streaming": { "type": "boolean" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "video"]
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "video": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "duration": { "type": "integer" },
                  "width": { "type": "integer" },
                  "height": { "type": "integer" },
                  "thumbnail": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "caption": { "type": "string" },
                  "parse_mode": { "type": "string" },
                  "caption_entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "show_caption_above_media": { "type": "boolean" },
                  "has_spoiler": { "type": "boolean" },
                  "supports_streaming": { "type": "boolean" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "video"]
              }
            }
          }
        },
        "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" }
        }
      }
    },
    "/sendAnimation": {
      "description": "Use this method to send animation files (GIF or H.264/MPEG-4 AVC video without sound). On success, the sent Message is returned. Bots can currently send animation files of up to 50 MB in size, this limit may be changed in the future.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "animation": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "duration": { "type": "integer" },
                  "width": { "type": "integer" },
                  "height": { "type": "integer" },
                  "thumbnail": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "caption": { "type": "string" },
                  "parse_mode": { "type": "string" },
                  "caption_entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "show_caption_above_media": { "type": "boolean" },
                  "has_spoiler": { "type": "boolean" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "animation"]
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "animation": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "duration": { "type": "integer" },
                  "width": { "type": "integer" },
                  "height": { "type": "integer" },
                  "thumbnail": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "caption": { "type": "string" },
                  "parse_mode": { "type": "string" },
                  "caption_entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "show_caption_above_media": { "type": "boolean" },
                  "has_spoiler": { "type": "boolean" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "animation"]
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "animation": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "duration": { "type": "integer" },
                  "width": { "type": "integer" },
                  "height": { "type": "integer" },
                  "thumbnail": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "caption": { "type": "string" },
                  "parse_mode": { "type": "string" },
                  "caption_entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "show_caption_above_media": { "type": "boolean" },
                  "has_spoiler": { "type": "boolean" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "animation"]
              }
            }
          }
        },
        "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" }
        }
      }
    },
    "/sendVoice": {
      "description": "Use this method to send audio files, if you want Telegram clients to display the file as a playable voice message. For this to work, your audio must be in an .OGG file encoded with OPUS, or in .MP3 format, or in .M4A format (other formats may be sent as Audio or Document). On success, the sent Message is returned. Bots can currently send voice messages of up to 50 MB in size, this limit may be changed in the future.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "voice": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "caption": { "type": "string" },
                  "parse_mode": { "type": "string" },
                  "caption_entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "duration": { "type": "integer" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "voice"]
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "voice": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "caption": { "type": "string" },
                  "parse_mode": { "type": "string" },
                  "caption_entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "duration": { "type": "integer" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "voice"]
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "voice": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "caption": { "type": "string" },
                  "parse_mode": { "type": "string" },
                  "caption_entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "duration": { "type": "integer" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "voice"]
              }
            }
          }
        },
        "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" }
        }
      }
    },
    "/sendVideoNote": {
      "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.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "video_note": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "duration": { "type": "integer" },
                  "length": { "type": "integer" },
                  "thumbnail": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "video_note"]
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "video_note": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "duration": { "type": "integer" },
                  "length": { "type": "integer" },
                  "thumbnail": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "video_note"]
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "video_note": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "duration": { "type": "integer" },
                  "length": { "type": "integer" },
                  "thumbnail": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "video_note"]
              }
            }
          }
        },
        "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" }
        }
      }
    },
    "/sendPaidMedia": {
      "description": "Use this method to send paid media. On success, the sent Message is returned.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "star_count", "media"]
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "star_count", "media"]
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "star_count", "media"]
              }
            }
          }
        },
        "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": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "media": {
                    "type": "array",
                    "items": {
                      "anyOf": [
                        { "$ref": "#/components/schemas/InputMediaAudio" },
                        { "$ref": "#/components/schemas/InputMediaDocument" },
                        { "$ref": "#/components/schemas/InputMediaPhoto" },
                        { "$ref": "#/components/schemas/InputMediaVideo" }
                      ]
                    }
                  },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "reply_parameters": {
                    "$ref": "#/components/schemas/ReplyParameters"
                  }
                },
                "required": ["chat_id", "media"]
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "media": {
                    "type": "array",
                    "items": {
                      "anyOf": [
                        { "$ref": "#/components/schemas/InputMediaAudio" },
                        { "$ref": "#/components/schemas/InputMediaDocument" },
                        { "$ref": "#/components/schemas/InputMediaPhoto" },
                        { "$ref": "#/components/schemas/InputMediaVideo" }
                      ]
                    }
                  },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "reply_parameters": {
                    "$ref": "#/components/schemas/ReplyParameters"
                  }
                },
                "required": ["chat_id", "media"]
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "media": {
                    "type": "array",
                    "items": {
                      "anyOf": [
                        { "$ref": "#/components/schemas/InputMediaAudio" },
                        { "$ref": "#/components/schemas/InputMediaDocument" },
                        { "$ref": "#/components/schemas/InputMediaPhoto" },
                        { "$ref": "#/components/schemas/InputMediaVideo" }
                      ]
                    }
                  },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "reply_parameters": {
                    "$ref": "#/components/schemas/ReplyParameters"
                  }
                },
                "required": ["chat_id", "media"]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": {
                        "result": {
                          "type": "array",
                          "items": { "$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" }
        }
      }
    },
    "/sendLocation": {
      "description": "Use this method to send point on the map. On success, the sent Message is returned.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "latitude": { "type": "number" },
                  "longitude": { "type": "number" },
                  "horizontal_accuracy": { "type": "number" },
                  "live_period": { "type": "integer" },
                  "heading": { "type": "integer" },
                  "proximity_alert_radius": { "type": "integer" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "latitude", "longitude"]
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "latitude": { "type": "number" },
                  "longitude": { "type": "number" },
                  "horizontal_accuracy": { "type": "number" },
                  "live_period": { "type": "integer" },
                  "heading": { "type": "integer" },
                  "proximity_alert_radius": { "type": "integer" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "latitude", "longitude"]
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "latitude": { "type": "number" },
                  "longitude": { "type": "number" },
                  "horizontal_accuracy": { "type": "number" },
                  "live_period": { "type": "integer" },
                  "heading": { "type": "integer" },
                  "proximity_alert_radius": { "type": "integer" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "latitude", "longitude"]
              }
            }
          }
        },
        "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" }
        }
      }
    },
    "/sendVenue": {
      "description": "Use this method to send information about a venue. On success, the sent Message is returned.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "latitude": { "type": "number" },
                  "longitude": { "type": "number" },
                  "title": { "type": "string" },
                  "address": { "type": "string" },
                  "foursquare_id": { "type": "string" },
                  "foursquare_type": { "type": "string" },
                  "google_place_id": { "type": "string" },
                  "google_place_type": { "type": "string" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": [
                  "chat_id",
                  "latitude",
                  "longitude",
                  "title",
                  "address"
                ]
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "latitude": { "type": "number" },
                  "longitude": { "type": "number" },
                  "title": { "type": "string" },
                  "address": { "type": "string" },
                  "foursquare_id": { "type": "string" },
                  "foursquare_type": { "type": "string" },
                  "google_place_id": { "type": "string" },
                  "google_place_type": { "type": "string" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": [
                  "chat_id",
                  "latitude",
                  "longitude",
                  "title",
                  "address"
                ]
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "latitude": { "type": "number" },
                  "longitude": { "type": "number" },
                  "title": { "type": "string" },
                  "address": { "type": "string" },
                  "foursquare_id": { "type": "string" },
                  "foursquare_type": { "type": "string" },
                  "google_place_id": { "type": "string" },
                  "google_place_type": { "type": "string" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": [
                  "chat_id",
                  "latitude",
                  "longitude",
                  "title",
                  "address"
                ]
              }
            }
          }
        },
        "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" }
        }
      }
    },
    "/sendContact": {
      "description": "Use this method to send phone contacts. On success, the sent Message is returned.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "phone_number": { "type": "string" },
                  "first_name": { "type": "string" },
                  "last_name": { "type": "string" },
                  "vcard": { "type": "string" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "phone_number", "first_name"]
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "phone_number": { "type": "string" },
                  "first_name": { "type": "string" },
                  "last_name": { "type": "string" },
                  "vcard": { "type": "string" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "phone_number", "first_name"]
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "phone_number": { "type": "string" },
                  "first_name": { "type": "string" },
                  "last_name": { "type": "string" },
                  "vcard": { "type": "string" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "phone_number", "first_name"]
              }
            }
          }
        },
        "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" }
        }
      }
    },
    "/sendPoll": {
      "description": "Use this method to send a native poll. On success, the sent Message is returned.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "question": { "type": "string" },
                  "question_parse_mode": { "type": "string" },
                  "question_entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "options": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/InputPollOption" }
                  },
                  "is_anonymous": { "type": "boolean", "default": true },
                  "type": { "type": "string", "default": "regular" },
                  "allows_multiple_answers": { "type": "boolean" },
                  "correct_option_id": { "type": "integer" },
                  "explanation": { "type": "string" },
                  "explanation_parse_mode": { "type": "string" },
                  "explanation_entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "open_period": { "type": "integer" },
                  "close_date": { "type": "integer" },
                  "is_closed": { "type": "boolean" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "question", "options"]
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "question": { "type": "string" },
                  "question_parse_mode": { "type": "string" },
                  "question_entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "options": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/InputPollOption" }
                  },
                  "is_anonymous": { "type": "boolean", "default": true },
                  "type": { "type": "string", "default": "regular" },
                  "allows_multiple_answers": { "type": "boolean" },
                  "correct_option_id": { "type": "integer" },
                  "explanation": { "type": "string" },
                  "explanation_parse_mode": { "type": "string" },
                  "explanation_entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "open_period": { "type": "integer" },
                  "close_date": { "type": "integer" },
                  "is_closed": { "type": "boolean" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "question", "options"]
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "question": { "type": "string" },
                  "question_parse_mode": { "type": "string" },
                  "question_entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "options": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/InputPollOption" }
                  },
                  "is_anonymous": { "type": "boolean", "default": true },
                  "type": { "type": "string", "default": "regular" },
                  "allows_multiple_answers": { "type": "boolean" },
                  "correct_option_id": { "type": "integer" },
                  "explanation": { "type": "string" },
                  "explanation_parse_mode": { "type": "string" },
                  "explanation_entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "open_period": { "type": "integer" },
                  "close_date": { "type": "integer" },
                  "is_closed": { "type": "boolean" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "question", "options"]
              }
            }
          }
        },
        "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" }
        }
      }
    },
    "/sendDice": {
      "description": "Use this method to send an animated emoji that will display a random value. On success, the sent Message is returned.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "emoji": { "type": "string", "default": "\ud83c\udfb2" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id"]
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "emoji": { "type": "string", "default": "\ud83c\udfb2" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id"]
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "emoji": { "type": "string", "default": "\ud83c\udfb2" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id"]
              }
            }
          }
        },
        "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" }
        }
      }
    },
    "/sendChatAction": {
      "description": "Use this method when you need to tell the user that something is happening on the bot's side. The status is set for 5 seconds or less (when a message arrives from your bot, Telegram clients clear its typing status). Returns True on success.\r\nWe only recommend using this method when a response from the bot will take a noticeable amount of time to arrive.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "action": { "type": "string" }
                },
                "required": ["chat_id", "action"]
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "action": { "type": "string" }
                },
                "required": ["chat_id", "action"]
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "action": { "type": "string" }
                },
                "required": ["chat_id", "action"]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/setMessageReaction": {
      "description": "Use this method to change the chosen reactions on a message. Service messages can't be reacted to. Automatically forwarded messages from a channel to its discussion group have the same available reactions as messages in the channel. Bots can't use paid reactions. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "message_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" },
                  "reaction": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/ReactionType" }
                  },
                  "is_big": { "type": "boolean" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "message_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" },
                  "reaction": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/ReactionType" }
                  },
                  "is_big": { "type": "boolean" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "message_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" },
                  "reaction": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/ReactionType" }
                  },
                  "is_big": { "type": "boolean" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/getUserProfilePhotos": {
      "description": "Use this method to get a list of profile pictures for a user. Returns a UserProfilePhotos object.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["user_id"],
                "properties": {
                  "user_id": { "type": "integer" },
                  "offset": { "type": "integer" },
                  "limit": { "type": "integer", "default": 100 }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["user_id"],
                "properties": {
                  "user_id": { "type": "integer" },
                  "offset": { "type": "integer" },
                  "limit": { "type": "integer", "default": 100 }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["user_id"],
                "properties": {
                  "user_id": { "type": "integer" },
                  "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/UserProfilePhotos"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/getFile": {
      "description": "Use this method to get basic information about a file and prepare it for downloading. For the moment, bots can download files of up to 20MB in size. On success, a File object is returned. The file can then be downloaded via the link https://api.telegram.org/file/bot<token>/<file_path>, where <file_path> is taken from the response. It is guaranteed that the link will be valid for at least 1 hour. When the link expires, a new one can be requested by calling getFile again.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["file_id"],
                "properties": { "file_id": { "type": "string" } }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["file_id"],
                "properties": { "file_id": { "type": "string" } }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["file_id"],
                "properties": { "file_id": { "type": "string" } }
              }
            }
          }
        },
        "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/File" }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/banChatMember": {
      "description": "Use this method to ban a user in a group, a supergroup or a channel. In the case of supergroups and channels, the user will not be able to return to the chat on their own using invite links, etc., unless unbanned first. The bot must be an administrator in the chat for this to work and must have the appropriate administrator rights. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "user_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "user_id": { "type": "integer" },
                  "until_date": { "type": "integer" },
                  "revoke_messages": { "type": "boolean" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "user_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "user_id": { "type": "integer" },
                  "until_date": { "type": "integer" },
                  "revoke_messages": { "type": "boolean" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "user_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "user_id": { "type": "integer" },
                  "until_date": { "type": "integer" },
                  "revoke_messages": { "type": "boolean" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/unbanChatMember": {
      "description": "Use this method to unban a previously banned user in a supergroup or channel. The user will not return to the group or channel automatically, but will be able to join via link, etc. The bot must be an administrator for this to work. By default, this method guarantees that after the call the user is not a member of the chat, but will be able to join it. So if the user is a member of the chat they will also be removed from the chat. If you don't want this, use the parameter only_if_banned. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "user_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "user_id": { "type": "integer" },
                  "only_if_banned": { "type": "boolean" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "user_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "user_id": { "type": "integer" },
                  "only_if_banned": { "type": "boolean" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "user_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "user_id": { "type": "integer" },
                  "only_if_banned": { "type": "boolean" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/restrictChatMember": {
      "description": "Use this method to restrict a user in a supergroup. The bot must be an administrator in the supergroup for this to work and must have the appropriate administrator rights. Pass True for all permissions to lift restrictions from a user. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "user_id", "permissions"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "user_id": { "type": "integer" },
                  "permissions": {
                    "$ref": "#/components/schemas/ChatPermissions"
                  },
                  "use_independent_chat_permissions": { "type": "boolean" },
                  "until_date": { "type": "integer" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "user_id", "permissions"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "user_id": { "type": "integer" },
                  "permissions": {
                    "$ref": "#/components/schemas/ChatPermissions"
                  },
                  "use_independent_chat_permissions": { "type": "boolean" },
                  "until_date": { "type": "integer" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "user_id", "permissions"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "user_id": { "type": "integer" },
                  "permissions": {
                    "$ref": "#/components/schemas/ChatPermissions"
                  },
                  "use_independent_chat_permissions": { "type": "boolean" },
                  "until_date": { "type": "integer" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/promoteChatMember": {
      "description": "Use this method to promote or demote a user in a supergroup or a channel. The bot must be an administrator in the chat for this to work and must have the appropriate administrator rights. Pass False for all boolean parameters to demote a user. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "user_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "user_id": { "type": "integer" },
                  "is_anonymous": { "type": "boolean" },
                  "can_manage_chat": { "type": "boolean" },
                  "can_delete_messages": { "type": "boolean" },
                  "can_manage_video_chats": { "type": "boolean" },
                  "can_restrict_members": { "type": "boolean" },
                  "can_promote_members": { "type": "boolean" },
                  "can_change_info": { "type": "boolean" },
                  "can_invite_users": { "type": "boolean" },
                  "can_post_stories": { "type": "boolean" },
                  "can_edit_stories": { "type": "boolean" },
                  "can_delete_stories": { "type": "boolean" },
                  "can_post_messages": { "type": "boolean" },
                  "can_edit_messages": { "type": "boolean" },
                  "can_pin_messages": { "type": "boolean" },
                  "can_manage_topics": { "type": "boolean" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "user_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "user_id": { "type": "integer" },
                  "is_anonymous": { "type": "boolean" },
                  "can_manage_chat": { "type": "boolean" },
                  "can_delete_messages": { "type": "boolean" },
                  "can_manage_video_chats": { "type": "boolean" },
                  "can_restrict_members": { "type": "boolean" },
                  "can_promote_members": { "type": "boolean" },
                  "can_change_info": { "type": "boolean" },
                  "can_invite_users": { "type": "boolean" },
                  "can_post_stories": { "type": "boolean" },
                  "can_edit_stories": { "type": "boolean" },
                  "can_delete_stories": { "type": "boolean" },
                  "can_post_messages": { "type": "boolean" },
                  "can_edit_messages": { "type": "boolean" },
                  "can_pin_messages": { "type": "boolean" },
                  "can_manage_topics": { "type": "boolean" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "user_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "user_id": { "type": "integer" },
                  "is_anonymous": { "type": "boolean" },
                  "can_manage_chat": { "type": "boolean" },
                  "can_delete_messages": { "type": "boolean" },
                  "can_manage_video_chats": { "type": "boolean" },
                  "can_restrict_members": { "type": "boolean" },
                  "can_promote_members": { "type": "boolean" },
                  "can_change_info": { "type": "boolean" },
                  "can_invite_users": { "type": "boolean" },
                  "can_post_stories": { "type": "boolean" },
                  "can_edit_stories": { "type": "boolean" },
                  "can_delete_stories": { "type": "boolean" },
                  "can_post_messages": { "type": "boolean" },
                  "can_edit_messages": { "type": "boolean" },
                  "can_pin_messages": { "type": "boolean" },
                  "can_manage_topics": { "type": "boolean" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/setChatAdministratorCustomTitle": {
      "description": "Use this method to set a custom title for an administrator in a supergroup promoted by the bot. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "user_id", "custom_title"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "user_id": { "type": "integer" },
                  "custom_title": { "type": "string" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "user_id", "custom_title"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "user_id": { "type": "integer" },
                  "custom_title": { "type": "string" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "user_id", "custom_title"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "user_id": { "type": "integer" },
                  "custom_title": { "type": "string" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/banChatSenderChat": {
      "description": "Use this method to ban a channel chat in a supergroup or a channel. Until the chat is unbanned, the owner of the banned chat won't be able to send messages on behalf of any of their channels. The bot must be an administrator in the supergroup or channel for this to work and must have the appropriate administrator rights. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "sender_chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "sender_chat_id": { "type": "integer" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "sender_chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "sender_chat_id": { "type": "integer" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "sender_chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "sender_chat_id": { "type": "integer" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/unbanChatSenderChat": {
      "description": "Use this method to unban a previously banned channel chat in a supergroup or channel. The bot must be an administrator for this to work and must have the appropriate administrator rights. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "sender_chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "sender_chat_id": { "type": "integer" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "sender_chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "sender_chat_id": { "type": "integer" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "sender_chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "sender_chat_id": { "type": "integer" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/setChatPermissions": {
      "description": "Use this method to set default chat permissions for all members. The bot must be an administrator in the group or a supergroup for this to work and must have the can_restrict_members administrator rights. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "permissions"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "permissions": {
                    "$ref": "#/components/schemas/ChatPermissions"
                  },
                  "use_independent_chat_permissions": { "type": "boolean" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "permissions"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "permissions": {
                    "$ref": "#/components/schemas/ChatPermissions"
                  },
                  "use_independent_chat_permissions": { "type": "boolean" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "permissions"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "permissions": {
                    "$ref": "#/components/schemas/ChatPermissions"
                  },
                  "use_independent_chat_permissions": { "type": "boolean" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/exportChatInviteLink": {
      "description": "Use this method to generate a new primary invite link for a chat; any previously generated primary link is revoked. The bot must be an administrator in the chat for this to work and must have the appropriate administrator rights. Returns the new invite link as String on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "string" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/createChatInviteLink": {
      "description": "Use this method to create an additional invite link for a chat. The bot must be an administrator in the chat for this to work and must have the appropriate administrator rights. The link can be revoked using the method revokeChatInviteLink. Returns the new invite link as ChatInviteLink object.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "name": { "type": "string" },
                  "expire_date": { "type": "integer" },
                  "member_limit": { "type": "integer" },
                  "creates_join_request": { "type": "boolean" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "name": { "type": "string" },
                  "expire_date": { "type": "integer" },
                  "member_limit": { "type": "integer" },
                  "creates_join_request": { "type": "boolean" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "name": { "type": "string" },
                  "expire_date": { "type": "integer" },
                  "member_limit": { "type": "integer" },
                  "creates_join_request": { "type": "boolean" }
                }
              }
            }
          }
        },
        "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/ChatInviteLink"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/editChatInviteLink": {
      "description": "Use this method to edit a non-primary invite link created by the bot. The bot must be an administrator in the chat for this to work and must have the appropriate administrator rights. Returns the edited invite link as a ChatInviteLink object.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "invite_link"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "invite_link": { "type": "string" },
                  "name": { "type": "string" },
                  "expire_date": { "type": "integer" },
                  "member_limit": { "type": "integer" },
                  "creates_join_request": { "type": "boolean" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "invite_link"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "invite_link": { "type": "string" },
                  "name": { "type": "string" },
                  "expire_date": { "type": "integer" },
                  "member_limit": { "type": "integer" },
                  "creates_join_request": { "type": "boolean" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "invite_link"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "invite_link": { "type": "string" },
                  "name": { "type": "string" },
                  "expire_date": { "type": "integer" },
                  "member_limit": { "type": "integer" },
                  "creates_join_request": { "type": "boolean" }
                }
              }
            }
          }
        },
        "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/ChatInviteLink"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/createChatSubscriptionInviteLink": {
      "description": "Use this method to create a subscription invite link for a channel chat. The bot must have the can_invite_users administrator rights. The link can be edited using the method editChatSubscriptionInviteLink or revoked using the method revokeChatInviteLink. Returns the new invite link as a ChatInviteLink object.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "chat_id",
                  "subscription_period",
                  "subscription_price"
                ],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "name": { "type": "string" },
                  "subscription_period": { "type": "integer" },
                  "subscription_price": { "type": "integer" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": [
                  "chat_id",
                  "subscription_period",
                  "subscription_price"
                ],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "name": { "type": "string" },
                  "subscription_period": { "type": "integer" },
                  "subscription_price": { "type": "integer" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": [
                  "chat_id",
                  "subscription_period",
                  "subscription_price"
                ],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "name": { "type": "string" },
                  "subscription_period": { "type": "integer" },
                  "subscription_price": { "type": "integer" }
                }
              }
            }
          }
        },
        "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/ChatInviteLink"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/editChatSubscriptionInviteLink": {
      "description": "Use this method to edit a subscription invite link created by the bot. The bot must have the can_invite_users administrator rights. Returns the edited invite link as a ChatInviteLink object.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "invite_link"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "invite_link": { "type": "string" },
                  "name": { "type": "string" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "invite_link"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "invite_link": { "type": "string" },
                  "name": { "type": "string" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "invite_link"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "invite_link": { "type": "string" },
                  "name": { "type": "string" }
                }
              }
            }
          }
        },
        "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/ChatInviteLink"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/revokeChatInviteLink": {
      "description": "Use this method to revoke an invite link created by the bot. If the primary link is revoked, a new link is automatically generated. The bot must be an administrator in the chat for this to work and must have the appropriate administrator rights. Returns the revoked invite link as ChatInviteLink object.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "invite_link"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "invite_link": { "type": "string" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "invite_link"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "invite_link": { "type": "string" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "invite_link"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "invite_link": { "type": "string" }
                }
              }
            }
          }
        },
        "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/ChatInviteLink"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/approveChatJoinRequest": {
      "description": "Use this method to approve a chat join request. The bot must be an administrator in the chat for this to work and must have the can_invite_users administrator right. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "user_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "user_id": { "type": "integer" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "user_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "user_id": { "type": "integer" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "user_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "user_id": { "type": "integer" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/declineChatJoinRequest": {
      "description": "Use this method to decline a chat join request. The bot must be an administrator in the chat for this to work and must have the can_invite_users administrator right. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "user_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "user_id": { "type": "integer" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "user_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "user_id": { "type": "integer" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "user_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "user_id": { "type": "integer" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/setChatPhoto": {
      "description": "Use this method to set a new profile photo for the chat. Photos can't be changed for private chats. The bot must be an administrator in the chat for this to work and must have the appropriate administrator rights. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "photo"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "photo": { "$ref": "#/components/schemas/InputFile" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "photo"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "photo": { "$ref": "#/components/schemas/InputFile" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "photo"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "photo": { "$ref": "#/components/schemas/InputFile" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/deleteChatPhoto": {
      "description": "Use this method to delete a chat photo. Photos can't be changed for private chats. The bot must be an administrator in the chat for this to work and must have the appropriate administrator rights. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/setChatTitle": {
      "description": "Use this method to change the title of a chat. Titles can't be changed for private chats. The bot must be an administrator in the chat for this to work and must have the appropriate administrator rights. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "title"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "title": { "type": "string" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "title"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "title": { "type": "string" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "title"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "title": { "type": "string" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/setChatDescription": {
      "description": "Use this method to change the description of a group, a supergroup or a channel. The bot must be an administrator in the chat for this to work and must have the appropriate administrator rights. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "description": { "type": "string" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "description": { "type": "string" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "description": { "type": "string" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/pinChatMessage": {
      "description": "Use this method to add a message to the list of pinned messages in a chat. If the chat is not a private chat, the bot must be an administrator in the chat for this to work and must have the 'can_pin_messages' administrator right in a supergroup or 'can_edit_messages' administrator right in a channel. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" },
                  "disable_notification": { "type": "boolean" }
                },
                "required": ["chat_id", "message_id"]
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" },
                  "disable_notification": { "type": "boolean" }
                },
                "required": ["chat_id", "message_id"]
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" },
                  "disable_notification": { "type": "boolean" }
                },
                "required": ["chat_id", "message_id"]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/unpinChatMessage": {
      "description": "Use this method to remove a message from the list of pinned messages in a chat. If the chat is not a private chat, the bot must be an administrator in the chat for this to work and must have the 'can_pin_messages' administrator right in a supergroup or 'can_edit_messages' administrator right in a channel. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" }
                },
                "required": ["chat_id"]
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" }
                },
                "required": ["chat_id"]
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" }
                },
                "required": ["chat_id"]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/unpinAllChatMessages": {
      "description": "Use this method to clear the list of pinned messages in a chat. If the chat is not a private chat, the bot must be an administrator in the chat for this to work and must have the 'can_pin_messages' administrator right in a supergroup or 'can_edit_messages' administrator right in a channel. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/leaveChat": {
      "description": "Use this method for your bot to leave a group, supergroup or channel. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/getChat": {
      "description": "Use this method to get up-to-date information about the chat. Returns a ChatFullInfo object on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            }
          }
        },
        "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/ChatFullInfo"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/getChatAdministrators": {
      "description": "Use this method to get a list of administrators in a chat, which aren't bots. Returns an Array of ChatMember objects.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": {
                        "result": {
                          "type": "array",
                          "items": { "$ref": "#/components/schemas/ChatMember" }
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/getChatMemberCount": {
      "description": "Use this method to get the number of members in a chat. Returns Int on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "integer" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/getChatMember": {
      "description": "Use this method to get information about a member of a chat. The method is only guaranteed to work for other users if the bot is an administrator in the chat. Returns a ChatMember object on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "user_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "user_id": { "type": "integer" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "user_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "user_id": { "type": "integer" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "user_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "user_id": { "type": "integer" }
                }
              }
            }
          }
        },
        "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/ChatMember" }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/setChatStickerSet": {
      "description": "Use this method to set a new group sticker set for a supergroup. The bot must be an administrator in the chat for this to work and must have the appropriate administrator rights. Use the field can_set_sticker_set optionally returned in getChat requests to check if the bot can use this method. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "sticker_set_name"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "sticker_set_name": { "type": "string" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "sticker_set_name"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "sticker_set_name": { "type": "string" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "sticker_set_name"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "sticker_set_name": { "type": "string" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/deleteChatStickerSet": {
      "description": "Use this method to delete a group sticker set from a supergroup. The bot must be an administrator in the chat for this to work and must have the appropriate administrator rights. Use the field can_set_sticker_set optionally returned in getChat requests to check if the bot can use this method. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/getForumTopicIconStickers": {
      "description": "Use this method to get custom emoji stickers, which can be used as a forum topic icon by any user. Requires no parameters. Returns an Array of Sticker objects.",
      "post": {
        "requestBody": {
          "content": {
            "application/json": { "schema": { "type": "object" } },
            "application/x-www-form-urlencoded": {
              "schema": { "type": "object" }
            },
            "multipart/form-data": { "schema": { "type": "object" } }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": {
                        "result": {
                          "type": "array",
                          "items": { "$ref": "#/components/schemas/Sticker" }
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/createForumTopic": {
      "description": "Use this method to create a topic in a forum supergroup chat. The bot must be an administrator in the chat for this to work and must have the can_manage_topics administrator rights. Returns information about the created topic as a ForumTopic object.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "name"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "name": { "type": "string" },
                  "icon_color": { "type": "integer" },
                  "icon_custom_emoji_id": { "type": "string" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "name"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "name": { "type": "string" },
                  "icon_color": { "type": "integer" },
                  "icon_custom_emoji_id": { "type": "string" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "name"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "name": { "type": "string" },
                  "icon_color": { "type": "integer" },
                  "icon_custom_emoji_id": { "type": "string" }
                }
              }
            }
          }
        },
        "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/ForumTopic" }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/editForumTopic": {
      "description": "Use this method to edit name and icon of a topic in a forum supergroup chat. The bot must be an administrator in the chat for this to work and must have the can_manage_topics administrator rights, unless it is the creator of the topic. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "message_thread_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "name": { "type": "string" },
                  "icon_custom_emoji_id": { "type": "string" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "message_thread_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "name": { "type": "string" },
                  "icon_custom_emoji_id": { "type": "string" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "message_thread_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "name": { "type": "string" },
                  "icon_custom_emoji_id": { "type": "string" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/closeForumTopic": {
      "description": "Use this method to close an open topic in a forum supergroup chat. The bot must be an administrator in the chat for this to work and must have the can_manage_topics administrator rights, unless it is the creator of the topic. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "message_thread_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "message_thread_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "message_thread_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/reopenForumTopic": {
      "description": "Use this method to reopen a closed topic in a forum supergroup chat. The bot must be an administrator in the chat for this to work and must have the can_manage_topics administrator rights, unless it is the creator of the topic. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "message_thread_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "message_thread_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "message_thread_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/deleteForumTopic": {
      "description": "Use this method to delete a forum topic along with all its messages in a forum supergroup chat. The bot must be an administrator in the chat for this to work and must have the can_delete_messages administrator rights. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "message_thread_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "message_thread_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "message_thread_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/unpinAllForumTopicMessages": {
      "description": "Use this method to clear the list of pinned messages in a forum topic. The bot must be an administrator in the chat for this to work and must have the can_pin_messages administrator right in the supergroup. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "message_thread_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "message_thread_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "message_thread_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/editGeneralForumTopic": {
      "description": "Use this method to edit the name of the 'General' topic in a forum supergroup chat. The bot must be an administrator in the chat for this to work and must have the can_manage_topics administrator rights. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "name"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "name": { "type": "string" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "name"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "name": { "type": "string" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "name"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "name": { "type": "string" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/closeGeneralForumTopic": {
      "description": "Use this method to close an open 'General' topic in a forum supergroup chat. The bot must be an administrator in the chat for this to work and must have the can_manage_topics administrator rights. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/reopenGeneralForumTopic": {
      "description": "Use this method to reopen a closed 'General' topic in a forum supergroup chat. The bot must be an administrator in the chat for this to work and must have the can_manage_topics administrator rights. The topic will be automatically unhidden if it was hidden. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/hideGeneralForumTopic": {
      "description": "Use this method to hide the 'General' topic in a forum supergroup chat. The bot must be an administrator in the chat for this to work and must have the can_manage_topics administrator rights. The topic will be automatically closed if it was open. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/unhideGeneralForumTopic": {
      "description": "Use this method to unhide the 'General' topic in a forum supergroup chat. The bot must be an administrator in the chat for this to work and must have the can_manage_topics administrator rights. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/unpinAllGeneralForumTopicMessages": {
      "description": "Use this method to clear the list of pinned messages in a General forum topic. The bot must be an administrator in the chat for this to work and must have the can_pin_messages administrator right in the supergroup. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/answerCallbackQuery": {
      "description": "Use this method to send answers to callback queries sent from inline keyboards. The answer will be displayed to the user as a notification at the top of the chat screen or as an alert. On success, True is returned.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["callback_query_id"],
                "properties": {
                  "callback_query_id": { "type": "string" },
                  "text": { "type": "string" },
                  "show_alert": { "type": "boolean" },
                  "url": { "type": "string" },
                  "cache_time": { "type": "integer" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["callback_query_id"],
                "properties": {
                  "callback_query_id": { "type": "string" },
                  "text": { "type": "string" },
                  "show_alert": { "type": "boolean" },
                  "url": { "type": "string" },
                  "cache_time": { "type": "integer" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["callback_query_id"],
                "properties": {
                  "callback_query_id": { "type": "string" },
                  "text": { "type": "string" },
                  "show_alert": { "type": "boolean" },
                  "url": { "type": "string" },
                  "cache_time": { "type": "integer" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/getUserChatBoosts": {
      "description": "Use this method to get the list of boosts added to a chat by a user. Requires administrator rights in the chat. Returns a UserChatBoosts object.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "user_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "user_id": { "type": "integer" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "user_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "user_id": { "type": "integer" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "user_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "user_id": { "type": "integer" }
                }
              }
            }
          }
        },
        "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/UserChatBoosts"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/getBusinessConnection": {
      "description": "Use this method to get information about the connection of the bot with a business account. Returns a BusinessConnection object on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["business_connection_id"],
                "properties": { "business_connection_id": { "type": "string" } }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["business_connection_id"],
                "properties": { "business_connection_id": { "type": "string" } }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["business_connection_id"],
                "properties": { "business_connection_id": { "type": "string" } }
              }
            }
          }
        },
        "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/BusinessConnection"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/setMyCommands": {
      "description": "Use this method to change the list of the bot's commands. See this manual for more details about bot commands. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["commands"],
                "properties": {
                  "commands": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/BotCommand" }
                  },
                  "scope": {
                    "$ref": "#/components/schemas/BotCommandScope",
                    "default": "BotCommandScopeDefault"
                  },
                  "language_code": { "type": "string" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["commands"],
                "properties": {
                  "commands": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/BotCommand" }
                  },
                  "scope": {
                    "$ref": "#/components/schemas/BotCommandScope",
                    "default": "BotCommandScopeDefault"
                  },
                  "language_code": { "type": "string" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["commands"],
                "properties": {
                  "commands": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/BotCommand" }
                  },
                  "scope": {
                    "$ref": "#/components/schemas/BotCommandScope",
                    "default": "BotCommandScopeDefault"
                  },
                  "language_code": { "type": "string" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/deleteMyCommands": {
      "description": "Use this method to delete the list of the bot's commands for the given scope and user language. After deletion, higher level commands will be shown to affected users. Returns True on success.",
      "post": {
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "scope": {
                    "$ref": "#/components/schemas/BotCommandScope",
                    "default": "BotCommandScopeDefault"
                  },
                  "language_code": { "type": "string" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "scope": {
                    "$ref": "#/components/schemas/BotCommandScope",
                    "default": "BotCommandScopeDefault"
                  },
                  "language_code": { "type": "string" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "scope": {
                    "$ref": "#/components/schemas/BotCommandScope",
                    "default": "BotCommandScopeDefault"
                  },
                  "language_code": { "type": "string" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/getMyCommands": {
      "description": "Use this method to get the current list of the bot's commands for the given scope and user language. Returns an Array of BotCommand objects. If commands aren't set, an empty list is returned.",
      "post": {
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "scope": {
                    "$ref": "#/components/schemas/BotCommandScope",
                    "default": "BotCommandScopeDefault"
                  },
                  "language_code": { "type": "string" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "scope": {
                    "$ref": "#/components/schemas/BotCommandScope",
                    "default": "BotCommandScopeDefault"
                  },
                  "language_code": { "type": "string" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "scope": {
                    "$ref": "#/components/schemas/BotCommandScope",
                    "default": "BotCommandScopeDefault"
                  },
                  "language_code": { "type": "string" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": {
                        "result": {
                          "type": "array",
                          "items": { "$ref": "#/components/schemas/BotCommand" }
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/setMyName": {
      "description": "Use this method to change the bot's name. Returns True on success.",
      "post": {
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": { "type": "string" },
                  "language_code": { "type": "string" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": { "type": "string" },
                  "language_code": { "type": "string" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "name": { "type": "string" },
                  "language_code": { "type": "string" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/getMyName": {
      "description": "Use this method to get the current bot name for the given user language. Returns BotName on success.",
      "post": {
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": { "language_code": { "type": "string" } }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": { "language_code": { "type": "string" } }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": { "language_code": { "type": "string" } }
              }
            }
          }
        },
        "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/BotName" }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/setMyDescription": {
      "description": "Use this method to change the bot's description, which is shown in the chat with the bot if the chat is empty. Returns True on success.",
      "post": {
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "description": { "type": "string" },
                  "language_code": { "type": "string" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "description": { "type": "string" },
                  "language_code": { "type": "string" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "description": { "type": "string" },
                  "language_code": { "type": "string" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/getMyDescription": {
      "description": "Use this method to get the current bot description for the given user language. Returns BotDescription on success.",
      "post": {
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": { "language_code": { "type": "string" } }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": { "language_code": { "type": "string" } }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": { "language_code": { "type": "string" } }
              }
            }
          }
        },
        "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/BotDescription"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/setMyShortDescription": {
      "description": "Use this method to change the bot's short description, which is shown on the bot's profile page and is sent together with the link when users share the bot. Returns True on success.",
      "post": {
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "short_description": { "type": "string" },
                  "language_code": { "type": "string" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "short_description": { "type": "string" },
                  "language_code": { "type": "string" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "short_description": { "type": "string" },
                  "language_code": { "type": "string" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/getMyShortDescription": {
      "description": "Use this method to get the current bot short description for the given user language. Returns BotShortDescription on success.",
      "post": {
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": { "language_code": { "type": "string" } }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": { "language_code": { "type": "string" } }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": { "language_code": { "type": "string" } }
              }
            }
          }
        },
        "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/BotShortDescription"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/setChatMenuButton": {
      "description": "Use this method to change the bot's menu button in a private chat, or the default menu button. Returns True on success.",
      "post": {
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "chat_id": { "type": "integer" },
                  "menu_button": {
                    "$ref": "#/components/schemas/MenuButton",
                    "default": "MenuButtonDefault"
                  }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "chat_id": { "type": "integer" },
                  "menu_button": {
                    "$ref": "#/components/schemas/MenuButton",
                    "default": "MenuButtonDefault"
                  }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "chat_id": { "type": "integer" },
                  "menu_button": {
                    "$ref": "#/components/schemas/MenuButton",
                    "default": "MenuButtonDefault"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/getChatMenuButton": {
      "description": "Use this method to get the current value of the bot's menu button in a private chat, or the default menu button. Returns MenuButton on success.",
      "post": {
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": { "chat_id": { "type": "integer" } }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": { "chat_id": { "type": "integer" } }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": { "chat_id": { "type": "integer" } }
              }
            }
          }
        },
        "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/MenuButton" }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/setMyDefaultAdministratorRights": {
      "description": "Use this method to change the default administrator rights requested by the bot when it's added as an administrator to groups or channels. These rights will be suggested to users, but they are free to modify the list before adding the bot. Returns True on success.",
      "post": {
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "rights": {
                    "$ref": "#/components/schemas/ChatAdministratorRights"
                  },
                  "for_channels": { "type": "boolean" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "rights": {
                    "$ref": "#/components/schemas/ChatAdministratorRights"
                  },
                  "for_channels": { "type": "boolean" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "rights": {
                    "$ref": "#/components/schemas/ChatAdministratorRights"
                  },
                  "for_channels": { "type": "boolean" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/getMyDefaultAdministratorRights": {
      "description": "Use this method to get the current default administrator rights of the bot. Returns ChatAdministratorRights on success.",
      "post": {
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": { "for_channels": { "type": "boolean" } }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": { "for_channels": { "type": "boolean" } }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": { "for_channels": { "type": "boolean" } }
              }
            }
          }
        },
        "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/ChatAdministratorRights"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/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. 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,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" },
                  "inline_message_id": { "type": "string" },
                  "text": { "type": "string" },
                  "parse_mode": { "type": "string" },
                  "entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "link_preview_options": {
                    "$ref": "#/components/schemas/LinkPreviewOptions"
                  },
                  "reply_markup": {
                    "$ref": "#/components/schemas/InlineKeyboardMarkup"
                  }
                },
                "required": ["text"]
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" },
                  "inline_message_id": { "type": "string" },
                  "text": { "type": "string" },
                  "parse_mode": { "type": "string" },
                  "entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "link_preview_options": {
                    "$ref": "#/components/schemas/LinkPreviewOptions"
                  },
                  "reply_markup": {
                    "$ref": "#/components/schemas/InlineKeyboardMarkup"
                  }
                },
                "required": ["text"]
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" },
                  "inline_message_id": { "type": "string" },
                  "text": { "type": "string" },
                  "parse_mode": { "type": "string" },
                  "entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "link_preview_options": {
                    "$ref": "#/components/schemas/LinkPreviewOptions"
                  },
                  "reply_markup": {
                    "$ref": "#/components/schemas/InlineKeyboardMarkup"
                  }
                },
                "required": ["text"]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": {
                        "result": {
                          "anyOf": [
                            { "$ref": "#/components/schemas/Message" },
                            { "type": "boolean" }
                          ]
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/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. 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": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" },
                  "inline_message_id": { "type": "string" },
                  "caption": { "type": "string" },
                  "parse_mode": { "type": "string" },
                  "caption_entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "show_caption_above_media": { "type": "boolean" },
                  "reply_markup": {
                    "$ref": "#/components/schemas/InlineKeyboardMarkup"
                  }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" },
                  "inline_message_id": { "type": "string" },
                  "caption": { "type": "string" },
                  "parse_mode": { "type": "string" },
                  "caption_entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "show_caption_above_media": { "type": "boolean" },
                  "reply_markup": {
                    "$ref": "#/components/schemas/InlineKeyboardMarkup"
                  }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" },
                  "inline_message_id": { "type": "string" },
                  "caption": { "type": "string" },
                  "parse_mode": { "type": "string" },
                  "caption_entities": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/MessageEntity" }
                  },
                  "show_caption_above_media": { "type": "boolean" },
                  "reply_markup": {
                    "$ref": "#/components/schemas/InlineKeyboardMarkup"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": {
                        "result": {
                          "anyOf": [
                            { "$ref": "#/components/schemas/Message" },
                            { "type": "boolean" }
                          ]
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/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. 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,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" },
                  "inline_message_id": { "type": "string" },
                  "media": { "$ref": "#/components/schemas/InputMedia" },
                  "reply_markup": {
                    "$ref": "#/components/schemas/InlineKeyboardMarkup"
                  }
                },
                "required": ["media"]
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" },
                  "inline_message_id": { "type": "string" },
                  "media": { "$ref": "#/components/schemas/InputMedia" },
                  "reply_markup": {
                    "$ref": "#/components/schemas/InlineKeyboardMarkup"
                  }
                },
                "required": ["media"]
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" },
                  "inline_message_id": { "type": "string" },
                  "media": { "$ref": "#/components/schemas/InputMedia" },
                  "reply_markup": {
                    "$ref": "#/components/schemas/InlineKeyboardMarkup"
                  }
                },
                "required": ["media"]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": {
                        "result": {
                          "anyOf": [
                            { "$ref": "#/components/schemas/Message" },
                            { "type": "boolean" }
                          ]
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/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.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" },
                  "inline_message_id": { "type": "string" },
                  "latitude": { "type": "number" },
                  "longitude": { "type": "number" },
                  "live_period": { "type": "integer" },
                  "horizontal_accuracy": { "type": "number" },
                  "heading": { "type": "integer" },
                  "proximity_alert_radius": { "type": "integer" },
                  "reply_markup": {
                    "$ref": "#/components/schemas/InlineKeyboardMarkup"
                  }
                },
                "required": ["latitude", "longitude"]
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" },
                  "inline_message_id": { "type": "string" },
                  "latitude": { "type": "number" },
                  "longitude": { "type": "number" },
                  "live_period": { "type": "integer" },
                  "horizontal_accuracy": { "type": "number" },
                  "heading": { "type": "integer" },
                  "proximity_alert_radius": { "type": "integer" },
                  "reply_markup": {
                    "$ref": "#/components/schemas/InlineKeyboardMarkup"
                  }
                },
                "required": ["latitude", "longitude"]
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" },
                  "inline_message_id": { "type": "string" },
                  "latitude": { "type": "number" },
                  "longitude": { "type": "number" },
                  "live_period": { "type": "integer" },
                  "horizontal_accuracy": { "type": "number" },
                  "heading": { "type": "integer" },
                  "proximity_alert_radius": { "type": "integer" },
                  "reply_markup": {
                    "$ref": "#/components/schemas/InlineKeyboardMarkup"
                  }
                },
                "required": ["latitude", "longitude"]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": {
                        "result": {
                          "anyOf": [
                            { "$ref": "#/components/schemas/Message" },
                            { "type": "boolean" }
                          ]
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/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.",
      "post": {
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" },
                  "inline_message_id": { "type": "string" },
                  "reply_markup": {
                    "$ref": "#/components/schemas/InlineKeyboardMarkup"
                  }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" },
                  "inline_message_id": { "type": "string" },
                  "reply_markup": {
                    "$ref": "#/components/schemas/InlineKeyboardMarkup"
                  }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" },
                  "inline_message_id": { "type": "string" },
                  "reply_markup": {
                    "$ref": "#/components/schemas/InlineKeyboardMarkup"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": {
                        "result": {
                          "anyOf": [
                            { "$ref": "#/components/schemas/Message" },
                            { "type": "boolean" }
                          ]
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/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. 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": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" },
                  "inline_message_id": { "type": "string" },
                  "reply_markup": {
                    "$ref": "#/components/schemas/InlineKeyboardMarkup"
                  }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" },
                  "inline_message_id": { "type": "string" },
                  "reply_markup": {
                    "$ref": "#/components/schemas/InlineKeyboardMarkup"
                  }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" },
                  "inline_message_id": { "type": "string" },
                  "reply_markup": {
                    "$ref": "#/components/schemas/InlineKeyboardMarkup"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": {
                        "result": {
                          "anyOf": [
                            { "$ref": "#/components/schemas/Message" },
                            { "type": "boolean" }
                          ]
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/stopPoll": {
      "description": "Use this method to stop a poll which was sent by the bot. On success, the stopped Poll is returned.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" },
                  "reply_markup": {
                    "$ref": "#/components/schemas/InlineKeyboardMarkup"
                  }
                },
                "required": ["chat_id", "message_id"]
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" },
                  "reply_markup": {
                    "$ref": "#/components/schemas/InlineKeyboardMarkup"
                  }
                },
                "required": ["chat_id", "message_id"]
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" },
                  "reply_markup": {
                    "$ref": "#/components/schemas/InlineKeyboardMarkup"
                  }
                },
                "required": ["chat_id", "message_id"]
              }
            }
          }
        },
        "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/Poll" }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/deleteMessage": {
      "description": "Use this method to delete a message, including service messages, with the following limitations:- A message can only be deleted if it was sent less than 48 hours ago.- Service messages about a supergroup, channel, or forum topic creation can't be deleted.- A dice message in a private chat can only be deleted if it was sent more than 24 hours ago.- Bots can delete outgoing messages in private chats, groups, and supergroups.- Bots can delete incoming messages in private chats.- Bots granted can_post_messages permissions can delete outgoing messages in channels.- If the bot is an administrator of a group, it can delete any message there.- If the bot has can_delete_messages permission in a supergroup or a channel, it can delete any message there.Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "message_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "message_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "message_id"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_id": { "type": "integer" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/deleteMessages": {
      "description": "Use this method to delete multiple messages simultaneously. If some of the specified messages can't be found, they are skipped. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "message_ids"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_ids": {
                    "type": "array",
                    "items": { "type": "integer" }
                  }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "message_ids"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_ids": {
                    "type": "array",
                    "items": { "type": "integer" }
                  }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["chat_id", "message_ids"],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_ids": {
                    "type": "array",
                    "items": { "type": "integer" }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/sendSticker": {
      "description": "Use this method to send static .WEBP, animated .TGS, or video .WEBM stickers. On success, the sent Message is returned.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "sticker": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "emoji": { "type": "string" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "sticker"]
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "sticker": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "emoji": { "type": "string" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "sticker"]
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "sticker": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "emoji": { "type": "string" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "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" }
                    ]
                  }
                },
                "required": ["chat_id", "sticker"]
              }
            }
          }
        },
        "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" }
        }
      }
    },
    "/getStickerSet": {
      "description": "Use this method to get a sticker set. On success, a StickerSet object is returned.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["name"],
                "properties": { "name": { "type": "string" } }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["name"],
                "properties": { "name": { "type": "string" } }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["name"],
                "properties": { "name": { "type": "string" } }
              }
            }
          }
        },
        "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/StickerSet" }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/getCustomEmojiStickers": {
      "description": "Use this method to get information about custom emoji stickers by their identifiers. Returns an Array of Sticker objects.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["custom_emoji_ids"],
                "properties": {
                  "custom_emoji_ids": {
                    "type": "array",
                    "items": { "type": "string" }
                  }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["custom_emoji_ids"],
                "properties": {
                  "custom_emoji_ids": {
                    "type": "array",
                    "items": { "type": "string" }
                  }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["custom_emoji_ids"],
                "properties": {
                  "custom_emoji_ids": {
                    "type": "array",
                    "items": { "type": "string" }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": {
                        "result": {
                          "type": "array",
                          "items": { "$ref": "#/components/schemas/Sticker" }
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/uploadStickerFile": {
      "description": "Use this method to upload a file with a sticker for later use in the createNewStickerSet, addStickerToSet, or replaceStickerInSet methods (the file can be used multiple times). Returns the uploaded File on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["user_id", "sticker", "sticker_format"],
                "properties": {
                  "user_id": { "type": "integer" },
                  "sticker": { "$ref": "#/components/schemas/InputFile" },
                  "sticker_format": { "type": "string" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["user_id", "sticker", "sticker_format"],
                "properties": {
                  "user_id": { "type": "integer" },
                  "sticker": { "$ref": "#/components/schemas/InputFile" },
                  "sticker_format": { "type": "string" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["user_id", "sticker", "sticker_format"],
                "properties": {
                  "user_id": { "type": "integer" },
                  "sticker": { "$ref": "#/components/schemas/InputFile" },
                  "sticker_format": { "type": "string" }
                }
              }
            }
          }
        },
        "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/File" }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/createNewStickerSet": {
      "description": "Use this method to create a new sticker set owned by a user. The bot will be able to edit the sticker set thus created. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["user_id", "name", "title", "stickers"],
                "properties": {
                  "user_id": { "type": "integer" },
                  "name": { "type": "string" },
                  "title": { "type": "string" },
                  "stickers": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/InputSticker" }
                  },
                  "sticker_type": { "type": "string" },
                  "needs_repainting": { "type": "boolean" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["user_id", "name", "title", "stickers"],
                "properties": {
                  "user_id": { "type": "integer" },
                  "name": { "type": "string" },
                  "title": { "type": "string" },
                  "stickers": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/InputSticker" }
                  },
                  "sticker_type": { "type": "string" },
                  "needs_repainting": { "type": "boolean" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["user_id", "name", "title", "stickers"],
                "properties": {
                  "user_id": { "type": "integer" },
                  "name": { "type": "string" },
                  "title": { "type": "string" },
                  "stickers": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/InputSticker" }
                  },
                  "sticker_type": { "type": "string" },
                  "needs_repainting": { "type": "boolean" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/addStickerToSet": {
      "description": "Use this method to add a new sticker to a set created by the bot. Emoji sticker sets can have up to 200 stickers. Other sticker sets can have up to 120 stickers. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["user_id", "name", "sticker"],
                "properties": {
                  "user_id": { "type": "integer" },
                  "name": { "type": "string" },
                  "sticker": { "$ref": "#/components/schemas/InputSticker" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["user_id", "name", "sticker"],
                "properties": {
                  "user_id": { "type": "integer" },
                  "name": { "type": "string" },
                  "sticker": { "$ref": "#/components/schemas/InputSticker" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["user_id", "name", "sticker"],
                "properties": {
                  "user_id": { "type": "integer" },
                  "name": { "type": "string" },
                  "sticker": { "$ref": "#/components/schemas/InputSticker" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/setStickerPositionInSet": {
      "description": "Use this method to move a sticker in a set created by the bot to a specific position. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["sticker", "position"],
                "properties": {
                  "sticker": { "type": "string" },
                  "position": { "type": "integer" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["sticker", "position"],
                "properties": {
                  "sticker": { "type": "string" },
                  "position": { "type": "integer" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["sticker", "position"],
                "properties": {
                  "sticker": { "type": "string" },
                  "position": { "type": "integer" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/deleteStickerFromSet": {
      "description": "Use this method to delete a sticker from a set created by the bot. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["sticker"],
                "properties": { "sticker": { "type": "string" } }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["sticker"],
                "properties": { "sticker": { "type": "string" } }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["sticker"],
                "properties": { "sticker": { "type": "string" } }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/replaceStickerInSet": {
      "description": "Use this method to replace an existing sticker in a sticker set with a new one. The method is equivalent to calling deleteStickerFromSet, then addStickerToSet, then setStickerPositionInSet. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["user_id", "name", "old_sticker", "sticker"],
                "properties": {
                  "user_id": { "type": "integer" },
                  "name": { "type": "string" },
                  "old_sticker": { "type": "string" },
                  "sticker": { "$ref": "#/components/schemas/InputSticker" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["user_id", "name", "old_sticker", "sticker"],
                "properties": {
                  "user_id": { "type": "integer" },
                  "name": { "type": "string" },
                  "old_sticker": { "type": "string" },
                  "sticker": { "$ref": "#/components/schemas/InputSticker" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["user_id", "name", "old_sticker", "sticker"],
                "properties": {
                  "user_id": { "type": "integer" },
                  "name": { "type": "string" },
                  "old_sticker": { "type": "string" },
                  "sticker": { "$ref": "#/components/schemas/InputSticker" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/setStickerEmojiList": {
      "description": "Use this method to change the list of emoji assigned to a regular or custom emoji sticker. The sticker must belong to a sticker set created by the bot. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["sticker", "emoji_list"],
                "properties": {
                  "sticker": { "type": "string" },
                  "emoji_list": {
                    "type": "array",
                    "items": { "type": "string" }
                  }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["sticker", "emoji_list"],
                "properties": {
                  "sticker": { "type": "string" },
                  "emoji_list": {
                    "type": "array",
                    "items": { "type": "string" }
                  }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["sticker", "emoji_list"],
                "properties": {
                  "sticker": { "type": "string" },
                  "emoji_list": {
                    "type": "array",
                    "items": { "type": "string" }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/setStickerKeywords": {
      "description": "Use this method to change search keywords assigned to a regular or custom emoji sticker. The sticker must belong to a sticker set created by the bot. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["sticker"],
                "properties": {
                  "sticker": { "type": "string" },
                  "keywords": { "type": "array", "items": { "type": "string" } }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["sticker"],
                "properties": {
                  "sticker": { "type": "string" },
                  "keywords": { "type": "array", "items": { "type": "string" } }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["sticker"],
                "properties": {
                  "sticker": { "type": "string" },
                  "keywords": { "type": "array", "items": { "type": "string" } }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/setStickerMaskPosition": {
      "description": "Use this method to change the mask position of a mask sticker. The sticker must belong to a sticker set that was created by the bot. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["sticker"],
                "properties": {
                  "sticker": { "type": "string" },
                  "mask_position": {
                    "$ref": "#/components/schemas/MaskPosition"
                  }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["sticker"],
                "properties": {
                  "sticker": { "type": "string" },
                  "mask_position": {
                    "$ref": "#/components/schemas/MaskPosition"
                  }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["sticker"],
                "properties": {
                  "sticker": { "type": "string" },
                  "mask_position": {
                    "$ref": "#/components/schemas/MaskPosition"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/setStickerSetTitle": {
      "description": "Use this method to set the title of a created sticker set. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["name", "title"],
                "properties": {
                  "name": { "type": "string" },
                  "title": { "type": "string" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["name", "title"],
                "properties": {
                  "name": { "type": "string" },
                  "title": { "type": "string" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["name", "title"],
                "properties": {
                  "name": { "type": "string" },
                  "title": { "type": "string" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/setStickerSetThumbnail": {
      "description": "Use this method to set the thumbnail of a regular or mask sticker set. The format of the thumbnail file must match the format of the stickers in the set. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["name", "user_id", "format"],
                "properties": {
                  "name": { "type": "string" },
                  "user_id": { "type": "integer" },
                  "thumbnail": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "format": { "type": "string" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["name", "user_id", "format"],
                "properties": {
                  "name": { "type": "string" },
                  "user_id": { "type": "integer" },
                  "thumbnail": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "format": { "type": "string" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["name", "user_id", "format"],
                "properties": {
                  "name": { "type": "string" },
                  "user_id": { "type": "integer" },
                  "thumbnail": {
                    "anyOf": [
                      { "$ref": "#/components/schemas/InputFile" },
                      { "type": "string" }
                    ]
                  },
                  "format": { "type": "string" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/setCustomEmojiStickerSetThumbnail": {
      "description": "Use this method to set the thumbnail of a custom emoji sticker set. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["name"],
                "properties": {
                  "name": { "type": "string" },
                  "custom_emoji_id": { "type": "string" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["name"],
                "properties": {
                  "name": { "type": "string" },
                  "custom_emoji_id": { "type": "string" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["name"],
                "properties": {
                  "name": { "type": "string" },
                  "custom_emoji_id": { "type": "string" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/deleteStickerSet": {
      "description": "Use this method to delete a sticker set that was created by the bot. Returns True on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["name"],
                "properties": { "name": { "type": "string" } }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["name"],
                "properties": { "name": { "type": "string" } }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["name"],
                "properties": { "name": { "type": "string" } }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/answerInlineQuery": {
      "description": "Use this method to send answers to an inline query. On success, True is returned.No more than 50 results per query are allowed.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["inline_query_id", "results"],
                "properties": {
                  "inline_query_id": { "type": "string" },
                  "results": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/InlineQueryResult"
                    }
                  },
                  "cache_time": { "type": "integer", "default": 300 },
                  "is_personal": { "type": "boolean" },
                  "next_offset": { "type": "string" },
                  "button": {
                    "$ref": "#/components/schemas/InlineQueryResultsButton"
                  }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["inline_query_id", "results"],
                "properties": {
                  "inline_query_id": { "type": "string" },
                  "results": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/InlineQueryResult"
                    }
                  },
                  "cache_time": { "type": "integer", "default": 300 },
                  "is_personal": { "type": "boolean" },
                  "next_offset": { "type": "string" },
                  "button": {
                    "$ref": "#/components/schemas/InlineQueryResultsButton"
                  }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["inline_query_id", "results"],
                "properties": {
                  "inline_query_id": { "type": "string" },
                  "results": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/InlineQueryResult"
                    }
                  },
                  "cache_time": { "type": "integer", "default": 300 },
                  "is_personal": { "type": "boolean" },
                  "next_offset": { "type": "string" },
                  "button": {
                    "$ref": "#/components/schemas/InlineQueryResultsButton"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/answerWebAppQuery": {
      "description": "Use this method to set the result of an interaction with a Web App and send a corresponding message on behalf of the user to the chat from which the query originated. On success, a SentWebAppMessage object is returned.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["web_app_query_id", "result"],
                "properties": {
                  "web_app_query_id": { "type": "string" },
                  "result": { "$ref": "#/components/schemas/InlineQueryResult" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["web_app_query_id", "result"],
                "properties": {
                  "web_app_query_id": { "type": "string" },
                  "result": { "$ref": "#/components/schemas/InlineQueryResult" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["web_app_query_id", "result"],
                "properties": {
                  "web_app_query_id": { "type": "string" },
                  "result": { "$ref": "#/components/schemas/InlineQueryResult" }
                }
              }
            }
          }
        },
        "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/SentWebAppMessage"
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/sendInvoice": {
      "description": "Use this method to send invoices. On success, the sent Message is returned.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "chat_id",
                  "title",
                  "description",
                  "payload",
                  "currency",
                  "prices"
                ],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "title": { "type": "string" },
                  "description": { "type": "string" },
                  "payload": { "type": "string" },
                  "provider_token": { "type": "string" },
                  "currency": { "type": "string" },
                  "prices": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/LabeledPrice" }
                  },
                  "max_tip_amount": { "type": "integer" },
                  "suggested_tip_amounts": {
                    "type": "array",
                    "items": { "type": "integer" }
                  },
                  "start_parameter": { "type": "string" },
                  "provider_data": { "type": "string" },
                  "photo_url": { "type": "string" },
                  "photo_size": { "type": "integer" },
                  "photo_width": { "type": "integer" },
                  "photo_height": { "type": "integer" },
                  "need_name": { "type": "boolean" },
                  "need_phone_number": { "type": "boolean" },
                  "need_email": { "type": "boolean" },
                  "need_shipping_address": { "type": "boolean" },
                  "send_phone_number_to_provider": { "type": "boolean" },
                  "send_email_to_provider": { "type": "boolean" },
                  "is_flexible": { "type": "boolean" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "reply_parameters": {
                    "$ref": "#/components/schemas/ReplyParameters"
                  },
                  "reply_markup": {
                    "$ref": "#/components/schemas/InlineKeyboardMarkup"
                  }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": [
                  "chat_id",
                  "title",
                  "description",
                  "payload",
                  "currency",
                  "prices"
                ],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "title": { "type": "string" },
                  "description": { "type": "string" },
                  "payload": { "type": "string" },
                  "provider_token": { "type": "string" },
                  "currency": { "type": "string" },
                  "prices": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/LabeledPrice" }
                  },
                  "max_tip_amount": { "type": "integer" },
                  "suggested_tip_amounts": {
                    "type": "array",
                    "items": { "type": "integer" }
                  },
                  "start_parameter": { "type": "string" },
                  "provider_data": { "type": "string" },
                  "photo_url": { "type": "string" },
                  "photo_size": { "type": "integer" },
                  "photo_width": { "type": "integer" },
                  "photo_height": { "type": "integer" },
                  "need_name": { "type": "boolean" },
                  "need_phone_number": { "type": "boolean" },
                  "need_email": { "type": "boolean" },
                  "need_shipping_address": { "type": "boolean" },
                  "send_phone_number_to_provider": { "type": "boolean" },
                  "send_email_to_provider": { "type": "boolean" },
                  "is_flexible": { "type": "boolean" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "reply_parameters": {
                    "$ref": "#/components/schemas/ReplyParameters"
                  },
                  "reply_markup": {
                    "$ref": "#/components/schemas/InlineKeyboardMarkup"
                  }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": [
                  "chat_id",
                  "title",
                  "description",
                  "payload",
                  "currency",
                  "prices"
                ],
                "properties": {
                  "chat_id": {
                    "anyOf": [{ "type": "integer" }, { "type": "string" }]
                  },
                  "message_thread_id": { "type": "integer" },
                  "title": { "type": "string" },
                  "description": { "type": "string" },
                  "payload": { "type": "string" },
                  "provider_token": { "type": "string" },
                  "currency": { "type": "string" },
                  "prices": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/LabeledPrice" }
                  },
                  "max_tip_amount": { "type": "integer" },
                  "suggested_tip_amounts": {
                    "type": "array",
                    "items": { "type": "integer" }
                  },
                  "start_parameter": { "type": "string" },
                  "provider_data": { "type": "string" },
                  "photo_url": { "type": "string" },
                  "photo_size": { "type": "integer" },
                  "photo_width": { "type": "integer" },
                  "photo_height": { "type": "integer" },
                  "need_name": { "type": "boolean" },
                  "need_phone_number": { "type": "boolean" },
                  "need_email": { "type": "boolean" },
                  "need_shipping_address": { "type": "boolean" },
                  "send_phone_number_to_provider": { "type": "boolean" },
                  "send_email_to_provider": { "type": "boolean" },
                  "is_flexible": { "type": "boolean" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "reply_parameters": {
                    "$ref": "#/components/schemas/ReplyParameters"
                  },
                  "reply_markup": {
                    "$ref": "#/components/schemas/InlineKeyboardMarkup"
                  }
                }
              }
            }
          }
        },
        "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" }
        }
      }
    },
    "/createInvoiceLink": {
      "description": "Use this method to create a link for an invoice. Returns the created invoice link as String on success.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": [
                  "title",
                  "description",
                  "payload",
                  "currency",
                  "prices"
                ],
                "properties": {
                  "title": { "type": "string" },
                  "description": { "type": "string" },
                  "payload": { "type": "string" },
                  "provider_token": { "type": "string" },
                  "currency": { "type": "string" },
                  "prices": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/LabeledPrice" }
                  },
                  "max_tip_amount": { "type": "integer" },
                  "suggested_tip_amounts": {
                    "type": "array",
                    "items": { "type": "integer" }
                  },
                  "provider_data": { "type": "string" },
                  "photo_url": { "type": "string" },
                  "photo_size": { "type": "integer" },
                  "photo_width": { "type": "integer" },
                  "photo_height": { "type": "integer" },
                  "need_name": { "type": "boolean" },
                  "need_phone_number": { "type": "boolean" },
                  "need_email": { "type": "boolean" },
                  "need_shipping_address": { "type": "boolean" },
                  "send_phone_number_to_provider": { "type": "boolean" },
                  "send_email_to_provider": { "type": "boolean" },
                  "is_flexible": { "type": "boolean" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": [
                  "title",
                  "description",
                  "payload",
                  "currency",
                  "prices"
                ],
                "properties": {
                  "title": { "type": "string" },
                  "description": { "type": "string" },
                  "payload": { "type": "string" },
                  "provider_token": { "type": "string" },
                  "currency": { "type": "string" },
                  "prices": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/LabeledPrice" }
                  },
                  "max_tip_amount": { "type": "integer" },
                  "suggested_tip_amounts": {
                    "type": "array",
                    "items": { "type": "integer" }
                  },
                  "provider_data": { "type": "string" },
                  "photo_url": { "type": "string" },
                  "photo_size": { "type": "integer" },
                  "photo_width": { "type": "integer" },
                  "photo_height": { "type": "integer" },
                  "need_name": { "type": "boolean" },
                  "need_phone_number": { "type": "boolean" },
                  "need_email": { "type": "boolean" },
                  "need_shipping_address": { "type": "boolean" },
                  "send_phone_number_to_provider": { "type": "boolean" },
                  "send_email_to_provider": { "type": "boolean" },
                  "is_flexible": { "type": "boolean" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": [
                  "title",
                  "description",
                  "payload",
                  "currency",
                  "prices"
                ],
                "properties": {
                  "title": { "type": "string" },
                  "description": { "type": "string" },
                  "payload": { "type": "string" },
                  "provider_token": { "type": "string" },
                  "currency": { "type": "string" },
                  "prices": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/LabeledPrice" }
                  },
                  "max_tip_amount": { "type": "integer" },
                  "suggested_tip_amounts": {
                    "type": "array",
                    "items": { "type": "integer" }
                  },
                  "provider_data": { "type": "string" },
                  "photo_url": { "type": "string" },
                  "photo_size": { "type": "integer" },
                  "photo_width": { "type": "integer" },
                  "photo_height": { "type": "integer" },
                  "need_name": { "type": "boolean" },
                  "need_phone_number": { "type": "boolean" },
                  "need_email": { "type": "boolean" },
                  "need_shipping_address": { "type": "boolean" },
                  "send_phone_number_to_provider": { "type": "boolean" },
                  "send_email_to_provider": { "type": "boolean" },
                  "is_flexible": { "type": "boolean" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "string" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/answerShippingQuery": {
      "description": "If you sent an invoice requesting a shipping address and the parameter is_flexible was specified, the Bot API will send an Update with a shipping_query field to the bot. Use this method to reply to shipping queries. On success, True is returned.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["shipping_query_id", "ok"],
                "properties": {
                  "shipping_query_id": { "type": "string" },
                  "ok": { "type": "boolean" },
                  "shipping_options": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/ShippingOption" }
                  },
                  "error_message": { "type": "string" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["shipping_query_id", "ok"],
                "properties": {
                  "shipping_query_id": { "type": "string" },
                  "ok": { "type": "boolean" },
                  "shipping_options": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/ShippingOption" }
                  },
                  "error_message": { "type": "string" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["shipping_query_id", "ok"],
                "properties": {
                  "shipping_query_id": { "type": "string" },
                  "ok": { "type": "boolean" },
                  "shipping_options": {
                    "type": "array",
                    "items": { "$ref": "#/components/schemas/ShippingOption" }
                  },
                  "error_message": { "type": "string" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/answerPreCheckoutQuery": {
      "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.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["pre_checkout_query_id", "ok"],
                "properties": {
                  "pre_checkout_query_id": { "type": "string" },
                  "ok": { "type": "boolean" },
                  "error_message": { "type": "string" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["pre_checkout_query_id", "ok"],
                "properties": {
                  "pre_checkout_query_id": { "type": "string" },
                  "ok": { "type": "boolean" },
                  "error_message": { "type": "string" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["pre_checkout_query_id", "ok"],
                "properties": {
                  "pre_checkout_query_id": { "type": "string" },
                  "ok": { "type": "boolean" },
                  "error_message": { "type": "string" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/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": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["user_id", "telegram_payment_charge_id"],
                "properties": {
                  "user_id": { "type": "integer" },
                  "telegram_payment_charge_id": { "type": "string" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["user_id", "telegram_payment_charge_id"],
                "properties": {
                  "user_id": { "type": "integer" },
                  "telegram_payment_charge_id": { "type": "string" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["user_id", "telegram_payment_charge_id"],
                "properties": {
                  "user_id": { "type": "integer" },
                  "telegram_payment_charge_id": { "type": "string" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/setPassportDataErrors": {
      "description": "Informs a user that some of the Telegram Passport elements they provided contains errors. The user will not be able to re-submit their Passport to you until the errors are fixed (the contents of the field for which you returned the error must change). Returns True on success.\r\nUse this if the data submitted by the user doesn't satisfy the standards your service requires for any reason. For example, if a birthday date seems invalid, a submitted document is blurry, a scan shows evidence of tampering, etc. Supply some details in the error message to make sure the user knows how to correct the issues.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["user_id", "errors"],
                "properties": {
                  "user_id": { "type": "integer" },
                  "errors": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/PassportElementError"
                    }
                  }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["user_id", "errors"],
                "properties": {
                  "user_id": { "type": "integer" },
                  "errors": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/PassportElementError"
                    }
                  }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["user_id", "errors"],
                "properties": {
                  "user_id": { "type": "integer" },
                  "errors": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/PassportElementError"
                    }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": { "result": { "type": "boolean" } }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/sendGame": {
      "description": "Use this method to send a game. On success, the sent Message is returned.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": { "type": "integer" },
                  "message_thread_id": { "type": "integer" },
                  "game_short_name": { "type": "string" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "reply_parameters": {
                    "$ref": "#/components/schemas/ReplyParameters"
                  },
                  "reply_markup": {
                    "$ref": "#/components/schemas/InlineKeyboardMarkup"
                  }
                },
                "required": ["chat_id", "game_short_name"]
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": { "type": "integer" },
                  "message_thread_id": { "type": "integer" },
                  "game_short_name": { "type": "string" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "reply_parameters": {
                    "$ref": "#/components/schemas/ReplyParameters"
                  },
                  "reply_markup": {
                    "$ref": "#/components/schemas/InlineKeyboardMarkup"
                  }
                },
                "required": ["chat_id", "game_short_name"]
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "properties": {
                  "business_connection_id": { "type": "string" },
                  "chat_id": { "type": "integer" },
                  "message_thread_id": { "type": "integer" },
                  "game_short_name": { "type": "string" },
                  "disable_notification": { "type": "boolean" },
                  "protect_content": { "type": "boolean" },
                  "message_effect_id": { "type": "string" },
                  "reply_parameters": {
                    "$ref": "#/components/schemas/ReplyParameters"
                  },
                  "reply_markup": {
                    "$ref": "#/components/schemas/InlineKeyboardMarkup"
                  }
                },
                "required": ["chat_id", "game_short_name"]
              }
            }
          }
        },
        "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" }
        }
      }
    },
    "/setGameScore": {
      "description": "Use this method to set the score of the specified user in a game message. On success, if the message is not an inline message, the Message is returned, otherwise True is returned. Returns an error, if the new score is not greater than the user's current score in the chat and force is False.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["user_id", "score"],
                "properties": {
                  "user_id": { "type": "integer" },
                  "score": { "type": "integer" },
                  "force": { "type": "boolean" },
                  "disable_edit_message": { "type": "boolean" },
                  "chat_id": { "type": "integer" },
                  "message_id": { "type": "integer" },
                  "inline_message_id": { "type": "string" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["user_id", "score"],
                "properties": {
                  "user_id": { "type": "integer" },
                  "score": { "type": "integer" },
                  "force": { "type": "boolean" },
                  "disable_edit_message": { "type": "boolean" },
                  "chat_id": { "type": "integer" },
                  "message_id": { "type": "integer" },
                  "inline_message_id": { "type": "string" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["user_id", "score"],
                "properties": {
                  "user_id": { "type": "integer" },
                  "score": { "type": "integer" },
                  "force": { "type": "boolean" },
                  "disable_edit_message": { "type": "boolean" },
                  "chat_id": { "type": "integer" },
                  "message_id": { "type": "integer" },
                  "inline_message_id": { "type": "string" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": {
                        "result": {
                          "anyOf": [
                            { "$ref": "#/components/schemas/Message" },
                            { "type": "boolean" }
                          ]
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    },
    "/getGameHighScores": {
      "description": "Use this method to get data for high score tables. Will return the score of the specified user and several of their neighbors in a game. Returns an Array of GameHighScore objects.",
      "post": {
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["user_id"],
                "properties": {
                  "user_id": { "type": "integer" },
                  "chat_id": { "type": "integer" },
                  "message_id": { "type": "integer" },
                  "inline_message_id": { "type": "string" }
                }
              }
            },
            "application/x-www-form-urlencoded": {
              "schema": {
                "type": "object",
                "required": ["user_id"],
                "properties": {
                  "user_id": { "type": "integer" },
                  "chat_id": { "type": "integer" },
                  "message_id": { "type": "integer" },
                  "inline_message_id": { "type": "string" }
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "object",
                "required": ["user_id"],
                "properties": {
                  "user_id": { "type": "integer" },
                  "chat_id": { "type": "integer" },
                  "message_id": { "type": "integer" },
                  "inline_message_id": { "type": "string" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Request was successful, the result is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    { "$ref": "#/components/schemas/Success" },
                    {
                      "type": "object",
                      "properties": {
                        "result": {
                          "type": "array",
                          "items": {
                            "$ref": "#/components/schemas/GameHighScore"
                          }
                        }
                      }
                    }
                  ]
                }
              }
            }
          },
          "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" }
        }
      }
    }
  }
}
