findGroupChats method
Returns all spaces with spaceType == GROUP_CHAT, whose human memberships
contain exactly the calling user, and the users specified in
FindGroupChatsRequest.users.
Only members that have joined the conversation are supported. For an example, see Find group chats. If the calling user blocks, or is blocked by, some users, and no spaces with the entire specified set of users are found, this method returns spaces that don't include the blocked or blocking users. The specified set of users must contain only human (non-app) memberships. A request that contains non-human users doesn't return any spaces. Requires user authentication with one of the following authorization scopes:
https://www.googleapis.com/auth/chat.memberships.readonly-https://www.googleapis.com/auth/chat.memberships
Request parameters:
pageSize - Optional. The maximum number of spaces to return. The service
might return fewer than this value. If unspecified, at most 10 spaces are
returned. The maximum value is 30. If you use a value more than 30, it's
automatically changed to 30. Negative values return an INVALID_ARGUMENT
error.
pageToken - Optional. A page token, received from a previous call to
find group chats. Provide this parameter to retrieve the subsequent page.
When paginating, all other parameters provided should match the call that
provided the token. Passing different values may lead to unexpected
results.
spaceView - Requested space view type. If unset, defaults to
SPACE_VIEW_RESOURCE_NAME_ONLY. Requests that specify
SPACE_VIEW_EXPANDED must include scopes that allow reading space data,
for example, https://www.googleapis.com/auth/chat.spaces or
https://www.googleapis.com/auth/chat.spaces.readonly.
Possible string values are:
- "SPACE_VIEW_UNSPECIFIED" : The default / unset value.
- "SPACE_VIEW_RESOURCE_NAME_ONLY" : Populates only the Space resource name.
- "SPACE_VIEW_EXPANDED" : Populates Space resource fields. Note: the
permissionSettingsfield will not be populated. Requests that specify SPACE_VIEW_EXPANDED must include scopes that allow reading space data, for example, https://www.googleapis.com/auth/chat.spaces or https://www.googleapis.com/auth/chat.spaces.readonly.
users - Optional. Resource names of all human users in group chat with
the calling user. Chat apps can't be included in the request. The maximum
number of users that can be specified in a single request is 49. Format:
users/{user}, where {user} is either the id for the
person from the
People API, or the id for the
user
in the Directory API. For example, to find all group chats with the
calling user and two other users, with People API profile IDs 123456789
and 987654321, you can use users/123456789 and users/987654321. You
can also use the email as an alias for {user}. For example,
users/example@gmail.com where example@gmail.com is the email of the
Google Chat user.
$fields - Selector specifying which fields to include in a partial
response.
Completes with a FindGroupChatsResponse.
Completes with a commons.ApiRequestError if the API endpoint returned an error.
If the used http.Client completes with an error when making a REST call,
this method will complete with the same error.
Implementation
async.Future<FindGroupChatsResponse> findGroupChats({
core.int? pageSize,
core.String? pageToken,
core.String? spaceView,
core.List<core.String>? users,
core.String? $fields,
}) async {
final queryParams_ = <core.String, core.List<core.String>>{
'pageSize': ?pageSize == null ? null : ['${pageSize}'],
'pageToken': ?pageToken == null ? null : [pageToken],
'spaceView': ?spaceView == null ? null : [spaceView],
'users': ?users,
'fields': ?$fields == null ? null : [$fields],
};
const url_ = 'v1/spaces:findGroupChats';
final response_ = await _requester.request(
url_,
'GET',
queryParams: queryParams_,
);
return FindGroupChatsResponse.fromJson(
response_ as core.Map<core.String, core.dynamic>,
);
}