list method

Future<ListDocumentsResponse> list(
  1. String parent,
  2. String collectionId, {
  3. List<String>? mask_fieldPaths,
  4. String? orderBy,
  5. int? pageSize,
  6. String? pageToken,
  7. String? readTime,
  8. bool? recursive,
  9. List<String>? requestOptions_requestTags,
  10. bool? showMissing,
  11. String? transaction,
  12. String? $fields,
})

Lists documents.

Request parameters:

parent - Required. The parent resource name. In the format: projects/{project_id}/databases/{database_id}/documents or projects/{project_id}/databases/{database_id}/documents/{document_path}. For example: projects/my-project/databases/my-database/documents or projects/my-project/databases/my-database/documents/chatrooms/my-chatroom Value must have pattern ^projects/\[^/\]+/databases/\[^/\]+/documents/\[^/\]+/.*$.

collectionId - Optional. The collection ID, relative to parent, to list. For example: chatrooms or messages. This is optional, and when not provided, Firestore will list documents from all collections under the provided parent.

mask_fieldPaths - The list of field paths in the mask. See Document.fields for a field path syntax reference.

orderBy - Optional. The optional ordering of the documents to return. For example: priority desc, __name__ desc. This mirrors the ORDER BY used in Firestore queries but in a string representation. When absent, documents are ordered based on __name__ ASC.

pageSize - Optional. The maximum number of documents to return in a single response. Firestore may return fewer than this value.

pageToken - Optional. A page token, received from a previous ListDocuments response. Provide this to retrieve the subsequent page. When paginating, all other parameters (with the exception of page_size) must match the values set in the request that generated the page token.

readTime - Perform the read at the provided time. This must be a microsecond precision timestamp within the past one hour, or if Point-in-Time Recovery is enabled, can additionally be a whole minute timestamp within the past 7 days.

recursive - Optional. If the list should recursively include all documents nested under the parent at any level. If the request specifies a collection_id, then the list will include all nested documents in the collection under the parent. This is optional, and when not provided, Firestore will only list documents nested immediately under the parent. Requests with recursive may not specify show_missing.

requestOptions_requestTags - Optional. The request tags for the request.

showMissing - If the list should show missing documents. A document is missing if it does not exist, but there are sub-documents nested underneath it. When true, such missing documents will be returned with a key but will not have fields, create_time, or update_time set. Requests with show_missing may not specify where or order_by.

transaction - Perform the read as part of an already active transaction.

$fields - Selector specifying which fields to include in a partial response.

Completes with a ListDocumentsResponse.

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<ListDocumentsResponse> list(
  core.String parent,
  core.String collectionId, {
  core.List<core.String>? mask_fieldPaths,
  core.String? orderBy,
  core.int? pageSize,
  core.String? pageToken,
  core.String? readTime,
  core.bool? recursive,
  core.List<core.String>? requestOptions_requestTags,
  core.bool? showMissing,
  core.String? transaction,
  core.String? $fields,
}) async {
  final queryParams_ = <core.String, core.List<core.String>>{
    'mask.fieldPaths': ?mask_fieldPaths,
    'orderBy': ?orderBy == null ? null : [orderBy],
    'pageSize': ?pageSize == null ? null : ['${pageSize}'],
    'pageToken': ?pageToken == null ? null : [pageToken],
    'readTime': ?readTime == null ? null : [readTime],
    'recursive': ?recursive == null ? null : ['${recursive}'],
    'requestOptions.requestTags': ?requestOptions_requestTags,
    'showMissing': ?showMissing == null ? null : ['${showMissing}'],
    'transaction': ?transaction == null ? null : [transaction],
    'fields': ?$fields == null ? null : [$fields],
  };

  final url_ =
      'v1/' +
      core.Uri.encodeFull('$parent') +
      '/' +
      commons.escapeVariable('$collectionId');

  final response_ = await _requester.request(
    url_,
    'GET',
    queryParams: queryParams_,
  );
  return ListDocumentsResponse.fromJson(
    response_ as core.Map<core.String, core.dynamic>,
  );
}