Skip to main content
Who can delete: Message sender, Group admin, Group moderator Deleted fields: deletedAt (timestamp), deletedBy (user who deleted)
Deleting a message is straightforward. Receiving delete events 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 CometChat.delete(messageId:) with the message ID.
The deleted message object is returned with deletedAt (timestamp) and deletedBy (UID of deleter) fields set. The delete() method returns a BaseMessage object.
This is a soft delete — message content is still available on the object. Check deletedAt > 0 to identify deleted messages.

Real-time Message Delete Events

The onMessageDeleted callback receives a BaseMessage object with the deletedAt and deletedBy fields set.

Missed Message Delete Events

When fetching message history, deleted messages have deletedAt and deletedBy fields set. Additionally, an Action message is added to history indicating the deletion. The Action object contains:
  • actiondeleted
  • actionOn — The deleted message object
  • actionBy — User who deleted the message
  • actionFor — Receiver (User or Group)
You must be the message sender or a group admin/moderator to delete a message.

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