> 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 # QueryMemberships # Package: memberManagement # Namespace: GroupMembersService # Method link: https://dev.wix.com/docs/api-reference/crm/community/groups/member-management/members/query-memberships.md ## Introduction Retrieves a list of up to 100 members and their membership status, given the provided paging and filtering. Groups managers can see all memberships for any group. Supported fields for filtering: - `role` - `status` No supported fields for sorting. --- ## REST API ### Schema ``` Method: queryMemberships Description: Retrieves a list of up to 100 members and their membership status, given the provided paging and filtering. Groups managers can see all memberships for any group. Supported fields for filtering: - `role` - `status` No supported fields for sorting. URL: https://www.wixapis.com/v2/members/{memberId}/memberships/query Method: POST Method parameters: param name: query | type: Query - name: filter | type: Value | description: Filter object in the following format: `"filter" : { "fieldName1": "value1", "fieldName2":{"$operator":"value2"} }` Example of operators: `$eq`, `$ne`, `$lt`, `$lte`, `$gt`, `$gte`, `$in`, `$hasSome`, `$hasAll`, `$startsWith`, `$contains` - ONE-OF: - name: nullValue | type: | description: - name: numberValue | type: number | description: - name: stringValue | type: string | description: - name: boolValue | type: boolean | description: - name: structValue | type: object | description: - name: listValue | type: ListValue | description: - name: values | type: array | description: - name: sort | type: array | description: Sort object in the following format: `[{"fieldName":"sortField1","order":"ASC"},{"fieldName":"sortField2","order":"DESC"}]` - name: fieldName | type: string | description: Name of the field to sort by. - name: order | type: SortOrder | description: Sort order. - enum: ASC, DESC - name: paging | type: Paging | description: Paging options to limit and skip the number of items. - name: limit | type: integer | description: Number of items to load. - name: offset | type: integer | description: Number of items to skip in the current sort order. - name: fields | type: array | description: Array of projected fields. A list of specific field names to return. If `fieldsets` are also specified, the union of `fieldsets` and `fields` is returned. - name: fieldsets | type: array | description: Array of named, predefined sets of projected fields. A array of predefined named sets of fields to be returned. Specifying multiple `fieldsets` will return the union of fields from all sets. If `fields` are also specified, the union of `fieldsets` and `fields` is returned. Return type: QueryMembershipsResponse - name: memberships | type: array | description: Site member's memberships. - name: groupId | type: string | description: Group GUID. - name: status | type: MembershipStatus | description: Membership status with group. - enum: - UNKNOWN_STATUS: Undefined membership status. - JOINED: Site member is a group member. - PENDING: Site member has submitted a request to join this group. The request is still `PENDING`. - name: role | type: GroupRole | description: Group member role. When membership status is not `JOINED`, this is empty. - name: value | type: Role | description: Member's role. - enum: - MEMBER: Regular group member. - ADMIN: Group administrator. - name: metadata | type: PagingMetadata | description: Paging information. - name: count | type: integer | description: Number of items returned in the response. - name: offset | type: integer | description: Offset that was requested. - name: total | type: integer | description: Total number of items that match the query. - name: tooManyToCount | type: boolean | description: Flag that indicates the server failed to calculate the `total` field. ``` ### Examples ### QueryMemberships ```curl ~~~cURL curl -X POST \ https://wixapis.com/social-groups/v2/members/223c37e0-3474-43c5-8d47-e374b414ef68/memberships/query \ -H 'Content-Type: application/json;charset=UTF-8' \ -H 'Authorization: ' -d '{ "query": { "filter": { "status": { "$eq": "JOINED" } }, "paging": { "offset": 0, "limit": 100 } } }' ~~~ ``` --- ## JavaScript SDK ### Schema ``` Method: wixClientAdmin.memberManagement.GroupMembersService.queryMemberships(memberId, options) Description: Retrieves a list of up to 100 members and their membership status, given the provided paging and filtering. Groups managers can see all memberships for any group. Supported fields for filtering: - `role` - `status` No supported fields for sorting. # Note: If the parameter `a.b` is listed under required parameters, `b` is only required if `a` is also present. Required parameters: memberId Method parameters: param name: memberId | type: string | description: Site member GUID. | required: true param name: options | type: QueryMembershipsOptions none - name: query | type: Query | description: - name: filter | type: Value | description: Filter object in the following format: `"filter" : { "fieldName1": "value1", "fieldName2":{"$operator":"value2"} }` Example of operators: `$eq`, `$ne`, `$lt`, `$lte`, `$gt`, `$gte`, `$in`, `$hasSome`, `$hasAll`, `$startsWith`, `$contains` - ONE-OF: - name: nullValue | type: | description: - name: numberValue | type: number | description: - name: stringValue | type: string | description: - name: boolValue | type: boolean | description: - name: structValue | type: object | description: - name: listValue | type: ListValue | description: - name: values | type: array | description: - name: sort | type: array | description: Sort object in the following format: `[{"fieldName":"sortField1","order":"ASC"},{"fieldName":"sortField2","order":"DESC"}]` - name: fieldName | type: string | description: Name of the field to sort by. - name: order | type: SortOrder | description: Sort order. - enum: ASC, DESC - name: paging | type: Paging | description: Paging options to limit and skip the number of items. - name: limit | type: integer | description: Number of items to load. - name: offset | type: integer | description: Number of items to skip in the current sort order. - name: fields | type: array | description: Array of projected fields. A list of specific field names to return. If `fieldsets` are also specified, the union of `fieldsets` and `fields` is returned. - name: fieldsets | type: array | description: Array of named, predefined sets of projected fields. A array of predefined named sets of fields to be returned. Specifying multiple `fieldsets` will return the union of fields from all sets. If `fields` are also specified, the union of `fieldsets` and `fields` is returned. Return type: PROMISE - name: memberships | type: array | description: Site member's memberships. - name: groupId | type: string | description: Group GUID. - name: status | type: MembershipStatus | description: Membership status with group. - enum: - UNKNOWN_STATUS: Undefined membership status. - JOINED: Site member is a group member. - PENDING: Site member has submitted a request to join this group. The request is still `PENDING`. - name: role | type: GroupRole | description: Group member role. When membership status is not `JOINED`, this is empty. - name: value | type: Role | description: Member's role. - enum: - MEMBER: Regular group member. - ADMIN: Group administrator. - name: metadata | type: PagingMetadata | description: Paging information. - name: count | type: integer | description: Number of items returned in the response. - name: offset | type: integer | description: Offset that was requested. - name: total | type: integer | description: Total number of items that match the query. - name: tooManyToCount | type: boolean | description: Flag that indicates the server failed to calculate the `total` field. ``` ### Examples ### queryMemberships ```javascript import { members } from '@wix/groups'; async function queryMemberships(memberId,options) { const response = await members.queryMemberships(memberId,options); }; ``` ### queryMemberships (with elevated permissions) ```javascript import { members } from '@wix/groups'; import { auth } from '@wix/essentials'; async function myQueryMembershipsMethod(memberId,options) { const elevatedQueryMemberships = auth.elevate(members.queryMemberships); const response = await elevatedQueryMemberships(memberId,options); } ``` ### queryMemberships (self-hosted) Self-hosted SDK calls require you to [create a client](https://dev.wix.com/docs/sdk/articles/work-with-the-sdk/about-the-wix-client.md). ```javascript import { createClient } from '@wix/sdk'; import { members } from '@wix/groups'; // Import the auth strategy for the relevant access type // Import the relevant host module if needed const myWixClient = createClient ({ modules: { members }, // Include the auth strategy and host as relevant }); async function queryMemberships(memberId,options) { const response = await myWixClient.members.queryMemberships(memberId,options); }; ``` ---