InputMediaDocument

class telegram.InputMediaDocument(media, caption=None, parse_mode=None, disable_content_type_detection=None, caption_entities=None, filename=None, thumbnail=None, *, api_kwargs=None)[source]

Bases: telegram.InputMedia

Represents a general file to be sent.

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

Parameters:
  • media (str | file object | bytes | pathlib.Path | telegram.Document) –

    File to send. Pass a file_id as String to send a file that exists on the Telegram servers (recommended), pass an HTTP URL as a String for Telegram to get a file from the Internet, or upload a new one. To upload a file, you can either pass a file object (e.g. open("filename", "rb")) or the file contents as bytes. If the bot is running in local_mode, passing the path of the file (as string or pathlib.Path object) is supported as well. Lastly you can pass an existing telegram.Document object to send.

    Changed in version 13.2: Accept bytes as input.

  • filename (str, optional) –

    Custom file name for the document, when uploading a new file. Convenience parameter, useful e.g. when sending files generated by the tempfile module.

    New in version 13.1.

  • caption (str, optional) – Caption of the document 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.

  • disable_content_type_detection (bool, optional) – Disables automatic server-side content type detection for files uploaded using multipart/form-data. Always True, if the document is sent as part of an album.

  • thumbnail (file object | bytes | pathlib.Path | str, optional) –

    Thumbnail of the file sent; can be ignored if thumbnail generation for the file is supported server-side. The thumbnail should be in JPEG format and less than 200 kB in size. A thumbnail’s width and height should not exceed 320. Ignored if the file is not uploaded using multipart/form-data. Thumbnails can’t be reused and can be only uploaded as a new file. To upload a file, you can either pass a file object (e.g. open("filename", "rb")) or the file contents as bytes. If the bot is running in local_mode, passing the path of the file (as string or pathlib.Path object) is supported as well.

    New in version 20.2.

type[source]

'document'.

Type:

str

media[source]

File to send.

Type:

str | telegram.InputFile

caption[source]

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

Type:

str

parse_mode[source]

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

Type:

str

caption_entities[source]

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]

disable_content_type_detection[source]

Optional. Disables automatic server-side content type detection for files uploaded using multipart/form-data. Always True, if the document is sent as part of an album.

Type:

bool

thumbnail[source]

Optional. Thumbnail of the file sent; can be ignored if thumbnail generation for the file is supported server-side. The thumbnail should be in JPEG format and less than 200 kB in size. A thumbnail’s width and height should not exceed 320. Ignored if the file is not uploaded using multipart/form-data. Thumbnails can’t be reused and can be only uploaded as a new file.

New in version 20.2.

Type:

telegram.InputFile