> Portal Navigation: > > - Append `.md` to any URL under `https://dev.wix.com/docs/` to get its markdown version. > - Pages are either content pages (article or reference text) or menu pages (a list of links to child pages). > - To get a menu page, truncate any URL to a parent path and append `.md` (e.g. `https://dev.wix.com/docs/sdk.md`, `https://dev.wix.com/docs/sdk/core-modules.md`). > - Top-level index of all portals: https://dev.wix.com/docs/llms.txt > - Full concatenated docs: https://dev.wix.com/docs/llms-full.txt # Method name: queryGroupMembers(groupId: string) # Method package: wixGroupsV2 # Method menu location: wixGroupsV2 --> members --> queryGroupMembers # Method Link: https://dev.wix.com/docs/velo/apis/wix-groups-v2/members/query-group-members.md # Method Description: Retrieves a list of up to 100 group members, given the provided paging, sorting and filtering. Creates a query to retrieve a list of group members. > **Note:** For `SECRET` groups, only group admins and group members can query group members. The `queryGroupMembers()` function builds a query to retrieve a list of all group members, and returns a [GroupMembersQueryBuilder](#membersquerybuilder) object. The returned object contains the query definition which is typically used to run the query using the [`find()`](#membersquerybuilder/find) function. You can refine the query by chaining `GroupMembersQueryBuilder` functions onto the query. `GroupMembersQueryBuilder` functions enable you to sort, filter, and control the results that `queryMembers()` returns. `queryGroupMembers()` runs with these `GroupMembersQueryBuilder` defaults, which you can override: + [`limit(100)`](/members-query-builder/limit) + [`descending("joinedDate")`](/members-query-builder/descending) The following `GroupMembersQueryBuilder` functions are supported for `queryGroupMembers()`. For a full description of the Members object, see the object returned for the [`items`](/members-query-result/items) property in `MembersQueryResult`. |PROPERTY |SUPPORTED FILTERS & SORTING |:---:|:---:| |`role`|[`eq()`](/members-query-builder/eq),[`ne()`](/members-query-builder/ne),[`exists()`](/members-query-builder/exists),[`in()`](/members-query-builder/in),[`hasSome()`](/members-query-builder/has-some),[`ascending()`](/members-query-builder/ascending),[`descending()`](/members-query-builder/descending)| |`joinedDate`|[`ascending()`](/members-query-builder/ascending),[`descending()`](/members-query-builder/descending)| # Method Code Examples: *** Note: do not assume any prop names or enum values other than the ones in the example. ## Query members of a group (dashboard page code) ```javascript import { members } from 'wix-groups-v2'; export function myQueryGroupMembersFunction() { return members.queryGroupMembers() .find() .then((queryResults) => { const items = results.items; const firstItem = items[0]; const pageSize = results.pageSize; const totalPages = results.totalPages; const totalCount = results.totalCount; const currentPage = results.currentPage(); const next = results.next(); const previous = results.prev(); const hasNext = results.hasNext(); const hasPrev = results.hasPrev(); const length = results.length; return items; }) .catch((error) => { console.error(error); }); } /* Returns items: * [ * { * "joinedDate": "Sun Aug 01 2021 12:32:35 GMT+0300" * "memberId": "437cd3db-e9be-4980-93c1-a6d767a11050" * "role": {"value": "ADMIN"} * }, * { * "joinedDate": "Tues Jun 30 2019 10:09:33 GMT+0300" * "memberId": "7fe8e9e1-d050-4c86-9684-e7f231600a34" * "role": {"value": "MEMBER"} * } * ] */ ``` ## Query members of a group (export from backend code) ```javascript import { Permissions, webMethod } from 'wix-web-module'; import { members } from 'wix-groups-v2'; export const myQueryGroupMembersFunction = webMethod(Permissions.Anyone, () => { return members.queryGroupMembers() .find() .then((queryResults) => { const items = queryResults.items; const firstItem = items[0]; const pageSize = queryResults.pageSize; const totalPages = queryResults.totalPages; const totalCount = queryResults.totalCount; const currentPage = queryResults.currentPage(); const next = queryResults.next(); const previous = queryResults.prev(); const hasNext = queryResults.hasNext(); const hasPrev = queryResults.hasPrev(); const length = queryResults.length; return items; }) .catch((error) => { console.error(error); }); }); /* Returns items: * [ * { * "joinedDate": "Sun Aug 01 2021 12:32:35 GMT+0300" * "memberId": "437cd3db-e9be-4980-93c1-a6d767a11050" * "role": {"value": "ADMIN"} * }, * { * "joinedDate": "Tues Jun 30 2019 10:09:33 GMT+0300" * "memberId": "7fe8e9e1-d050-4c86-9684-e7f231600a34" * "role": {"value": "MEMBER"} * } * ] */ ``` ---