Skip to main content

Documentation Index

Fetch the complete documentation index at: https://cometchat-22654f5b-release-unreal-docs.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

This page is a single-stop reference for every public API surface in the CometChat Unreal SDK plugin.

Subsystem Methods

These are called directly on UCometChatSubsystem.
MethodCategoryParametersReturnsDescription
ConfigureConfigAppId: FString, Region: FStringvoidInitialize the SDK with your CometChat credentials. Must be called before Login.
ConfigureWithSettingsConfigAppId: FString, Settings: FCometChatAppSettingsvoidInitialize with advanced settings (custom hosts, subscription type, manual connection).
IsLoggedInAuthboolReturns true if a user is currently authenticated.
GetLoggedInUserAuthFCometChatUserReturns the currently logged-in user’s profile.
GetConnectionStatusConnectionECometChatConnectionStateReturns the current WebSocket connection state.
StartTypingTypingIndicator: FCometChatTypingIndicatorvoidNotify that the local user started typing.
EndTypingTypingIndicator: FCometChatTypingIndicatorvoidNotify that the local user stopped typing.
SendTransientMessageMessagingMessage: FCometChatTransientMessagevoidSend an ephemeral message that is not persisted.
ShutdownLifecyclevoidTear down the SDK and release all resources.

Async Action Nodes

Each node is a latent Blueprint action with On Success and On Failure output pins. In C++, create via the static factory method, bind delegates, and call Activate().

Authentication

NodeParametersSuccess OutputDescription
Login AsyncUid: FString, AuthKey: FStringAuthenticate a user with Auth Key.
Login With Auth Token AsyncAuthToken: FStringAuthenticate a user with a pre-generated Auth Token.
Logout AsyncLog out the current user and disconnect.

Messaging

NodeParametersSuccess OutputDescription
Send Message AsyncReceiverUid: FString, Text: FStringFCometChatMessageSend a 1:1 text message.
Send Group Message AsyncGuid: FString, Text: FStringFCometChatMessageSend a text message to a group.
Get Messages AsyncUid: FString, Limit: int32TArray<FCometChatMessage>Fetch message history for a 1:1 conversation.
Get Group Messages AsyncGuid: FString, Limit: int32, BeforeMessageId: int32TArray<FCometChatMessage>, FCometChatPaginationFetch paginated message history for a group.
Fetch Messages AsyncRequest: FCometChatMessagesRequestTArray<FCometChatMessage>Fetch messages with full filter/pagination control.

Users

NodeParametersSuccess OutputDescription
Get User AsyncUid: FStringFCometChatUserFetch a user’s profile.
Fetch Users AsyncRequest: FCometChatUsersRequestTArray<FCometChatUser>Fetch users with search, filters, and pagination.

Groups

NodeParametersSuccess OutputDescription
Create Group AsyncName: FString, MemberIds: TArray<FString>FCometChatGroupCreate a new group with initial members.
Join Group AsyncGuid: FStringJoin an existing group.
Leave Group AsyncGuid: FStringLeave a group.
Fetch Groups AsyncRequest: FCometChatGroupsRequestTArray<FCometChatGroup>Fetch groups with search, filters, and pagination.

Conversations

NodeParametersSuccess OutputDescription
Fetch Conversations AsyncRequest: FCometChatConversationsRequestTArray<FCometChatConversation>Fetch conversations with filters and pagination.

Connection

NodeParametersSuccess OutputDescription
Connect AsyncManually establish the WebSocket connection.
Disconnect AsyncManually close the WebSocket connection.
Ping AsyncPing the server to verify connectivity.

Moderation

NodeParametersSuccess OutputDescription
Flag Message AsyncMessageId: FString, FlagDetail: FCometChatFlagDetailFlag a message for moderation.
Get Flag Reasons AsyncTArray<FCometChatFlagReason>Fetch available flag/report reasons.

Real-Time Delegates

All delegates are UPROPERTY(BlueprintAssignable) on UCometChatSubsystem. They fire on the Game Thread.

MessageListener

