Firestore Admin v1 API - Class FirestoreAdminClientImpl (3.1.0)

public sealed class FirestoreAdminClientImpl : FirestoreAdminClient

Reference documentation and code samples for the Firestore Admin v1 API class FirestoreAdminClientImpl.

FirestoreAdmin client wrapper implementation, for convenient use.

Inheritance

Object > FirestoreAdminClient > FirestoreAdminClientImpl

Namespace

Google.Cloud.Firestore.Admin.V1

Assembly

Google.Cloud.Firestore.Admin.V1.dll

Remarks

The Cloud Firestore Admin API.

This API provides several administrative services for Cloud Firestore.

Project, Database, Namespace, Collection, Collection Group, and Document are used as defined in the Google Cloud Firestore API.

Operation: An Operation represents work being performed in the background.

The index service manages Cloud Firestore indexes.

Index creation is performed asynchronously. An Operation resource is created for each such asynchronous operation. The state of the operation (including any errors encountered) may be queried via the Operation resource.

The Operations collection provides a record of actions performed for the specified Project (including any Operations in progress). Operations are not created directly but through calls on other collections or resources.

An Operation that is done may be deleted so that it is no longer listed as part of the Operation collection. Operations are garbage collected after 30 days. By default, ListOperations will only return in progress and failed operations. To list completed operation, issue a ListOperations request with the filter done: true.

Operations are created by service FirestoreAdmin, but are accessed via service google.longrunning.Operations.

Constructors

FirestoreAdminClientImpl(FirestoreAdmin.FirestoreAdminClient, FirestoreAdminSettings, ILogger)

public FirestoreAdminClientImpl(FirestoreAdmin.FirestoreAdminClient grpcClient, FirestoreAdminSettings settings, ILogger logger)

Constructs a client wrapper for the FirestoreAdmin service, with the specified gRPC client and settings.

Parameters
NameDescription
grpcClientFirestoreAdmin.FirestoreAdminClient

The underlying gRPC client.

settingsFirestoreAdminSettings

The base FirestoreAdminSettings used within this client.

loggerILogger

Optional ILogger to use within this client.

Properties

CreateIndexOperationsClient

public override OperationsClient CreateIndexOperationsClient { get; }

The long-running operations client for CreateIndex.

Property Value
TypeDescription
OperationsClient
Overrides

ExportDocumentsOperationsClient

public override OperationsClient ExportDocumentsOperationsClient { get; }

The long-running operations client for ExportDocuments.

Property Value
TypeDescription
OperationsClient
Overrides

GrpcClient

public override FirestoreAdmin.FirestoreAdminClient GrpcClient { get; }

The underlying gRPC FirestoreAdmin client

Property Value
TypeDescription
FirestoreAdmin.FirestoreAdminClient
Overrides

ImportDocumentsOperationsClient

public override OperationsClient ImportDocumentsOperationsClient { get; }

The long-running operations client for ImportDocuments.

Property Value
TypeDescription
OperationsClient
Overrides

LocationsClient

public override LocationsClient LocationsClient { get; }

The LocationsClient associated with this client.

Property Value
TypeDescription
LocationsClient
Overrides

UpdateDatabaseOperationsClient

public override OperationsClient UpdateDatabaseOperationsClient { get; }

The long-running operations client for UpdateDatabase.

Property Value
TypeDescription
OperationsClient
Overrides

UpdateFieldOperationsClient

public override OperationsClient UpdateFieldOperationsClient { get; }

The long-running operations client for UpdateField.

Property Value
TypeDescription
OperationsClient
Overrides

Methods

CreateIndex(CreateIndexRequest, CallSettings)

public override Operation<Index, IndexOperationMetadata> CreateIndex(CreateIndexRequest request, CallSettings callSettings = null)

Creates a composite index. This returns a [google.longrunning.Operation][google.longrunning.Operation] which may be used to track the status of the creation. The metadata for the operation will be the type [IndexOperationMetadata][google.firestore.admin.v1.IndexOperationMetadata].

