Skip to main content
While deleting a message is straightforward, receiving events for deleted messages with CometChat has two parts:
  1. Adding a listener for real-time deletes when your app is running
  2. Fetching missed deletes when your app was offline

Delete a Message

Use deleteMessage() with the message ID.
The deleted message object is returned with deletedAt (timestamp) and deletedBy (UID of deleter) fields set. The deleteMessage() method returns a BaseMessage object. Relevant fields to access on the returned message: Message editing in CometChat is controlled by -

Real-time Message Delete Events

Use onMessageDeleted in MessageListener to receive real-time delete events.
The onMessageDeleted callback receives a BaseMessage object with the deletedAt and deletedBy fields set. Relevant fields to access on the returned message:

Missed Message Delete Events

When fetching message history, deleted messages have deletedAt and deletedBy fields set. Additionally, an Action message is created when a message is deleted. The Action object contains:
  • actiondeleted
  • actionOn — Deleted message object
  • actionBy — User who deleted the message
  • actionFor — Receiver (User/Group)
You must be the message sender or a group admin/moderator to delete a message.
Always remove message listeners when they’re no longer needed to prevent memory leaks.

Next Steps

Edit a Message

Edit sent messages in conversations

Send Messages

Send text, media, and custom messages

Receive Messages

Listen for incoming messages in real-time

Flag a Message

Report inappropriate messages