Hide navigation sidebar
Hide table of contents sidebar
PTB has undergone significant changes in v20. Please read the documentation carefully and also check out the transition guide in the wiki.
Back to top
Toggle table of contents sidebar

# InlineQueryResultVideo

class telegram.InlineQueryResultVideo(id, video_url, mime_type, thumbnail_url, title, caption=None, video_width=None, video_height=None, video_duration=None, description=None, reply_markup=None, input_message_content=None, parse_mode=None, caption_entities=None, *, api_kwargs=None)

  Bases: `telegram.InlineQueryResult`

  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.

  Note

  If an InlineQueryResultVideo message contains an embedded video (e.g., YouTube), you must replace its content using `input_message_content`.

  Use In

  - `telegram.Bot.answer_inline_query()`

  - `telegram.Bot.answer_web_app_query()`

  See also

  Working with Files and Media

  Changed in version 20.5: Removed the deprecated argument and attribute `thumb_url`.

  Parameters:

    - id (`str`) – Unique identifier for this result, `1`- `64` Bytes.

    - video_url (`str`) – A valid URL for the embedded video player or video file.

    - mime_type (`str`) – Mime type of the content of video url, “text/html” or “video/mp4”.

    - thumbnail_url (`str`, optional) –

      URL of the thumbnail (JPEG only) for the video.

      Warning

      The Bot API does not define this as an optional argument. It is formally optional for backwards compatibility with the deprecated `thumb_url`. If you pass neither `thumbnail_url` nor `thumb_url`, `ValueError` will be raised.

      New in version 20.2.

    - title (`str`, optional) –

      Title for the result.

      Warning

      The Bot API does not define this as an optional argument. It is formally optional to ensure backwards compatibility of `thumbnail_url` with the deprecated `thumb_url`, which required that `thumbnail_url` become optional. `TypeError` will be raised if no `title` is passed.

    - caption (`str`, optional) – Caption of the video to be sent, 0-`1024` characters after entities parsing.

    - parse_mode (`str`, optional) – Mode for parsing entities. See `telegram.constants.ParseMode` and formatting options for more details.

    - caption_entities (Sequence[`telegram.MessageEntity`], optional) –

      Sequence of special entities that appear in the caption, which can be specified instead of `parse_mode`.

      Changed in version 20.0: Accepts any `collections.abc.Sequence` as input instead of just a list. The input is converted to a tuple.

    - video_width (`int`, optional) – Video width.

    - video_height (`int`, optional) – Video height.

    - video_duration (`int`, optional) – Video duration in seconds.

    - description (`str`, optional) – Short description of the result.

    - reply_markup (`telegram.InlineKeyboardMarkup`, optional) – Inline keyboard attached to the message.

    - input_message_content (`telegram.InputMessageContent`, optional) – Content of the message to be sent instead of the video. This field is required if `InlineQueryResultVideo` is used to send an HTML-page as a result (e.g., a YouTube video).

  Raises:

    - ValueError – If neither `thumbnail_url` nor `thumb_url` is supplied or if both are supplied and are not equal.

    - TypeError – If no `title` is passed.

  type

    `'video'`.

    Type:

      `str`

  id

    Unique identifier for this result, `1`- `64` Bytes.

    Type:

      `str`

  video_url

    A valid URL for the embedded video player or video file.

    Type:

      `str`

  mime_type

    Mime type of the content of video url, “text/html” or “video/mp4”.

    Type:

      `str`

  thumbnail_url

    URL of the thumbnail (JPEG only) for the video.

    New in version 20.2.

    Type:

      `str`

  title

    Title for the result.

    Type:

      `str`

  caption

    Optional. Caption of the video to be sent, 0-`1024` characters after entities parsing.

    Type:

      `str`

  parse_mode

    Optional. Mode for parsing entities. See `telegram.constants.ParseMode` and formatting options for more details.

    Type:

      `str`

  caption_entities

    Optional. Tuple of special entities that appear in the caption, which can be specified instead of `parse_mode`.

    Changed in version 20.0:

    - This attribute is now an immutable tuple.

    - This attribute is now always a tuple, that may be empty.

    Type:

      Tuple[`telegram.MessageEntity`]

  video_width

    Optional. Video width.

    Type:

      `int`

  video_height

    Optional. Video height.

    Type:

      `int`

  video_duration

    Optional. Video duration in seconds.

    Type:

      `int`

  description

    Optional. Short description of the result.

    Type:

      `str`

  reply_markup

    Optional. Inline keyboard attached to the message.

    Type:

      `telegram.InlineKeyboardMarkup`

  input_message_content

    Optional. Content of the message to be sent instead of the video. This field is required if `InlineQueryResultVideo` is used to send an HTML-page as a result (e.g., a YouTube video).

    Type:

      `telegram.InputMessageContent`