list method
Lists spaces the caller is a member of.
Group chats and DMs aren't listed until the first message is sent. For an example, see List spaces. Requires authentication. Supports app authentication and user authentication. Lists spaces visible to the caller or authenticated user. Group chats and DMs aren't listed until the first message is sent.
Request parameters:
filter
- Optional. A query filter. You can filter spaces by the space
type
([space_type
](https://developers.google.com/chat/api/reference/rest/v1/spaces#spacetype)).
To filter by space type, you must specify valid enum value, such as
SPACE
or GROUP_CHAT
(the space_type
can't be
SPACE_TYPE_UNSPECIFIED
). To query for multiple space types, use the OR
operator. For example, the following queries are valid: space_type = "SPACE" spaceType = "GROUP_CHAT" OR spaceType = "DIRECT_MESSAGE"
Invalid queries are rejected by the server with an INVALID_ARGUMENT
error.
pageSize
- Optional. The maximum number of spaces to return. The service
might return fewer than this value. If unspecified, at most 100 spaces are
returned. The maximum value is 1000. If you use a value more than 1000,
it's automatically changed to 1000. Negative values return an
INVALID_ARGUMENT
error.
pageToken
- Optional. A page token, received from a previous list spaces
call. Provide this parameter to retrieve the subsequent page. When
paginating, the filter value should match the call that provided the page
token. Passing a different value may lead to unexpected results.
$fields
- Selector specifying which fields to include in a partial
response.
Completes with a ListSpacesResponse.
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<ListSpacesResponse> list({
core.String? filter,
core.int? pageSize,
core.String? pageToken,
core.String? $fields,
}) async {
final queryParams_ = <core.String, core.List<core.String>>{
if (filter != null) 'filter': [filter],
if (pageSize != null) 'pageSize': ['${pageSize}'],
if (pageToken != null) 'pageToken': [pageToken],
if ($fields != null) 'fields': [$fields],
};
const url_ = 'v1/spaces';
final response_ = await _requester.request(
url_,
'GET',
queryParams: queryParams_,
);
return ListSpacesResponse.fromJson(
response_ as core.Map<core.String, core.dynamic>);
}