Parameters
NameDescription
requestCreateIndexRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Operation<Index, IndexOperationMetadata>

The RPC response.

Overrides

CreateIndexAsync(CreateIndexRequest, CallSettings)

public override async Task<Operation<Index, IndexOperationMetadata>> CreateIndexAsync(CreateIndexRequest request, CallSettings callSettings = null)

Creates a composite index. This returns a [google.longrunning.Operation][google.longrunning.Operation] which may be used to track the status of the creation. The metadata for the operation will be the type [IndexOperationMetadata][google.firestore.admin.v1.IndexOperationMetadata].

Parameters
NameDescription
requestCreateIndexRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task<Operation<Index, IndexOperationMetadata>>

A Task containing the RPC response.

Overrides

DeleteIndex(DeleteIndexRequest, CallSettings)

public override void DeleteIndex(DeleteIndexRequest request, CallSettings callSettings = null)

Deletes a composite index.

Parameters
NameDescription
requestDeleteIndexRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Overrides

DeleteIndexAsync(DeleteIndexRequest, CallSettings)

public override Task DeleteIndexAsync(DeleteIndexRequest request, CallSettings callSettings = null)

Deletes a composite index.

Parameters
NameDescription
requestDeleteIndexRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task

A Task containing the RPC response.

Overrides

ExportDocuments(ExportDocumentsRequest, CallSettings)

public override Operation<ExportDocumentsResponse, ExportDocumentsMetadata> ExportDocuments(ExportDocumentsRequest request, CallSettings callSettings = null)

Exports a copy of all or a subset of documents from Google Cloud Firestore to another storage system, such as Google Cloud Storage. Recent updates to documents may not be reflected in the export. The export occurs in the background and its progress can be monitored and managed via the Operation resource that is created. The output of an export may only be used once the associated operation is done. If an export operation is cancelled before completion it may leave partial data behind in Google Cloud Storage.

For more details on export behavior and output format, refer to: https://cloud.google.com/firestore/docs/manage-data/export-import

Parameters
NameDescription
requestExportDocumentsRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Operation<ExportDocumentsResponse, ExportDocumentsMetadata>

The RPC response.

Overrides

ExportDocumentsAsync(ExportDocumentsRequest, CallSettings)

public override async Task<Operation<ExportDocumentsResponse, ExportDocumentsMetadata>> ExportDocumentsAsync(ExportDocumentsRequest request, CallSettings callSettings = null)

Exports a copy of all or a subset of documents from Google Cloud Firestore to another storage system, such as Google Cloud Storage. Recent updates to documents may not be reflected in the export. The export occurs in the background and its progress can be monitored and managed via the Operation resource that is created. The output of an export may only be used once the associated operation is done. If an export operation is cancelled before completion it may leave partial data behind in Google Cloud Storage.

For more details on export behavior and output format, refer to: https://cloud.google.com/firestore/docs/manage-data/export-import

Parameters
NameDescription
requestExportDocumentsRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task<Operation<ExportDocumentsResponse, ExportDocumentsMetadata>>

A Task containing the RPC response.

Overrides

GetDatabase(GetDatabaseRequest, CallSettings)

public override Database GetDatabase(GetDatabaseRequest request, CallSettings callSettings = null)

Gets information about a database.

Parameters
NameDescription
requestGetDatabaseRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Database

The RPC response.

Overrides

GetDatabaseAsync(GetDatabaseRequest, CallSettings)

public override Task<Database> GetDatabaseAsync(GetDatabaseRequest request, CallSettings callSettings = null)

Gets information about a database.

Parameters
NameDescription
requestGetDatabaseRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task<Database>

A Task containing the RPC response.

Overrides

GetField(GetFieldRequest, CallSettings)

public override Field GetField(GetFieldRequest request, CallSettings callSettings = null)

Gets the metadata and configuration for a Field.

Parameters
NameDescription
requestGetFieldRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Field

The RPC response.

Overrides

GetFieldAsync(GetFieldRequest, CallSettings)

public override Task<Field> GetFieldAsync(GetFieldRequest request, CallSettings callSettings = null)

