delete_messages()#
- Client.delete_messages()#
Delete messages, including service messages, with the following limitations:
For BOTS Only: A message can only be deleted if it was sent less than 48 hours ago.
Service messages about a supergroup, channel, or forum topic creation can’t be deleted.
A dice message in a private chat can only be deleted if it was sent more than 24 hours ago.
Client
can delete outgoing messages in private chats, groups, and supergroups.Client
can delete incoming messages in private chats.Client
granted can_post_messages permissions can delete outgoing messages in channels.If the
Client
is an administrator of a group, it can delete any message there.If the
Client
has can_delete_messages permission in a supergroup or a channel, it can delete any message there.
Use this method to delete multiple messages simultaneously. If some of the specified messages can’t be found, they are skipped.
Usable by ✅ Users ✅ BotsPlease be aware about using the correct Message Identifiers, specifically when using the
is_scheduled
parameter.- 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 (
int
| Iterable ofint
) – An iterable of message identifiers to delete (integers) or a single message id.revoke (
bool
, optional) – Deletes messages on both parts. This is only for private cloud chats and normal groups, messages on channels and supergroups are always revoked (i.e.: deleted for everyone). Defaults to True.is_scheduled (
bool
, optional) – True, if the specifiedmessage_ids
refers to a scheduled message. Defaults to False.
- Returns:
int
– Amount of affected messages
Example
# Delete one message await app.delete_messages(chat_id, message_id) # Delete multiple messages at once await app.delete_messages(chat_id, list_of_message_ids) # Delete messages only on your side (without revoking) await app.delete_messages(chat_id, message_id, revoke=False)