filter property
A search query.
The query can specify one or more search keywords, which are used to
filter the results, You can also filter the results using the following
message fields: - create_time: Accepts a timestamp in
[RFC-3339](https://www.rfc-editor.org/rfc/rfc3339) format and the
supported comparison operators are: < and >=. - sender.name: The
resource name of the sender (users/{user}). Only supports =. You can
use the e-mail as an alias for {user}. For example,
users/example@gmail.com, where example@gmail.com is the e-mail of the
Google Chat user. - space.name: The resource name of the space where the
message is posted. (spaces/{space}). Only supports =. If this filter
is not set, the search is performed across all direct messages and spaces
the user has access to as a space member. - space.display_name: Supports
the operator : (has) and filters spaces based on a partial match of
their display name. Results are limited to the top five space matches. For
example, space.display_name:Project searches for messages in the top
five spaces that contain the word "Project" in their display names. -
attachment: Supports the operator :* (has any) to check for the
presence of attachments. If attachment:* is specified, only messages
that have at least one attachment are returned. -
annotations.user_mentions.user.name: The resource name of the mentioned
user (users/{user}). Only supports : (has). For example:
annotations.user_mentions.user.name:"users/1234567890" returns only
messages that contain a mention to the specified user. Alternatively, the
alias me can be used to filter for messages that mention the caller
user, for example: annotations.user_mentions.user.name:users/me. You can
also use the e-mail as an alias for {user}, for example,
users/example@gmail.com. For advanced filtering, the following functions
are also available: - has_link(): Returns only messages that have at
least one hyperlink in the message text. - is_unread(): Filters out
messages that have been read by the calling user. Using the
space.display_name filter requires that the calling credentials include
one of the following
authorization scopes:
https://www.googleapis.com/auth/chat.spaces.readonly-https://www.googleapis.com/auth/chat.spacesUsing theis_unread()filter requires that the calling credentials include one of the following authorization scopes:https://www.googleapis.com/auth/chat.users.readstate.readonly-https://www.googleapis.com/auth/chat.users.readstateAcross different fields, onlyANDoperators are supported. A valid example issender.name = "users/1234567890" AND is_unread(). The wordANDis optional and is implied if omitted. For example,sender.name = "users/1234567890" is_unread()is valid and is equivalent to the previous example. An invalid example issender.name = "users/1234567890" OR is_unread()becauseORis not supported between different fields. Among the same field: -create_timesupports onlyAND, and can only be used to represent an interval, such ascreate_time >= "2022-01-01T00:00:00+00:00" AND create_time < "2023-01-01T00:00:00+00:00". -sender.namesupports only theORoperator, for example:sender.name = "users/1234567890" OR sender.name = "users/0987654321". -space.namesupports only theORoperator, for example:space.name = "spaces/ABCDEFGH" OR space.name = "spaces/QWERTYUI". -space.display_namesupports the operatorsANDandOR, but not a mix of both. For example:space.display_name:Project AND space.display_name:Tasksreturns messages that are in spaces with display names containing bothProjectandTasks, whereasspace.display_name:Project OR space.display_name:Tasksreturns messages that are in spaces with display names containing eitherProjectorTasksor both. -annotations.user_mentions.user.namesupports the operatorsANDandOR, but not a mix of both. For example:annotations.user_mentions.user.name:"users/1234567890" AND annotations.user_mentions.user.name:"users/0987654321"returns only messages that mentions both users, whereasannotations.user_mentions.user.name:"users/1234567890" OR annotations.user_mentions.user.name:"users/0987654321"returns messages that mention either user or both. Parentheses are required to disambiguate operator precedence when combiningANDandORoperators in the same query. For example:(sender.name="users/me" OR sender.name="users/123456") AND is_unread(). Otherwise, parentheses are optional. The following example queries are valid:"Pending reports" AND create_time >= "2023-01-01T00:00:00Z" sender.name = "users/example@gmail.com" annotations.user_mentions.user.name:"users/0987654321" attachment:* AND space.name = "spaces/ABCDEFGH" tasks AND is_unread() AND sender.name = "users/1234567890" "things to do" "urgent" (sender.name = "users/1234567890") AND (create_time < "2023-05-01T00:00:00Z") tasks AND space.name = "spaces/ABCDEFGH" AND has_link() "project one" is_unread() space.display_name:Project tasksThe maximum query length is 1,000 characters. Invalid queries are rejected by the server with anINVALID_ARGUMENTerror.
Required.
Implementation
core.String? filter;