Overview
Flagging messages allows users to report inappropriate content to moderators or administrators. When a message is flagged, it appears in the CometChat Dashboard under Moderation > Flagged Messages for review.For a complete understanding of how flagged messages are reviewed and managed, see the Flagged Messages documentation.
Prerequisites
Before using the flag message feature:- Moderation must be enabled for your app in the CometChat Dashboard
- Flag reasons should be configured under Moderation > Advanced Settings
How It Works
Get Flag Reasons
Before flagging a message, retrieve the list of available flag reasons configured in your Dashboard:- Dart
Response
The response is a list ofFlagReason objects containing:
| Property | Type | Description |
|---|---|---|
| id | String | Unique identifier for the reason |
| title | String | Display text for the reason |
Flag a Message
To flag a message, use theflagMessage() method with the message ID and a FlagDetail object:
- Dart
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| messageId | int | Yes | The ID of the message to flag |
| flagDetail | FlagDetail | Yes | Contains flagging details |
| flagDetail.reasonId | String | Yes | ID of the flag reason (from getFlagReasons()) |
| flagDetail.remark | String | No | Additional context or explanation from the user |
Response
Complete Example
Here’s a complete implementation showing how to build a report message flow:- Dart