DelegatePayload TypeFires When
OnTextMessageReceivedFCometChatMessageText message arrives
OnMediaMessageReceivedFCometChatMessageMedia message arrives
OnCustomMessageReceivedFCometChatMessageCustom message arrives
OnInteractiveMessageReceivedFCometChatMessageInteractive message arrives
OnInteractionGoalCompletedFCometChatInteractionReceiptInteraction goal completed
OnTypingStartedFCometChatTypingIndicatorUser starts typing
OnTypingEndedFCometChatTypingIndicatorUser stops typing
OnMessagesDeliveredFCometChatMessageReceiptMessages delivered
OnMessagesReadFCometChatMessageReceiptMessages read
OnMessagesDeliveredToAllFCometChatMessageReceiptMessages delivered to all
OnMessagesReadByAllFCometChatMessageReceiptMessages read by all
OnMessageEditedFCometChatMessageMessage edited
OnMessageDeletedFCometChatMessageMessage deleted
OnTransientMessageReceivedFCometChatTransientMessageTransient message arrives
OnMessageReactionAddedFCometChatReactionEventReaction added
OnMessageReactionRemovedFCometChatReactionEventReaction removed
OnMessageModeratedFCometChatMessageMessage moderation status changes
OnAIAssistantMessageReceivedFCometChatMessageAI assistant message
OnAIToolResultReceivedFCometChatMessageAI tool result
OnAIToolArgumentsReceivedFCometChatMessageAI tool arguments

UserListener

DelegatePayload TypeFires When
OnUserOnlineFCometChatUserUser comes online
OnUserOfflineFCometChatUserUser goes offline

GroupListener

DelegatePayload TypeFires When
OnGroupMemberJoinedFCometChatAction, FCometChatUser, FCometChatGroupMember joins
OnGroupMemberLeftFCometChatAction, FCometChatUser, FCometChatGroupMember leaves
OnGroupMemberKickedFCometChatAction, FCometChatUser, FCometChatUser, FCometChatGroupMember kicked
OnGroupMemberBannedFCometChatAction, FCometChatUser, FCometChatUser, FCometChatGroupMember banned
OnGroupMemberUnbannedFCometChatAction, FCometChatUser, FCometChatUser, FCometChatGroupMember unbanned
OnGroupMemberScopeChangedFCometChatScopeChangeEventMember scope changed
OnMemberAddedToGroupFCometChatAction, FCometChatUser, FCometChatUser, FCometChatGroupMember added

ConnectionListener

DelegatePayload TypeFires When
OnConnectedWebSocket connected
OnConnectingAttempting to connect
OnDisconnectedWebSocket disconnected
OnFeatureThrottledFeature rate-limited
OnConnectionErrorFCometChatErrorConnection error

LoginListener

DelegatePayload TypeFires When
OnLoginSuccessFCometChatUserLogin succeeds
OnLoginFailureFCometChatErrorLogin fails
OnLogoutSuccessLogout succeeds
OnLogoutFailureFCometChatErrorLogout fails

AIAssistantListener

DelegatePayload TypeFires When
OnAIAssistantEventFCometChatAIAssistantEventAI assistant event

Structs

FCometChatUser

PropertyTypeDescription
UidFStringUnique user identifier
NameFStringDisplay name
AvatarUrlFStringURL to avatar image
StatusFStringCurrent status text
RoleFStringUser role
MetadataFStringCustom metadata JSON
LinkFStringProfile link
StatusMessageFStringStatus message
LastActiveAtint64Unix timestamp of last activity
bHasBlockedMeboolWhether this user has blocked the logged-in user
bBlockedByMeboolWhether the logged-in user has blocked this user
TagsTArray<FString>User tags
DeactivatedAtint64Unix timestamp of deactivation (0 if active)

FCometChatMessage

