Skip to content
Back to top
View this page

# 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, show_caption_above_media=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`.

  See also

  Working with Files and Media

  Use In

  - `telegram.Bot.answer_inline_query()`

  - `telegram.Bot.answer_web_app_query()`

  - `telegram.Bot.save_prepared_inline_message()`

  Changed in version 20.5: Removed the deprecated argument and attribute `thumb_url` which made thumbnail_url mandatory.

  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.

      Added in version 20.2.

      Changed in version 20.5: Removal of the deprecated argument `thumb_url` made `thumbnail_url` mandatory.

    - title (`str`) – Title for the result.

    - 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` | `datetime.timedelta`, optional) –

      Video duration in seconds.

      Changed in version v22.2: `datetime.timedelta` objects are accepted in addition to plain `int` values.

    - 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).

    - show_caption_above_media (`bool`, optional) –

      Pass `True`, if the caption must be shown above the message media.

      Added in version 21.3.

  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.

    Added 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.

    Deprecated since version v22.2: In a future major version this attribute will be of type `datetime.timedelta`. You can opt-in early by setting PTB_TIMEDELTA=true or `PTB_TIMEDELTA=1` as an environment variable.

    Type:

      `int` | `datetime.timedelta`

  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`

  show_caption_above_media

    Optional. `True`, if the caption must be shown above the message media.

    Added in version 21.3.

    Type:

      `bool`