Skip to main content
// Change member scope to admin
await CometChat.updateGroupMemberScope("GUID", "UID", CometChat.GROUP_MEMBER_SCOPE.ADMIN);

// Listen for scope change events
CometChat.addGroupListener("listener", new CometChat.GroupListener({
  onGroupMemberScopeChanged: (message, changedUser, newScope, oldScope, changedGroup) => { }
}));
You can change the role of a group member between admin, moderator, and participant.

Change Scope of a Group Member

Use updateGroupMemberScope() to change a member’s role within a Group.
let GUID = "GUID";
let UID = "UID";
let scope = CometChat.GROUP_MEMBER_SCOPE.ADMIN;

CometChat.updateGroupMemberScope(GUID, UID, scope).then(
response => {
  console.log("Group member scopped changed", response);
}, error => {
  console.log("Group member scopped changed failed", error);
}
);
This method takes the below parameters:
ParameterDescription
UIDThe UID of the member whose scope you want to change
GUIDThe GUID of the group
scopeThe new scope: CometChat.SCOPE.ADMIN, CometChat.SCOPE.MODERATOR, or CometChat.SCOPE.PARTICIPANT
The default scope is participant. Only Admins can change member scopes. On success, the method resolves with a success message string.

Real-Time Group Member Scope Changed Events

Implement onGroupMemberScopeChanged() in GroupListener to receive real-time notifications when a member’s scope changes.
let listenerID = "UNIQUE_LISTENER_ID";

CometChat.addGroupListener(
listenerID,
new CometChat.GroupListener({
  onGroupMemberScopeChanged: (message, changedUser, newScope, oldScope, changedGroup) => {
    console.log("User joined", {message, changedUser, newScope, oldScope, changedGroup});
  }
})
);
Always remove group listeners when they’re no longer needed (e.g., on component unmount or page navigation). Failing to remove listeners can cause memory leaks and duplicate event handling.
CometChat.removeGroupListener("UNIQUE_LISTENER_ID");

Missed Group Member Scope Changed Events

When fetching previous messages, scope changes appear as Action messages (a subclass of BaseMessage).
FieldValue/TypeDescription
action"scopeChanged"The action type
actionOnUserThe user whose scope changed
actionByUserThe user who changed the scope
actionForGroupThe group
oldScopestringThe previous scope
newScopestringThe new scope

Next Steps

Transfer Group Ownership

Transfer ownership of a group to another member

Kick & Ban Members

Remove or ban members from a group

Add Members

Add new members to a group

Retrieve Group Members

Fetch the list of members in a group