PropertyTypeDescription
IdFStringUnique message identifier
MuidFStringClient-generated unique ID
SenderUidFStringUID of the sender
ReceiverUidFStringUID of the receiver (user or group)
TextFStringMessage body
SentAtint64Unix timestamp when sent
TypeFStringtext, image, video, audio, file, custom
CategoryFStringmessage, action, call, custom
ReceiverTypeFStringuser or group
ConversationIdFStringConversation identifier
SenderNameFStringSender’s display name
SenderAvatarFStringSender’s avatar URL
UpdatedAtint64Unix timestamp of last update
MetadataFStringCustom metadata JSON
DeliveredAtint64Delivery timestamp
ReadAtint64Read timestamp
DeletedAtint64Deletion timestamp
EditedAtint64Edit timestamp
DeletedByFStringUID of user who deleted
EditedByFStringUID of user who edited
ParentMessageIdint64Parent message ID (for threads)
ReplyCountint32Number of replies
UnreadRepliesCountint32Number of unread replies
MentionedUsersTArray<FCometChatUser>Users mentioned in this message
bHasMentionedMeboolWhether the logged-in user is mentioned
ReactionsTArray<FCometChatReactionCount>Reaction counts
AttachmentFCometChatAttachmentFile attachment (if media message)
CaptionFStringMedia caption
CustomDataFStringCustom data JSON
SubTypeFStringMessage sub-type
TagsTArray<FString>Message tags
ModerationStatusECometChatModerationStatusModeration status

FCometChatGroup

PropertyTypeDescription
GuidFStringUnique group identifier
NameFStringGroup display name
DescriptionFStringGroup description
TypeFStringpublic, private, or password
IconFStringGroup icon URL
OwnerFStringUID of the group owner
MetadataFStringCustom metadata JSON
CreatedAtint64Creation timestamp
UpdatedAtint64Last update timestamp
bHasJoinedboolWhether the logged-in user has joined
JoinedAtint64When the logged-in user joined
ScopeFStringLogged-in user’s scope (admin, moderator, participant)
MembersCountint32Number of members
TagsTArray<FString>Group tags
bIsBannedFromGroupboolWhether the logged-in user is banned

FCometChatConversation

PropertyTypeDescription
ConversationIdFStringUnique conversation identifier
ConversationTypeFStringuser or group
LastMessageFCometChatMessageMost recent message
ConversationWithUserFCometChatUserThe other user (if 1:1)
ConversationWithGroupFCometChatGroupThe group (if group conversation)
UnreadMessageCountint32Number of unread messages
UpdatedAtint64Last update timestamp
TagsTArray<FString>Conversation tags
UnreadMentionsCountint32Number of unread mentions
LastReadMessageIdint64ID of last read message
LatestMessageIdint64ID of latest message

FCometChatTransientMessage

PropertyTypeDescription
ReceiverIdFStringReceiver UID or GUID
ReceiverTypeFStringuser or group
DataFStringCustom data payload (JSON)
SenderFCometChatUserThe sender

FCometChatMessageReceipt

PropertyTypeDescription
MessageIdFStringThe message this receipt is for
SenderFCometChatUserUser who triggered the receipt
ReceiverTypeFStringuser or group
ReceiverIdFStringReceiver UID or GUID
Timestampint64Receipt timestamp
ReceiptTypeFStringdelivered or read
DeliveredAtint64Delivery timestamp
ReadAtint64Read timestamp

FCometChatTypingIndicator

PropertyTypeDescription
ReceiverIdFStringReceiver UID or GUID
ReceiverTypeFStringuser or group
MetadataFStringOptional metadata JSON
SenderFCometChatUserThe user who is typing

FCometChatReactionEvent

PropertyTypeDescription
ReactionFStringThe reaction emoji/string
ReceiverIdFStringReceiver UID or GUID
ReceiverTypeFStringuser or group
ConversationIdFStringConversation identifier
ParentMessageIdint64Parent message ID
MessageFCometChatMessageThe message that was reacted to

FCometChatReactionCount

PropertyTypeDescription
ReactionFStringThe reaction emoji/string
Countint32Number of times this reaction was used
bReactedByMeboolWhether the logged-in user reacted

FCometChatAttachment

PropertyTypeDescription
ExtensionFStringFile extension
MimeTypeFStringMIME type
NameFStringFile name
Sizeint64File size in bytes
UrlFStringDownload URL

