get_chat_history()

Client.get_chat_history()

Get messages from a chat history.

The messages are returned in reverse chronological order by default.

Usable by Users Bots
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).

  • limit (``int``, *optional*) – Limits the number of messages to be retrieved. By default, no limit is applied and all messages are returned.

  • offset (``int``, *optional*) – Sequential number of the first message to be returned. Negative values are also accepted and become useful in case you set offset_id or offset_date.

  • offset_id (``int``, *optional*) – Identifier of the first message to be returned. This parameter is deprecated and should not be used. Use min_id / max_id instead for proper filtering.

  • min_id (``int``, *optional*) – If a positive value was transferred, the method will return only messages with IDs more than min_id. Defaults to 0.

  • max_id (``int``, *optional*) – If a positive value was transferred, the method will return only messages with IDs less than max_id. Defaults to 0.

  • offset_date (:py:obj:`~datetime.datetime`, *optional*) – Pass a date as offset to retrieve only older messages starting from that date.

  • reverse (``bool``, *optional*) – Pass True to retrieve the messages in reversed order (from older to most recent). Defaults to False.

  • is_scheduled (``bool``, *optional*) – Whether to get scheduled messages. Defaults to False.

Returns:

``Generator`` (A generator yielding Message objects.)

Example

async for message in app.get_chat_history(chat_id):
    print(message.text)