BaseMessage class Null safety

Represents base class for messages.

Available Extensions


BaseMessage({Map<String, dynamic>? parentMessage, required bool isPinnedMessage, String? requestId, int messageId = 0, required String message, required MessageSendingStatus? sendingStatus, Sender? sender, required String channelUrl, required ChannelType channelType, List<User> mentionedUsers = const <User>[], MentionType? mentionType, List<String>? mentionedUserIds = const <String>[], List<String>? requestedMentionUserIds, int createdAt = 0, int updatedAt = 0, bool replyToChannel = false, int? parentMessageId, String? parentMessageText, ThreadInfo? threadInfo, List<MessageMetaArray>? metaArrays, String? customType, int? messageSurvivalSeconds, bool forceUpdateLastMessage = false, bool isSilent = false, int? errorCode, bool isOperatorMessage = false, String? data, OGMetaData? ogMetaData, List<Reaction>? reactions = const <Reaction>[], ScheduledInfo? scheduledInfo, Map<String, dynamic> extendedMessage = const {}})
default constructor
BaseMessage.fromJson(Map<String, dynamic> json)
Map json object


channelType ChannelType
Channel type of this message
read / write
channelUrl String
Channel url of this message.
createdAt int
Message creation time in millisecond(UTC)
customType String?
Custom message type
data String?
data for this message
read / write
errorCode int?
The error code of this message. This value generated only when message send fails.
read / write
extendedMessage Map<String, dynamic>
Only featured in GroupChannel Message Template used for Sendbird UI KIT
read / write
forceUpdateLastMessage bool
True if this message should update last message of its channel
hashCode int
The hash code for this object.
isOperatorMessage bool
True if this message was created by an operator.
isPinnedMessage bool
Pinned Message
read / write
isSilent bool
True if this message won't affect unread message count / mention count
mentionedUserIds List<String>?
Mention to specific users. If sends a message with this field, the message will be arrived to mentioned users.
mentionedUsers List<User>
The list of users who was mentioned together with this message.
read / write
mentionType MentionType?
Mention type that this message uses
message String
Message text.
messageId int
Unique message ID.
messageSurvivalSeconds int?
Message disappear in seconds, default is -1 and won't disappear
metaArrays List<MessageMetaArray>?
Gets an array of meta arrays sorted by chronological order. current does not support backward compatibility
read / write
ogMetaData OGMetaData?
Open graph information in this message. Nullable
parentMessage BaseMessage?
Retrieve current message's parent information
read / write
parentMessageId int?
The unique ID of the parent message. If the message object is a parent message or a single message without any reply, the value of this property is 0. If the object is a reply, the value is the unique ID of its parent message.
parentMessageText String?
The written text of the message object’s parent message. If the message object is a parent message, the value of this property is null. If the object is a reply to a parent message and the type of the parent message is UserMessage, the value is message. If it is FileMessage, the value is the name of the uploaded file.
reactions List<Reaction>?
reactions for this message
read / write
replyToChannel bool
Option to reply to channel. The default is false
read / write
requestedMentionUserIds List<String>?
Represents target user ids to mention when success to send this message. This value is valid only when the message is a pending message or failed message. If the message is a succeeded message, see mentionedUserIds
requestId String?
Request ID for checking ACK.
runtimeType Type
A representation of the runtime type of the object.
scheduledInfo ScheduledInfo?
Scheduled message information
read / write
sender Sender?
Sender of this message
read / write
sendingStatus MessageSendingStatus?
Represents the dispatch state of this message. If this message is not dispatched completely to the Sendbird server, the value is pending. If failed to send the message, the value is failed. And if success to send the message, the value is succeeded.
read / write
threadInfo ThreadInfo?
The thread info that belongs to this message object.
read / write
updatedAt int
Message update time in millisecond(UTC).


applyReactionEvent(ReactionEvent event) bool
Applies ReactionEvent to this message.
applyThreadInfoUpdateEvent(ThreadInfoUpdateEvent event) bool
Applies ThreadInfoUpdateEvent event to this message.
getMetaArrays(List<String> keys) List<MessageMetaArray>
Retreives list of MessageMetaArray with given keys
getThreadedMessagesByTimestamp(int timestamp, ThreadedMessageListParams params) Future<ThreadedMessageResponse>
Retrieves threaded messages (replies) on this message with timestamp and params.
isResendable() bool
Returns true if this message can be resend.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed.
toJson() Map<String, dynamic>
toString() String
A string representation of this object.


operator ==(Object other) bool
The equality operator.

Static Methods

getMessage(MessageRetrievalParams params) Future<BaseMessage>
Retrieves a BaseMessage with given MessageRetrievalParams.
getScheduledMessage(ScheduledMessageRetrievalParams params, {OnMessageCallback? callback}) Future<BaseMessage>
Retrieve Scheduled Message
msgFromJson<T extends BaseMessage>(Map<String, dynamic> json, {ChannelType? channelType, String? type}) → T?