search method
Returns a list of spaces in a Google Workspace organization based on an administrator's search.
Requires
user authentication with administrator privileges.
In the request, set use_admin_access
to true
.
Request parameters:
orderBy
- Optional. How the list of spaces is ordered. Supported
attributes to order by are: -
membership_count.joined_direct_human_user_count
— Denotes the count of
human users that have directly joined a space. - last_active_time
—
Denotes the time when last eligible item is added to any topic of this
space. - create_time
— Denotes the time of the space creation. Valid
ordering operation values are: - ASC
for ascending. Default value. -
DESC
for descending. The supported syntax are: -
membership_count.joined_direct_human_user_count DESC
-
membership_count.joined_direct_human_user_count ASC
- last_active_time DESC
- last_active_time ASC
- create_time DESC
- create_time ASC
pageSize
- The maximum number of spaces to return. The service may
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.
pageToken
- A token, received from the previous search spaces call.
Provide this parameter to retrieve the subsequent page. When paginating,
all other parameters provided should match the call that provided the page
token. Passing different values to the other parameters might lead to
unexpected results.
query
- Required. A search query. You can search by using the following
parameters: - create_time
- customer
- display_name
-
external_user_allowed
- last_active_time
- space_history_state
-
space_type
create_time
and last_active_time
accept a timestamp in
[RFC-3339](https://www.rfc-editor.org/rfc/rfc3339) format and the
supported comparison operators are: =
, <
, >
, <=
, >=
. customer
is required and is used to indicate which customer to fetch spaces from.
customers/my_customer
is the only supported value. display_name
only
accepts the HAS
(:
) operator. The text to match is first tokenized
into tokens and each token is prefix-matched case-insensitively and
independently as a substring anywhere in the space's display_name
. For
example, Fun Eve
matches Fun event
or The evening was fun
, but not
notFun event
or even
. external_user_allowed
accepts either true
or
false
. space_history_state
only accepts values from the
[historyState
](https://developers.google.com/workspace/chat/api/reference/rest/v1/spaces#Space.HistoryState)
field of a space
resource. space_type
is required and the only valid
value is SPACE
. Across different fields, only AND
operators are
supported. A valid example is space_type = "SPACE" AND display_name:"Hello"
and an invalid example is space_type = "SPACE" OR display_name:"Hello"
. Among the same field, space_type
doesn't support
AND
or OR
operators. display_name
, 'space_history_state', and
'external_user_allowed' only support OR
operators. last_active_time
and create_time
support both AND
and OR
operators. AND
can only be
used to represent an interval, such as last_active_time < "2022-01-01T00:00:00+00:00" AND last_active_time > "2023-01-01T00:00:00+00:00"
. The following example queries are valid: customer = "customers/my_customer" AND space_type = "SPACE" customer = "customers/my_customer" AND space_type = "SPACE" AND display_name:"Hello World" customer = "customers/my_customer" AND space_type = "SPACE" AND (last_active_time < "2020-01-01T00:00:00+00:00" OR last_active_time > "2022-01-01T00:00:00+00:00") customer = "customers/my_customer" AND space_type = "SPACE" AND (display_name:"Hello World" OR display_name:"Fun event") AND (last_active_time > "2020-01-01T00:00:00+00:00" AND last_active_time < "2022-01-01T00:00:00+00:00") customer = "customers/my_customer" AND space_type = "SPACE" AND (create_time > "2019-01-01T00:00:00+00:00" AND create_time < "2020-01-01T00:00:00+00:00") AND (external_user_allowed = "true") AND (space_history_state = "HISTORY_ON" OR space_history_state = "HISTORY_OFF")
useAdminAccess
- When true
, the method runs using the user's Google
Workspace administrator privileges. The calling user must be a Google
Workspace administrator with the
manage chat and spaces conversations privilege.
Requires either the chat.admin.spaces.readonly
or chat.admin.spaces
OAuth 2.0 scope.
This method currently only supports admin access, thus only true
is
accepted for this field.
$fields
- Selector specifying which fields to include in a partial
response.
Completes with a SearchSpacesResponse.
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<SearchSpacesResponse> search({
core.String? orderBy,
core.int? pageSize,
core.String? pageToken,
core.String? query,
core.bool? useAdminAccess,
core.String? $fields,
}) async {
final queryParams_ = <core.String, core.List<core.String>>{
if (orderBy != null) 'orderBy': [orderBy],
if (pageSize != null) 'pageSize': ['${pageSize}'],
if (pageToken != null) 'pageToken': [pageToken],
if (query != null) 'query': [query],
if (useAdminAccess != null) 'useAdminAccess': ['${useAdminAccess}'],
if ($fields != null) 'fields': [$fields],
};
const url_ = 'v1/spaces:search';
final response_ = await _requester.request(
url_,
'GET',
queryParams: queryParams_,
);
return SearchSpacesResponse.fromJson(
response_ as core.Map<core.String, core.dynamic>);
}