FCometChatAction

PropertyTypeDescription
BaseMessageFCometChatMessageUnderlying message
ActionFStringAction type
ActionByFCometChatUserUser who performed the action
ActionOnFCometChatUserUser the action was performed on
ActionForFStringTarget identifier
OldScopeFStringPrevious scope (for scope changes)
NewScopeFStringNew scope (for scope changes)

FCometChatGroupMember

PropertyTypeDescription
UserFCometChatUserThe member’s user profile
ScopeFStringMember scope (admin, moderator, participant)
JoinedAtint64When the member joined

FCometChatScopeChangeEvent

PropertyTypeDescription
ActionFCometChatActionThe action details
UpdatedByFCometChatUserUser who changed the scope
UpdatedUserFCometChatUserUser whose scope was changed
ScopeChangedToFStringNew scope value
ScopeChangedFromFStringPrevious scope value
GroupFCometChatGroupThe group where scope changed

FCometChatInteractionReceipt

PropertyTypeDescription
MessageIdFStringMessage ID
SenderFCometChatUserUser who interacted
ReceiverTypeFStringuser or group
ReceiverIdFStringReceiver UID or GUID
ElementIdFStringInteractive element ID
InteractedAtint64Interaction timestamp

FCometChatFlagDetail

PropertyTypeDescription
ReasonIdFStringID of the flag reason
RemarkFStringOptional remark from the reporter

FCometChatFlagReason

PropertyTypeDescription
IdFStringUnique reason identifier
NameFStringDisplay name
DescriptionFStringDetailed description
CreatedAtint64Creation timestamp
UpdatedAtint64Last update timestamp

FCometChatAIAssistantEvent

PropertyTypeDescription
EventTypeFStringType of AI event
DataFStringEvent data payload
ConversationIdFStringConversation identifier
SenderUidFStringSender UID

FCometChatError

PropertyTypeDescription
CodeFStringError code
MessageFStringHuman-readable error message
DetailsFStringAdditional error details

FCometChatAppSettings

PropertyTypeDescription
RegionFStringApp region (us or eu)
SubscriptionTypeFStringSubscription type for presence
RolesTArray<FString>Roles for presence subscription
AdminHostFStringCustom admin host URL
ClientHostFStringCustom client host URL
bAutoEstablishSocketConnectionboolAuto-connect WebSocket on login (default: true)

FCometChatPagination

PropertyTypeDescription
Totalint32Total items available
Countint32Items returned in this page
PerPageint32Page size requested
CurrentPageint32Current page number
TotalPagesint32Total pages available
HasMoreboolWhether more pages exist
NextCursorint32Cursor for next page

Request Builder Structs

FCometChatUsersRequest

PropertyTypeDefaultDescription
Limitint3230Max results per page
SearchKeywordFStringSearch by name/UID
SearchInTArray<FString>Fields to search in
UserStatusFStringFilter by status (online, offline)
bHideBlockedUsersboolfalseExclude blocked users
bFriendsOnlyboolfalseOnly show friends
RolesTArray<FString>Filter by roles
TagsTArray<FString>Filter by tags
bWithTagsboolfalseInclude tags in response
UIDsTArray<FString>Fetch specific UIDs
SortByFStringSort field
SortOrderFStringasc or desc
Pageint320Page number

FCometChatGroupsRequest

PropertyTypeDefaultDescription
Limitint3230Max results per page
SearchKeywordFStringSearch by group name
bJoinedOnlyboolfalseOnly groups the user has joined
TagsTArray<FString>Filter by tags
bWithTagsboolfalseInclude tags in response
Pageint320Page number

FCometChatMessagesRequest

PropertyTypeDefaultDescription
Limitint3230Max results per page
UIDFStringFetch messages for this user (1:1)
GUIDFStringFetch messages for this group
MessageIdint64-1Fetch messages before this ID
Timestampint64-1Fetch messages before this timestamp
bUnreadboolfalseOnly unread messages
bHideMessagesFromBlockedUsersboolfalseHide blocked user messages
SearchKeywordFStringSearch message text
CategoriesTArray<FString>Filter by categories
TypesTArray<FString>Filter by types
ParentMessageIdint64-1Fetch thread replies
bHideRepliesboolfalseHide thread replies
bHideDeletedboolfalseHide deleted messages
TagsTArray<FString>Filter by tags
bWithTagsboolfalseInclude tags in response