Gets the metadata and configuration for a Field.

Parameters
NameDescription
requestGetFieldRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task<Field>

A Task containing the RPC response.

Overrides

GetIndex(GetIndexRequest, CallSettings)

public override Index GetIndex(GetIndexRequest request, CallSettings callSettings = null)

Gets a composite index.

Parameters
NameDescription
requestGetIndexRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Index

The RPC response.

Overrides

GetIndexAsync(GetIndexRequest, CallSettings)

public override Task<Index> GetIndexAsync(GetIndexRequest request, CallSettings callSettings = null)

Gets a composite index.

Parameters
NameDescription
requestGetIndexRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task<Index>

A Task containing the RPC response.

Overrides

ImportDocuments(ImportDocumentsRequest, CallSettings)

public override Operation<Empty, ImportDocumentsMetadata> ImportDocuments(ImportDocumentsRequest request, CallSettings callSettings = null)

Imports documents into Google Cloud Firestore. Existing documents with the same name are overwritten. The import occurs in the background and its progress can be monitored and managed via the Operation resource that is created. If an ImportDocuments operation is cancelled, it is possible that a subset of the data has already been imported to Cloud Firestore.

Parameters
NameDescription
requestImportDocumentsRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Operation<Empty, ImportDocumentsMetadata>

The RPC response.

Overrides

ImportDocumentsAsync(ImportDocumentsRequest, CallSettings)

public override async Task<Operation<Empty, ImportDocumentsMetadata>> ImportDocumentsAsync(ImportDocumentsRequest request, CallSettings callSettings = null)

Imports documents into Google Cloud Firestore. Existing documents with the same name are overwritten. The import occurs in the background and its progress can be monitored and managed via the Operation resource that is created. If an ImportDocuments operation is cancelled, it is possible that a subset of the data has already been imported to Cloud Firestore.

Parameters
NameDescription
requestImportDocumentsRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task<Operation<Empty, ImportDocumentsMetadata>>

A Task containing the RPC response.

Overrides

ListDatabases(ListDatabasesRequest, CallSettings)

public override ListDatabasesResponse ListDatabases(ListDatabasesRequest request, CallSettings callSettings = null)

List all the databases in the project.

Parameters
NameDescription
requestListDatabasesRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
ListDatabasesResponse

The RPC response.

Overrides

ListDatabasesAsync(ListDatabasesRequest, CallSettings)

public override Task<ListDatabasesResponse> ListDatabasesAsync(ListDatabasesRequest request, CallSettings callSettings = null)

List all the databases in the project.

Parameters
NameDescription
requestListDatabasesRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task<ListDatabasesResponse>

A Task containing the RPC response.

Overrides

ListFields(ListFieldsRequest, CallSettings)

public override PagedEnumerable<ListFieldsResponse, Field> ListFields(ListFieldsRequest request, CallSettings callSettings = null)

Lists the field configuration and metadata for this database.

Currently, [FirestoreAdmin.ListFields][google.firestore.admin.v1.FirestoreAdmin.ListFields] only supports listing fields that have been explicitly overridden. To issue this query, call [FirestoreAdmin.ListFields][google.firestore.admin.v1.FirestoreAdmin.ListFields] with the filter set to indexConfig.usesAncestorConfig:false .

Parameters
NameDescription
requestListFieldsRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
PagedEnumerable<ListFieldsResponse, Field>

A pageable sequence of Field resources.

Overrides

ListFieldsAsync(ListFieldsRequest, CallSettings)

public override PagedAsyncEnumerable<ListFieldsResponse, Field> ListFieldsAsync(ListFieldsRequest request, CallSettings callSettings = null)

Lists the field configuration and metadata for this database.

Currently, [FirestoreAdmin.ListFields][google.firestore.admin.v1.FirestoreAdmin.ListFields] only supports listing fields that have been explicitly overridden. To issue this query, call [FirestoreAdmin.ListFields][google.firestore.admin.v1.FirestoreAdmin.ListFields] with the filter set to indexConfig.usesAncestorConfig:false .

