get_messages()

Client.get_messages()

Get one or more messages from a chat by using message identifiers.

You can retrieve up to 200 messages at once.

Parameters
  • chat_id (int | str) – Unique identifier (int) or username (str) of the target chat. For your personal cloud (Saved Messages) you can simply use “me” or “self”. For a contact that exists in your Telegram address book you can use his phone number (str).

  • message_ids (iterable, optional) – Pass a single message identifier or a list of message ids (as integers) to get the content of the message themselves. Iterators and Generators are also accepted.

  • reply_to_message_ids (iterable, optional) – Pass a single message identifier or a list of message ids (as integers) to get the content of the previous message you replied to using this message. Iterators and Generators are also accepted. If message_ids is set, this argument will be ignored.

  • replies (int, optional) – The number of subsequent replies to get for each message. Pass 0 for no reply at all or -1 for unlimited replies. Defaults to 1.

Returns

Message | List of Message – In case message_ids was an integer, the single requested message is returned, otherwise, in case message_ids was an iterable, the returned value will be a list of messages, even if such iterable contained just a single element.

Example

# Get one message
app.get_messages("pyrogramchat", 51110)

# Get more than one message (list of messages)
app.get_messages("pyrogramchat", [44625, 51110])

# Get message by ignoring any replied-to message
app.get_messages(chat_id, message_id, replies=0)

# Get message with all chained replied-to messages
app.get_messages(chat_id, message_id, replies=-1)

# Get the replied-to message of a message
app.get_messages(chat_id, reply_to_message_ids=message_id)
Raises

ValueError – In case of invalid arguments.