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. Requires
user authentication.
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. With
app authentication,
this field is ignored and the query always returns all spaces. But the
Chat API still validates the query syntax, so invalid queries are still
rejected.
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 1,000. If you use a value more than 1,000,
it's automatically changed to 1,000. 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>);
}