Skip to main content
// Fetch group members
const request = new CometChat.GroupMembersRequestBuilder("GUID")
  .setLimit(30).build();
const members = await request.fetchNext();

// Filter by scope
const scopeRequest = new CometChat.GroupMembersRequestBuilder("GUID")
  .setLimit(30).setScopes(["admin", "moderator"]).build();

// Search members
const searchRequest = new CometChat.GroupMembersRequestBuilder("GUID")
  .setLimit(30).setSearchKeyword("john").build();
Fetch the members of a group with filtering by scope, online status, and search keyword. Results are returned as GroupMember objects, which extend User with group-specific fields like scope.

Retrieve the List of Group Members

Use GroupMembersRequestBuilder to fetch members of a Group. The GUID must be specified in the constructor. Fetching using this builder will return GroupMember objects. GroupMember extends User and adds group-specific fields.

Set Limit

Sets the number of members to fetch per request.
let GUID: string = "GUID";
let limit: number = 30;
let groupMembersRequest: CometChat.GroupMembersRequest = new CometChat.GroupMembersRequestBuilder(GUID)
  .setLimit(limit)
  .build();

Set Search Keyword

Filters members by a search string.
let GUID: string = "GUID";
let limit: number = 30;
let searchKeyword: string = "super";
let groupMembersRequest: CometChat.GroupMembersRequest = new CometChat.GroupMembersRequestBuilder(GUID)
  .setLimit(limit)
  .setSearchKeyword(searchKeyword)
  .build();

Set Scopes

Filters members by one or more scopes (admin, moderator, participant).
let GUID: string = "GUID";
let limit: number = 30;
let scopes: Array<String> = ["admin", "moderator"];
let groupMembersRequest: CometChat.GroupMembersRequest = new CometChat.GroupMembersRequestBuilder(GUID)
  .setLimit(limit)
  .setScopes(scopes)
  .build();
Relevant fields to access on returned members:
FieldGetterReturn TypeDescription
scopegetScope()stringScope of the member in the group ("admin", "moderator", or "participant")

Set Status

Filters members by online status:
ValueDescription
CometChat.USER_STATUS.ONLINEOnly online members
CometChat.USER_STATUS.OFFLINEOnly offline members
If not set, returns all members regardless of status.
let GUID: string = "GUID";
let limit: number = 30;
let groupMembersRequest: CometChat.GroupMembersRequest = new CometChat.GroupMembersRequestBuilder(GUID)
  .setLimit(limit)
  .setStatus(CometChat.USER_STATUS.ONLINE)
  .build();
After configuring the builder, call build() to create the request, then fetchNext() to retrieve members. Call fetchNext() repeatedly on the same instance to paginate.
let GUID: string = "GUID";
let limit: number = 30;
let groupMembersRequest: CometChat.GroupMembersRequest = new CometChat.GroupMembersRequestBuilder(GUID)
  .setLimit(limit)
  .build();

groupMembersRequest.fetchNext().then(
  (groupMembers: CometChat.GroupMember[]) => {
      console.log("Group Member list fetched successfully:", groupMembers);
  }, (error: CometChat.CometChatException) => {
      console.log("Group Member list fetching failed with exception:", error);
  }
);   
The fetchNext() method returns an array of GroupMember objects. GroupMember extends User and adds group-specific fields.

Next Steps

Add Members

Add users to a group programmatically

Kick & Ban Members

Remove or ban members from a group