FCometChatConversationsRequest

PropertyTypeDefaultDescription
Limitint3230Max results per page
ConversationTypeFStringuser or group
bWithUserAndGroupTagsboolfalseInclude user/group tags
TagsTArray<FString>Filter by conversation tags
bWithTagsboolfalseInclude tags in response
UserTagsTArray<FString>Filter by user tags
GroupTagsTArray<FString>Filter by group tags
bIncludeBlockedUsersboolfalseInclude blocked users
SearchKeywordFStringSearch conversations
bUnreadboolfalseOnly unread conversations
Pageint320Page number

FCometChatGroupMembersRequest

PropertyTypeDefaultDescription
GUIDFStringGroup to fetch members for
Limitint3230Max results per page
SearchKeywordFStringSearch by member name
ScopesTArray<FString>Filter by scope
StatusFStringFilter by status
Pageint320Page number

FCometChatBannedMembersRequest

PropertyTypeDefaultDescription
GUIDFStringGroup to fetch banned members for
Limitint3230Max results per page
SearchKeywordFStringSearch by name
ScopesTArray<FString>Filter by scope
Pageint320Page number

FCometChatBlockedUsersRequest

PropertyTypeDefaultDescription
Limitint3230Max results per page
SearchKeywordFStringSearch by name
DirectionFStringblockedByMe or hasBlockedMe
Pageint320Page number

FCometChatReactionsRequest

PropertyTypeDefaultDescription
Limitint3210Max results per page
MessageIdint64-1Message to fetch reactions for
ReactionFStringFilter by specific reaction

Enums

ECometChatConnectionState

ValueDescription
ConnectedWebSocket is active
ConnectingSDK is attempting to connect
DisconnectedWebSocket is closed
FeatureThrottledA feature is being rate-limited

ECometChatPresenceStatus

ValueDescription
OnlineUser is currently active
OfflineUser is not connected
AwayUser is connected but idle

ECometChatModerationStatus

ValueDescription
UnmoderatedMessage has not been moderated
PendingMessage is pending moderation review
ApprovedMessage has been approved
DisapprovedMessage has been rejected

C++ Header Includes

When working in C++, here are the headers you’ll need:
// Subsystem (always needed — includes all struct/enum definitions)
#include "CometChatSubsystem.h"

// Async action nodes (include as needed)
#include "AsyncActions/CometChatLoginAction.h"
#include "AsyncActions/CometChatLoginWithAuthTokenAction.h"
#include "AsyncActions/CometChatLogoutAction.h"
#include "AsyncActions/CometChatSendMessageAction.h"
#include "AsyncActions/CometChatSendGroupMessageAction.h"
#include "AsyncActions/CometChatGetMessagesAction.h"
#include "AsyncActions/CometChatGetGroupMessagesAction.h"
#include "AsyncActions/CometChatGetUserAction.h"
#include "AsyncActions/CometChatCreateGroupAction.h"
#include "AsyncActions/CometChatJoinGroupAction.h"
#include "AsyncActions/CometChatLeaveGroupAction.h"
#include "AsyncActions/CometChatFetchUsersAction.h"
#include "AsyncActions/CometChatFetchGroupsAction.h"
#include "AsyncActions/CometChatFetchConversationsAction.h"
#include "AsyncActions/CometChatFetchMessagesAction.h"
#include "AsyncActions/CometChatConnectAction.h"
#include "AsyncActions/CometChatDisconnectAction.h"
#include "AsyncActions/CometChatPingAction.h"
#include "AsyncActions/CometChatFlagMessageAction.h"
#include "AsyncActions/CometChatGetFlagReasonsAction.h"
All types (FCometChatUser, FCometChatMessage, FCometChatGroup, etc.) are defined in CometChatSubsystem.h.