list method
Lists messages in a space that the caller is a member of, including messages from blocked members and spaces.
For an example, see [List messages](/chat/api/guides/v1/messages/list). Requires user authentication.
Request parameters:
parent
- Required. The resource name of the space to list messages from.
Format: spaces/{space}
Value must have pattern ^spaces/\[^/\]+$
.
filter
- A query filter. You can filter messages by date (create_time
)
and thread (thread.name
). To filter messages by the date they were
created, specify the create_time
with a timestamp in
[RFC-3339](https://www.rfc-editor.org/rfc/rfc3339) format and double
quotation marks. For example, "2023-04-21T11:30:00-04:00"
. You can use
the greater than operator >
to list messages that were created after a
timestamp, or the less than operator <
to list messages that were
created before a timestamp. To filter messages within a time interval, use
the AND
operator between two timestamps. To filter by thread, specify
the thread.name
, formatted as spaces/{space}/threads/{thread}
. You can
only specify one thread.name
per query. To filter by both thread and
date, use the AND
operator in your query. For example, the following
queries are valid: create_time > "2012-04-21T11:30:00-04:00" create_time > "2012-04-21T11:30:00-04:00" AND thread.name = spaces/AAAAAAAAAAA/threads/123 create_time > "2012-04-21T11:30:00+00:00" AND create_time < "2013-01-01T00:00:00+00:00" AND thread.name = spaces/AAAAAAAAAAA/threads/123 thread.name = spaces/AAAAAAAAAAA/threads/123
Invalid queries are rejected by the
server with an INVALID_ARGUMENT
error.
orderBy
- Optional, if resuming from a previous query. How the list of
messages is ordered. Specify a value to order by an ordering operation.
Valid ordering operation values are as follows: - ASC
for ascending. -
DESC
for descending. The default ordering is create_time ASC
.
pageSize
- The maximum number of messages returned. The service might
return fewer messages than this value. If unspecified, at most 25 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, if resuming from a previous query. A page token
received from a previous list messages 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.
showDeleted
- Whether to include deleted messages. Deleted messages
include deleted time and metadata about their deletion, but message
content is unavailable.
$fields
- Selector specifying which fields to include in a partial
response.
Completes with a ListMessagesResponse.
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<ListMessagesResponse> list(
core.String parent, {
core.String? filter,
core.String? orderBy,
core.int? pageSize,
core.String? pageToken,
core.bool? showDeleted,
core.String? $fields,
}) async {
final queryParams_ = <core.String, core.List<core.String>>{
if (filter != null) 'filter': [filter],
if (orderBy != null) 'orderBy': [orderBy],
if (pageSize != null) 'pageSize': ['${pageSize}'],
if (pageToken != null) 'pageToken': [pageToken],
if (showDeleted != null) 'showDeleted': ['${showDeleted}'],
if ($fields != null) 'fields': [$fields],
};
final url_ = 'v1/' + core.Uri.encodeFull('$parent') + '/messages';
final response_ = await _requester.request(
url_,
'GET',
queryParams: queryParams_,
);
return ListMessagesResponse.fromJson(
response_ as core.Map<core.String, core.dynamic>);
}