openapi: 3.0.0 info: title: 'Telegram Bot API' description: 'Auto-generated OpenAPI schema by TGScraper.' version: 6.6.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' 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' 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 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 photo: $ref: '#/components/schemas/ChatPhoto' active_usernames: type: array items: type: string emoji_status_custom_emoji_id: type: string 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' slow_mode_delay: 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 sticker_set_name: type: string can_set_sticker_set: type: boolean default: true 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' date: type: integer chat: $ref: '#/components/schemas/Chat' forward_from: $ref: '#/components/schemas/User' forward_from_chat: $ref: '#/components/schemas/Chat' forward_from_message_id: type: integer forward_signature: type: string forward_sender_name: type: string forward_date: type: integer is_topic_message: type: boolean default: true is_automatic_forward: type: boolean default: true reply_to_message: $ref: '#/components/schemas/Message' via_bot: $ref: '#/components/schemas/User' edit_date: type: integer has_protected_content: type: boolean default: true media_group_id: type: string author_signature: type: string text: type: string entities: type: array items: $ref: '#/components/schemas/MessageEntity' animation: $ref: '#/components/schemas/Animation' audio: $ref: '#/components/schemas/Audio' document: $ref: '#/components/schemas/Document' photo: type: array items: $ref: '#/components/schemas/PhotoSize' sticker: $ref: '#/components/schemas/Sticker' 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' 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/Message' invoice: $ref: '#/components/schemas/Invoice' successful_payment: $ref: '#/components/schemas/SuccessfulPayment' user_shared: $ref: '#/components/schemas/UserShared' chat_shared: $ref: '#/components/schemas/ChatShared' connected_website: type: string write_access_allowed: $ref: '#/components/schemas/WriteAccessAllowed' passport_data: $ref: '#/components/schemas/PassportData' proximity_alert_triggered: $ref: '#/components/schemas/ProximityAlertTriggered' 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' 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 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 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 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 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 voter_count: type: integer type: object PollAnswer: description: 'This object represents an answer of a user in a non-anonymous poll.' required: - poll_id - user - option_ids properties: poll_id: type: string 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 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: - longitude - latitude properties: longitude: type: number latitude: 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 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 UserShared: description: 'This object contains information about the user whose identifier was shared with the bot using a KeyboardButtonRequestUser button.' required: - request_id - user_id properties: request_id: type: integer user_id: type: integer type: object ChatShared: description: 'This object contains information about the chat whose identifier was shared with the bot using a KeyboardButtonRequestChat button.' required: - request_id - chat_id properties: request_id: type: integer chat_id: type: integer type: object WriteAccessAllowed: description: 'This object represents a service message about a user allowing a bot added to the attachment menu to write messages. Currently holds no information.' type: object 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 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/. 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).' 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. For simple text buttons, String can be used instead of this object to specify the button text. The optional fields web_app, request_user, request_chat, request_contact, request_location, and request_poll are mutually exclusive.' required: - text properties: text: type: string request_user: $ref: '#/components/schemas/KeyboardButtonRequestUser' request_chat: $ref: '#/components/schemas/KeyboardButtonRequestChat' request_contact: type: boolean request_location: type: boolean request_poll: $ref: '#/components/schemas/KeyboardButtonPollType' web_app: $ref: '#/components/schemas/WebAppInfo' type: object KeyboardButtonRequestUser: description: 'This object defines the criteria used to request a suitable user. The identifier of the selected user will be shared with the bot when the corresponding button is pressed.' required: - request_id properties: request_id: type: integer user_is_bot: type: boolean user_is_premium: type: boolean type: object KeyboardButtonRequestChat: description: 'This object defines the criteria used to request a suitable chat. The identifier of the selected chat will be shared with the bot when the corresponding button is pressed.' required: - request_id - chat_is_channel properties: request_id: type: integer chat_is_channel: type: boolean chat_is_forum: type: boolean chat_has_username: type: boolean chat_is_created: type: boolean user_administrator_rights: $ref: '#/components/schemas/ChatAdministratorRights' bot_administrator_rights: $ref: '#/components/schemas/ChatAdministratorRights' bot_is_member: type: boolean type: object KeyboardButtonPollType: description: 'This object represents type of a poll, which is allowed to be created and sent when the corresponding button is pressed.' properties: 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).' 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. You must use exactly one of the optional fields.' 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 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:\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 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/Message' 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." 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 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_messages: type: boolean can_edit_messages: type: boolean can_pin_messages: type: boolean can_manage_topics: 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 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_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' 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 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' 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 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 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 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 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' 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' 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' 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 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 - is_animated - is_video - stickers properties: name: type: string title: type: string sticker_type: type: string is_animated: type: boolean is_video: type: boolean 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 - emoji_list properties: sticker: anyOf: - $ref: '#/components/schemas/InputFile' - 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 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' 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' 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' 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' 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' 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' 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' 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' 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' disable_web_page_preview: type: boolean 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 - provider_token - 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 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 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.\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 “X-Telegram-Bot-Api-Secret-Token” 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 required: - chat_id - text properties: 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' disable_web_page_preview: type: boolean disable_notification: type: boolean protect_content: type: boolean reply_to_message_id: type: integer allow_sending_without_reply: type: boolean 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 - text properties: 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' disable_web_page_preview: type: boolean disable_notification: type: boolean protect_content: type: boolean reply_to_message_id: type: integer allow_sending_without_reply: type: boolean 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 - text properties: 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' disable_web_page_preview: type: boolean disable_notification: type: boolean protect_content: type: boolean reply_to_message_id: type: integer allow_sending_without_reply: type: boolean reply_markup: anyOf: - $ref: '#/components/schemas/InlineKeyboardMarkup' - $ref: '#/components/schemas/ReplyKeyboardMarkup' - $ref: '#/components/schemas/ReplyKeyboardRemove' - $ref: '#/components/schemas/ForceReply' responses: 200: description: 'Request was successful, the result is returned.' content: application/json: schema: allOf: - $ref: '#/components/schemas/Success' - type: object properties: result: $ref: '#/components/schemas/Message' 400: $ref: '#/components/responses/BadRequest' 401: $ref: '#/components/responses/Unauthorized' 403: $ref: '#/components/responses/Forbidden' 404: $ref: '#/components/responses/NotFound' 409: $ref: '#/components/responses/Conflict' 429: $ref: '#/components/responses/TooManyRequests' 5XX: $ref: '#/components/responses/ServerError' default: $ref: '#/components/responses/UnknownError' /forwardMessage: description: "Use this method to forward messages of any kind. Service messages 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' /copyMessage: description: "Use this method to copy messages of any kind. Service 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' disable_notification: type: boolean protect_content: type: boolean reply_to_message_id: type: integer allow_sending_without_reply: type: boolean 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' disable_notification: type: boolean protect_content: type: boolean reply_to_message_id: type: integer allow_sending_without_reply: type: boolean 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' disable_notification: type: boolean protect_content: type: boolean reply_to_message_id: type: integer allow_sending_without_reply: type: boolean 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' /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 required: - chat_id - photo properties: 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' has_spoiler: type: boolean disable_notification: type: boolean protect_content: type: boolean reply_to_message_id: type: integer allow_sending_without_reply: type: boolean 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 - photo properties: 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' has_spoiler: type: boolean disable_notification: type: boolean protect_content: type: boolean reply_to_message_id: type: integer allow_sending_without_reply: type: boolean 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 - photo properties: 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' has_spoiler: type: boolean disable_notification: type: boolean protect_content: type: boolean reply_to_message_id: type: integer allow_sending_without_reply: type: boolean reply_markup: anyOf: - $ref: '#/components/schemas/InlineKeyboardMarkup' - $ref: '#/components/schemas/ReplyKeyboardMarkup' - $ref: '#/components/schemas/ReplyKeyboardRemove' - $ref: '#/components/schemas/ForceReply' responses: 200: description: 'Request was successful, the result is returned.' content: application/json: schema: allOf: - $ref: '#/components/schemas/Success' - type: object properties: result: $ref: '#/components/schemas/Message' 400: $ref: '#/components/responses/BadRequest' 401: $ref: '#/components/responses/Unauthorized' 403: $ref: '#/components/responses/Forbidden' 404: $ref: '#/components/responses/NotFound' 409: $ref: '#/components/responses/Conflict' 429: $ref: '#/components/responses/TooManyRequests' 5XX: $ref: '#/components/responses/ServerError' default: $ref: '#/components/responses/UnknownError' /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.\nFor sending voice messages, use the sendVoice method instead." post: requestBody: required: true content: application/json: schema: type: object required: - chat_id - audio properties: 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 reply_to_message_id: type: integer allow_sending_without_reply: type: boolean 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 - audio properties: 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 reply_to_message_id: type: integer allow_sending_without_reply: type: boolean 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 - audio properties: 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 reply_to_message_id: type: integer allow_sending_without_reply: type: boolean reply_markup: anyOf: - $ref: '#/components/schemas/InlineKeyboardMarkup' - $ref: '#/components/schemas/ReplyKeyboardMarkup' - $ref: '#/components/schemas/ReplyKeyboardRemove' - $ref: '#/components/schemas/ForceReply' responses: 200: description: 'Request was successful, the result is returned.' content: application/json: schema: allOf: - $ref: '#/components/schemas/Success' - type: object properties: result: $ref: '#/components/schemas/Message' 400: $ref: '#/components/responses/BadRequest' 401: $ref: '#/components/responses/Unauthorized' 403: $ref: '#/components/responses/Forbidden' 404: $ref: '#/components/responses/NotFound' 409: $ref: '#/components/responses/Conflict' 429: $ref: '#/components/responses/TooManyRequests' 5XX: $ref: '#/components/responses/ServerError' default: $ref: '#/components/responses/UnknownError' /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 required: - chat_id - document properties: 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 reply_to_message_id: type: integer allow_sending_without_reply: type: boolean 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 - document properties: 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 reply_to_message_id: type: integer allow_sending_without_reply: type: boolean 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 - document properties: 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 reply_to_message_id: type: integer allow_sending_without_reply: type: boolean reply_markup: anyOf: - $ref: '#/components/schemas/InlineKeyboardMarkup' - $ref: '#/components/schemas/ReplyKeyboardMarkup' - $ref: '#/components/schemas/ReplyKeyboardRemove' - $ref: '#/components/schemas/ForceReply' responses: 200: description: 'Request was successful, the result is returned.' content: application/json: schema: allOf: - $ref: '#/components/schemas/Success' - type: object properties: result: $ref: '#/components/schemas/Message' 400: $ref: '#/components/responses/BadRequest' 401: $ref: '#/components/responses/Unauthorized' 403: $ref: '#/components/responses/Forbidden' 404: $ref: '#/components/responses/NotFound' 409: $ref: '#/components/responses/Conflict' 429: $ref: '#/components/responses/TooManyRequests' 5XX: $ref: '#/components/responses/ServerError' default: $ref: '#/components/responses/UnknownError' /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 required: - chat_id - video properties: 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' has_spoiler: type: boolean supports_streaming: type: boolean disable_notification: type: boolean protect_content: type: boolean reply_to_message_id: type: integer allow_sending_without_reply: type: boolean 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 - video properties: 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' has_spoiler: type: boolean supports_streaming: type: boolean disable_notification: type: boolean protect_content: type: boolean reply_to_message_id: type: integer allow_sending_without_reply: type: boolean 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 - video properties: 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' has_spoiler: type: boolean supports_streaming: type: boolean disable_notification: type: boolean protect_content: type: boolean reply_to_message_id: type: integer allow_sending_without_reply: type: boolean reply_markup: anyOf: - $ref: '#/components/schemas/InlineKeyboardMarkup' - $ref: '#/components/schemas/ReplyKeyboardMarkup' - $ref: '#/components/schemas/ReplyKeyboardRemove' - $ref: '#/components/schemas/ForceReply' responses: 200: description: 'Request was successful, the result is returned.' content: application/json: schema: allOf: - $ref: '#/components/schemas/Success' - type: object properties: result: $ref: '#/components/schemas/Message' 400: $ref: '#/components/responses/BadRequest' 401: $ref: '#/components/responses/Unauthorized' 403: $ref: '#/components/responses/Forbidden' 404: $ref: '#/components/responses/NotFound' 409: $ref: '#/components/responses/Conflict' 429: $ref: '#/components/responses/TooManyRequests' 5XX: $ref: '#/components/responses/ServerError' default: $ref: '#/components/responses/UnknownError' /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 required: - chat_id - animation properties: 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' has_spoiler: type: boolean disable_notification: type: boolean protect_content: type: boolean reply_to_message_id: type: integer allow_sending_without_reply: type: boolean 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 - animation properties: 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' has_spoiler: type: boolean disable_notification: type: boolean protect_content: type: boolean reply_to_message_id: type: integer allow_sending_without_reply: type: boolean 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 - animation properties: 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' has_spoiler: type: boolean disable_notification: type: boolean protect_content: type: boolean reply_to_message_id: type: integer allow_sending_without_reply: type: boolean reply_markup: anyOf: - $ref: '#/components/schemas/InlineKeyboardMarkup' - $ref: '#/components/schemas/ReplyKeyboardMarkup' - $ref: '#/components/schemas/ReplyKeyboardRemove' - $ref: '#/components/schemas/ForceReply' responses: 200: description: 'Request was successful, the result is returned.' content: application/json: schema: allOf: - $ref: '#/components/schemas/Success' - type: object properties: result: $ref: '#/components/schemas/Message' 400: $ref: '#/components/responses/BadRequest' 401: $ref: '#/components/responses/Unauthorized' 403: $ref: '#/components/responses/Forbidden' 404: $ref: '#/components/responses/NotFound' 409: $ref: '#/components/responses/Conflict' 429: $ref: '#/components/responses/TooManyRequests' 5XX: $ref: '#/components/responses/ServerError' default: $ref: '#/components/responses/UnknownError' /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 (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 required: - chat_id - voice properties: 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 reply_to_message_id: type: integer allow_sending_without_reply: type: boolean 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 - voice properties: 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 reply_to_message_id: type: integer allow_sending_without_reply: type: boolean 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 - voice properties: 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 reply_to_message_id: type: integer allow_sending_without_reply: type: boolean reply_markup: anyOf: - $ref: '#/components/schemas/InlineKeyboardMarkup' - $ref: '#/components/schemas/ReplyKeyboardMarkup' - $ref: '#/components/schemas/ReplyKeyboardRemove' - $ref: '#/components/schemas/ForceReply' responses: 200: description: 'Request was successful, the result is returned.' content: application/json: schema: allOf: - $ref: '#/components/schemas/Success' - type: object properties: result: $ref: '#/components/schemas/Message' 400: $ref: '#/components/responses/BadRequest' 401: $ref: '#/components/responses/Unauthorized' 403: $ref: '#/components/responses/Forbidden' 404: $ref: '#/components/responses/NotFound' 409: $ref: '#/components/responses/Conflict' 429: $ref: '#/components/responses/TooManyRequests' 5XX: $ref: '#/components/responses/ServerError' default: $ref: '#/components/responses/UnknownError' /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 required: - chat_id - video_note properties: 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 reply_to_message_id: type: integer allow_sending_without_reply: type: boolean 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 - video_note properties: 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 reply_to_message_id: type: integer allow_sending_without_reply: type: boolean 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 - video_note properties: 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 reply_to_message_id: type: integer allow_sending_without_reply: type: boolean reply_markup: anyOf: - $ref: '#/components/schemas/InlineKeyboardMarkup' - $ref: '#/components/schemas/ReplyKeyboardMarkup' - $ref: '#/components/schemas/ReplyKeyboardRemove' - $ref: '#/components/schemas/ForceReply' responses: 200: description: 'Request was successful, the result is returned.' content: application/json: schema: allOf: - $ref: '#/components/schemas/Success' - type: object properties: result: $ref: '#/components/schemas/Message' 400: $ref: '#/components/responses/BadRequest' 401: $ref: '#/components/responses/Unauthorized' 403: $ref: '#/components/responses/Forbidden' 404: $ref: '#/components/responses/NotFound' 409: $ref: '#/components/responses/Conflict' 429: $ref: '#/components/responses/TooManyRequests' 5XX: $ref: '#/components/responses/ServerError' default: $ref: '#/components/responses/UnknownError' /sendMediaGroup: description: 'Use this method to send a group of photos, videos, documents or audios as an album. Documents and audio files can be only grouped in an album with messages of the same type. On success, an array of Messages that were sent is returned.' post: requestBody: required: true content: application/json: schema: type: object required: - chat_id - media properties: 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 reply_to_message_id: type: integer allow_sending_without_reply: type: boolean application/x-www-form-urlencoded: schema: type: object required: - chat_id - media properties: 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 reply_to_message_id: type: integer allow_sending_without_reply: type: boolean multipart/form-data: schema: type: object required: - chat_id - media properties: 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 reply_to_message_id: type: integer allow_sending_without_reply: 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/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 required: - chat_id - latitude - longitude properties: 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 reply_to_message_id: type: integer allow_sending_without_reply: type: boolean 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 - latitude - longitude properties: 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 reply_to_message_id: type: integer allow_sending_without_reply: type: boolean 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 - latitude - longitude properties: 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 reply_to_message_id: type: integer allow_sending_without_reply: type: boolean reply_markup: anyOf: - $ref: '#/components/schemas/InlineKeyboardMarkup' - $ref: '#/components/schemas/ReplyKeyboardMarkup' - $ref: '#/components/schemas/ReplyKeyboardRemove' - $ref: '#/components/schemas/ForceReply' responses: 200: description: 'Request was successful, the result is returned.' content: application/json: schema: allOf: - $ref: '#/components/schemas/Success' - type: object properties: result: $ref: '#/components/schemas/Message' 400: $ref: '#/components/responses/BadRequest' 401: $ref: '#/components/responses/Unauthorized' 403: $ref: '#/components/responses/Forbidden' 404: $ref: '#/components/responses/NotFound' 409: $ref: '#/components/responses/Conflict' 429: $ref: '#/components/responses/TooManyRequests' 5XX: $ref: '#/components/responses/ServerError' default: $ref: '#/components/responses/UnknownError' /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 required: - chat_id - latitude - longitude - title - address properties: 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 reply_to_message_id: type: integer allow_sending_without_reply: type: boolean 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 - latitude - longitude - title - address properties: 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 reply_to_message_id: type: integer allow_sending_without_reply: type: boolean 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 - latitude - longitude - title - address properties: 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 reply_to_message_id: type: integer allow_sending_without_reply: type: boolean reply_markup: anyOf: - $ref: '#/components/schemas/InlineKeyboardMarkup' - $ref: '#/components/schemas/ReplyKeyboardMarkup' - $ref: '#/components/schemas/ReplyKeyboardRemove' - $ref: '#/components/schemas/ForceReply' responses: 200: description: 'Request was successful, the result is returned.' content: application/json: schema: allOf: - $ref: '#/components/schemas/Success' - type: object properties: result: $ref: '#/components/schemas/Message' 400: $ref: '#/components/responses/BadRequest' 401: $ref: '#/components/responses/Unauthorized' 403: $ref: '#/components/responses/Forbidden' 404: $ref: '#/components/responses/NotFound' 409: $ref: '#/components/responses/Conflict' 429: $ref: '#/components/responses/TooManyRequests' 5XX: $ref: '#/components/responses/ServerError' default: $ref: '#/components/responses/UnknownError' /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 required: - chat_id - phone_number - first_name properties: 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 reply_to_message_id: type: integer allow_sending_without_reply: type: boolean 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 - phone_number - first_name properties: 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 reply_to_message_id: type: integer allow_sending_without_reply: type: boolean 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 - phone_number - first_name properties: 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 reply_to_message_id: type: integer allow_sending_without_reply: type: boolean reply_markup: anyOf: - $ref: '#/components/schemas/InlineKeyboardMarkup' - $ref: '#/components/schemas/ReplyKeyboardMarkup' - $ref: '#/components/schemas/ReplyKeyboardRemove' - $ref: '#/components/schemas/ForceReply' responses: 200: description: 'Request was successful, the result is returned.' content: application/json: schema: allOf: - $ref: '#/components/schemas/Success' - type: object properties: result: $ref: '#/components/schemas/Message' 400: $ref: '#/components/responses/BadRequest' 401: $ref: '#/components/responses/Unauthorized' 403: $ref: '#/components/responses/Forbidden' 404: $ref: '#/components/responses/NotFound' 409: $ref: '#/components/responses/Conflict' 429: $ref: '#/components/responses/TooManyRequests' 5XX: $ref: '#/components/responses/ServerError' default: $ref: '#/components/responses/UnknownError' /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 required: - chat_id - question - options properties: chat_id: anyOf: - type: integer - type: string message_thread_id: type: integer question: type: string options: type: array items: type: string 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 reply_to_message_id: type: integer allow_sending_without_reply: type: boolean 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 - question - options properties: chat_id: anyOf: - type: integer - type: string message_thread_id: type: integer question: type: string options: type: array items: type: string 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 reply_to_message_id: type: integer allow_sending_without_reply: type: boolean 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 - question - options properties: chat_id: anyOf: - type: integer - type: string message_thread_id: type: integer question: type: string options: type: array items: type: string 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 reply_to_message_id: type: integer allow_sending_without_reply: type: boolean reply_markup: anyOf: - $ref: '#/components/schemas/InlineKeyboardMarkup' - $ref: '#/components/schemas/ReplyKeyboardMarkup' - $ref: '#/components/schemas/ReplyKeyboardRemove' - $ref: '#/components/schemas/ForceReply' responses: 200: description: 'Request was successful, the result is returned.' content: application/json: schema: allOf: - $ref: '#/components/schemas/Success' - type: object properties: result: $ref: '#/components/schemas/Message' 400: $ref: '#/components/responses/BadRequest' 401: $ref: '#/components/responses/Unauthorized' 403: $ref: '#/components/responses/Forbidden' 404: $ref: '#/components/responses/NotFound' 409: $ref: '#/components/responses/Conflict' 429: $ref: '#/components/responses/TooManyRequests' 5XX: $ref: '#/components/responses/ServerError' default: $ref: '#/components/responses/UnknownError' /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 required: - chat_id properties: chat_id: anyOf: - type: integer - type: string message_thread_id: type: integer emoji: type: string default: 🎲 disable_notification: type: boolean protect_content: type: boolean reply_to_message_id: type: integer allow_sending_without_reply: type: boolean 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 properties: chat_id: anyOf: - type: integer - type: string message_thread_id: type: integer emoji: type: string default: 🎲 disable_notification: type: boolean protect_content: type: boolean reply_to_message_id: type: integer allow_sending_without_reply: type: boolean 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 properties: chat_id: anyOf: - type: integer - type: string message_thread_id: type: integer emoji: type: string default: 🎲 disable_notification: type: boolean protect_content: type: boolean reply_to_message_id: type: integer allow_sending_without_reply: type: boolean reply_markup: anyOf: - $ref: '#/components/schemas/InlineKeyboardMarkup' - $ref: '#/components/schemas/ReplyKeyboardMarkup' - $ref: '#/components/schemas/ReplyKeyboardRemove' - $ref: '#/components/schemas/ForceReply' responses: 200: description: 'Request was successful, the result is returned.' content: application/json: schema: allOf: - $ref: '#/components/schemas/Success' - type: object properties: result: $ref: '#/components/schemas/Message' 400: $ref: '#/components/responses/BadRequest' 401: $ref: '#/components/responses/Unauthorized' 403: $ref: '#/components/responses/Forbidden' 404: $ref: '#/components/responses/NotFound' 409: $ref: '#/components/responses/Conflict' 429: $ref: '#/components/responses/TooManyRequests' 5XX: $ref: '#/components/responses/ServerError' default: $ref: '#/components/responses/UnknownError' /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.\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 required: - chat_id - action properties: chat_id: anyOf: - type: integer - type: string message_thread_id: type: integer action: type: string application/x-www-form-urlencoded: schema: type: object required: - chat_id - action properties: chat_id: anyOf: - type: integer - type: string message_thread_id: type: integer action: type: string multipart/form-data: schema: type: object required: - chat_id - action properties: chat_id: anyOf: - type: integer - type: string message_thread_id: type: integer action: 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' /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/, where 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_post_messages: type: boolean can_edit_messages: 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_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_post_messages: type: boolean can_edit_messages: 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_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_post_messages: type: boolean can_edit_messages: 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_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' /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 required: - chat_id - message_id properties: chat_id: anyOf: - type: integer - type: string message_id: type: integer disable_notification: 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 disable_notification: 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 disable_notification: 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' /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 required: - chat_id properties: chat_id: anyOf: - type: integer - type: string message_id: type: integer application/x-www-form-urlencoded: schema: type: object required: - chat_id properties: chat_id: anyOf: - type: integer - type: string message_id: type: integer multipart/form-data: schema: type: object required: - chat_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' /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 (current name of the user for one-on-one conversations, current username of a user, group or channel, etc.). Returns a Chat 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/Chat' 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 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 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' /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' /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' /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.' post: requestBody: required: true content: application/json: schema: type: object properties: 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' disable_web_page_preview: type: boolean reply_markup: $ref: '#/components/schemas/InlineKeyboardMarkup' required: - text application/x-www-form-urlencoded: schema: type: object properties: 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' disable_web_page_preview: type: boolean reply_markup: $ref: '#/components/schemas/InlineKeyboardMarkup' required: - text multipart/form-data: schema: type: object properties: 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' disable_web_page_preview: type: boolean 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.' post: requestBody: content: application/json: schema: type: object properties: 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' reply_markup: $ref: '#/components/schemas/InlineKeyboardMarkup' application/x-www-form-urlencoded: schema: type: object properties: 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' reply_markup: $ref: '#/components/schemas/InlineKeyboardMarkup' multipart/form-data: schema: type: object properties: 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' 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." post: requestBody: required: true content: application/json: schema: type: object properties: 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: 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: 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: chat_id: anyOf: - type: integer - type: string message_id: type: integer inline_message_id: type: string latitude: type: number longitude: type: number 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: chat_id: anyOf: - type: integer - type: string message_id: type: integer inline_message_id: type: string latitude: type: number longitude: type: number 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: chat_id: anyOf: - type: integer - type: string message_id: type: integer inline_message_id: type: string latitude: type: number longitude: type: number 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: 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: 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: 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.' post: requestBody: content: application/json: schema: type: object properties: 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: 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: 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 required: - chat_id - message_id properties: chat_id: anyOf: - type: integer - type: string message_id: type: integer reply_markup: $ref: '#/components/schemas/InlineKeyboardMarkup' 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 reply_markup: $ref: '#/components/schemas/InlineKeyboardMarkup' multipart/form-data: schema: type: object required: - chat_id - message_id properties: chat_id: anyOf: - type: integer - type: string message_id: type: integer 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/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' /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 required: - chat_id - sticker properties: 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 reply_to_message_id: type: integer allow_sending_without_reply: type: boolean 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 - sticker properties: 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 reply_to_message_id: type: integer allow_sending_without_reply: type: boolean 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 - sticker properties: 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 reply_to_message_id: type: integer allow_sending_without_reply: type: boolean reply_markup: anyOf: - $ref: '#/components/schemas/InlineKeyboardMarkup' - $ref: '#/components/schemas/ReplyKeyboardMarkup' - $ref: '#/components/schemas/ReplyKeyboardRemove' - $ref: '#/components/schemas/ForceReply' responses: 200: description: 'Request was successful, the result is returned.' content: application/json: schema: allOf: - $ref: '#/components/schemas/Success' - type: object properties: result: $ref: '#/components/schemas/Message' 400: $ref: '#/components/responses/BadRequest' 401: $ref: '#/components/responses/Unauthorized' 403: $ref: '#/components/responses/Forbidden' 404: $ref: '#/components/responses/NotFound' 409: $ref: '#/components/responses/Conflict' 429: $ref: '#/components/responses/TooManyRequests' 5XX: $ref: '#/components/responses/ServerError' default: $ref: '#/components/responses/UnknownError' /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 and addStickerToSet 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 - sticker_format properties: user_id: type: integer name: type: string title: type: string stickers: type: array items: $ref: '#/components/schemas/InputSticker' sticker_format: type: string sticker_type: type: string needs_repainting: type: boolean application/x-www-form-urlencoded: schema: type: object required: - user_id - name - title - stickers - sticker_format properties: user_id: type: integer name: type: string title: type: string stickers: type: array items: $ref: '#/components/schemas/InputSticker' sticker_format: type: string sticker_type: type: string needs_repainting: type: boolean multipart/form-data: schema: type: object required: - user_id - name - title - stickers - sticker_format properties: user_id: type: integer name: type: string title: type: string stickers: type: array items: $ref: '#/components/schemas/InputSticker' sticker_format: type: string 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. The format of the added sticker must match the format of the other stickers in the set. Emoji sticker sets can have up to 200 stickers. Animated and video sticker sets can have up to 50 stickers. Static 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' /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 properties: name: type: string user_id: type: integer thumbnail: anyOf: - $ref: '#/components/schemas/InputFile' - type: string application/x-www-form-urlencoded: schema: type: object required: - name - user_id properties: name: type: string user_id: type: integer thumbnail: anyOf: - $ref: '#/components/schemas/InputFile' - type: string multipart/form-data: schema: type: object required: - name - user_id properties: name: type: string user_id: type: integer thumbnail: anyOf: - $ref: '#/components/schemas/InputFile' - 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 switch_pm_text: type: string switch_pm_parameter: type: string 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 switch_pm_text: type: string switch_pm_parameter: type: string 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 switch_pm_text: type: string switch_pm_parameter: 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' /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 - provider_token - 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 reply_to_message_id: type: integer allow_sending_without_reply: type: boolean reply_markup: $ref: '#/components/schemas/InlineKeyboardMarkup' application/x-www-form-urlencoded: schema: type: object required: - chat_id - title - description - payload - provider_token - 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 reply_to_message_id: type: integer allow_sending_without_reply: type: boolean reply_markup: $ref: '#/components/schemas/InlineKeyboardMarkup' multipart/form-data: schema: type: object required: - chat_id - title - description - payload - provider_token - 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 reply_to_message_id: type: integer allow_sending_without_reply: 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: $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 - provider_token - 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 - provider_token - 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 - provider_token - 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' /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.\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 required: - chat_id - game_short_name properties: chat_id: type: integer message_thread_id: type: integer game_short_name: type: string disable_notification: type: boolean protect_content: type: boolean reply_to_message_id: type: integer allow_sending_without_reply: type: boolean reply_markup: $ref: '#/components/schemas/InlineKeyboardMarkup' application/x-www-form-urlencoded: schema: type: object required: - chat_id - game_short_name properties: chat_id: type: integer message_thread_id: type: integer game_short_name: type: string disable_notification: type: boolean protect_content: type: boolean reply_to_message_id: type: integer allow_sending_without_reply: type: boolean reply_markup: $ref: '#/components/schemas/InlineKeyboardMarkup' multipart/form-data: schema: type: object required: - chat_id - game_short_name properties: chat_id: type: integer message_thread_id: type: integer game_short_name: type: string disable_notification: type: boolean protect_content: type: boolean reply_to_message_id: type: integer allow_sending_without_reply: 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: $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'