Parameters
NameDescription
requestListFieldsRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
PagedAsyncEnumerable<ListFieldsResponse, Field>

A pageable asynchronous sequence of Field resources.

Overrides

ListIndexes(ListIndexesRequest, CallSettings)

public override PagedEnumerable<ListIndexesResponse, Index> ListIndexes(ListIndexesRequest request, CallSettings callSettings = null)

Lists composite indexes.

Parameters
NameDescription
requestListIndexesRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
PagedEnumerable<ListIndexesResponse, Index>

A pageable sequence of Index resources.

Overrides

ListIndexesAsync(ListIndexesRequest, CallSettings)

public override PagedAsyncEnumerable<ListIndexesResponse, Index> ListIndexesAsync(ListIndexesRequest request, CallSettings callSettings = null)

Lists composite indexes.

Parameters
NameDescription
requestListIndexesRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
PagedAsyncEnumerable<ListIndexesResponse, Index>

A pageable asynchronous sequence of Index resources.

Overrides

UpdateDatabase(UpdateDatabaseRequest, CallSettings)

public override Operation<Database, UpdateDatabaseMetadata> UpdateDatabase(UpdateDatabaseRequest request, CallSettings callSettings = null)

Updates a database.

Parameters
NameDescription
requestUpdateDatabaseRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Operation<Database, UpdateDatabaseMetadata>

The RPC response.

Overrides

UpdateDatabaseAsync(UpdateDatabaseRequest, CallSettings)

public override async Task<Operation<Database, UpdateDatabaseMetadata>> UpdateDatabaseAsync(UpdateDatabaseRequest request, CallSettings callSettings = null)

Updates a database.

Parameters
NameDescription
requestUpdateDatabaseRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task<Operation<Database, UpdateDatabaseMetadata>>

A Task containing the RPC response.

Overrides

UpdateField(UpdateFieldRequest, CallSettings)

public override Operation<Field, FieldOperationMetadata> UpdateField(UpdateFieldRequest request, CallSettings callSettings = null)

Updates a field configuration. Currently, field updates apply only to single field index configuration. However, calls to [FirestoreAdmin.UpdateField][google.firestore.admin.v1.FirestoreAdmin.UpdateField] should provide a field mask to avoid changing any configuration that the caller isn't aware of. The field mask should be specified as: { paths: &quot;index_config&quot; }.

This call returns a [google.longrunning.Operation][google.longrunning.Operation] which may be used to track the status of the field update. The metadata for the operation will be the type [FieldOperationMetadata][google.firestore.admin.v1.FieldOperationMetadata].

To configure the default field settings for the database, use the special Field with resource name: projects/{project_id}/databases/{database_id}/collectionGroups/__default__/fields/*.

Parameters
NameDescription
requestUpdateFieldRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Operation<Field, FieldOperationMetadata>

The RPC response.

Overrides

UpdateFieldAsync(UpdateFieldRequest, CallSettings)

public override async Task<Operation<Field, FieldOperationMetadata>> UpdateFieldAsync(UpdateFieldRequest request, CallSettings callSettings = null)

Updates a field configuration. Currently, field updates apply only to single field index configuration. However, calls to [FirestoreAdmin.UpdateField][google.firestore.admin.v1.FirestoreAdmin.UpdateField] should provide a field mask to avoid changing any configuration that the caller isn't aware of. The field mask should be specified as: { paths: &quot;index_config&quot; }.

This call returns a [google.longrunning.Operation][google.longrunning.Operation] which may be used to track the status of the field update. The metadata for the operation will be the type [FieldOperationMetadata][google.firestore.admin.v1.FieldOperationMetadata].

To configure the default field settings for the database, use the special Field with resource name: projects/{project_id}/databases/{database_id}/collectionGroups/__default__/fields/*.

Parameters
NameDescription
requestUpdateFieldRequest

The request object containing all of the parameters for the API call.

callSettingsCallSettings

If not null, applies overrides to this RPC call.

Returns
TypeDescription
Task<Operation<Field, FieldOperationMetadata>>

A Task containing the RPC response.

Overrides