Package google.firestore.admin.v1

Índice

Administrador do Firestore

A API Cloud Firestore Admin.

Essa API fornece vários serviços administrativos para o Cloud Firestore.

Projeto, banco de dados, namespace, coleção, grupo de coleções e documento são usados conforme definido na API Google Cloud Firestore.

Operação: uma operação representa o trabalho que está sendo realizado em segundo plano.

O serviço de índice gerencia índices do Cloud Firestore.

A criação do índice é realizada de forma assíncrona. Um recurso Operação é criado para cada operação assíncrona. O estado da operação (incluindo os erros encontrados) pode ser consultado por meio do recurso Operação.

A coleção Operations fornece um registro das ações realizadas para o projeto especificado (incluindo qualquer operação em andamento). As operações não são criadas diretamente, mas por chamadas em outras coleções ou recursos.

Uma operação realizada pode ser excluída para que não seja mais listada como parte da coleção "Operação". As operações são coletadas como lixo após 30 dias. Por padrão, ListOperations retorna apenas operações em andamento e com falha. Para listar a operação concluída, emita uma solicitação ListOperations com o filtro done: true.

As operações são criadas pelo serviço FirestoreAdmin, mas são acessadas pelo serviço google.longrunning.Operations.

CreateBackupSchedule

rpc CreateBackupSchedule(CreateBackupScheduleRequest) returns (BackupSchedule)

Cria uma programação de backup em um banco de dados. É possível configurar no máximo duas programações de backup em um banco de dados: uma diária e outra semanal.

Escopos de autorização

Requer um dos seguintes escopos de OAuth:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

Para saber mais, consulte a Visão geral da autenticação.

CreateDatabase

rpc CreateDatabase(CreateDatabaseRequest) returns (Operation)

Cria um banco de dados.

Escopos de autorização

Requer um dos seguintes escopos de OAuth:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

Para saber mais, consulte a Visão geral da autenticação.

CreateIndex

rpc CreateIndex(CreateIndexRequest) returns (Operation)

Cria um índice composto. Isso retorna uma google.longrunning.Operation, que pode ser usada para rastrear o status da criação. Os metadados da operação serão do tipo IndexOperationMetadata.

Escopos de autorização

Requer um dos seguintes escopos de OAuth:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

Para saber mais, consulte a Visão geral da autenticação.

DeleteBackup

rpc DeleteBackup(DeleteBackupRequest) returns (Empty)

Exclui um backup.

Escopos de autorização

Requer um dos seguintes escopos de OAuth:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

Para saber mais, consulte a Visão geral da autenticação.

ExcluirBackupProgramação

rpc DeleteBackupSchedule(DeleteBackupScheduleRequest) returns (Empty)

Exclui uma programação de backup.

Escopos de autorização

Requer um dos seguintes escopos de OAuth:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

Para saber mais, consulte a Visão geral da autenticação.

ExcluirBanco de Dados

rpc DeleteDatabase(DeleteDatabaseRequest) returns (Operation)

Exclui um banco de dados.

Escopos de autorização

Requer um dos seguintes escopos de OAuth:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

Para saber mais, consulte a Visão geral da autenticação.

DeleteIndex

rpc DeleteIndex(DeleteIndexRequest) returns (Empty)

Exclui um índice composto.

Escopos de autorização

Requer um dos seguintes escopos de OAuth:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

Para saber mais, consulte a Visão geral da autenticação.

ExportarDocumentos

rpc ExportDocuments(ExportDocumentsRequest) returns (Operation)

Exporta uma cópia de todos ou de um subconjunto de documentos do Google Cloud Firestore para outro sistema de armazenamento, como o Google Cloud Storage. As atualizações recentes nos documentos podem não aparecer na exportação. A exportação ocorre em segundo plano, e o progresso dela pode ser monitorado e gerenciado pelo recurso de operação criado. O resultado de uma exportação só poderá ser usado quando a operação associada for concluída. Se uma operação de exportação for cancelada antes da conclusão, ela poderá deixar dados parciais para trás no Google Cloud Storage.

Para mais detalhes sobre o comportamento de exportação e o formato de saída, consulte: https://cloud.google.com/firestore/docs/manage-data/export-import

Escopos de autorização

Requer um dos seguintes escopos de OAuth:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

Para saber mais, consulte a Visão geral da autenticação.

GetBackup

rpc GetBackup(GetBackupRequest) returns (Backup)

Recebe informações sobre um backup.

Escopos de autorização

Requer um dos seguintes escopos de OAuth:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

Para saber mais, consulte a Visão geral da autenticação.

GetBackupSchedule

rpc GetBackupSchedule(GetBackupScheduleRequest) returns (BackupSchedule)

Recebe informações sobre uma programação de backup.

Escopos de autorização

Requer um dos seguintes escopos de OAuth:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

Para saber mais, consulte a Visão geral da autenticação.

GetDatabase

rpc GetDatabase(GetDatabaseRequest) returns (Database)

Recebe informações sobre um banco de dados.

Escopos de autorização

Requer um dos seguintes escopos de OAuth:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

Para saber mais, consulte a Visão geral da autenticação.

GetField

rpc GetField(GetFieldRequest) returns (Field)

Recebe os metadados e a configuração de um campo.

Escopos de autorização

Requer um dos seguintes escopos de OAuth:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

Para saber mais, consulte a Visão geral da autenticação.

GetIndex

rpc GetIndex(GetIndexRequest) returns (Index)

Recebe um índice composto.

Escopos de autorização

Requer um dos seguintes escopos de OAuth:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

Para saber mais, consulte a Visão geral da autenticação.

ImportDocuments

rpc ImportDocuments(ImportDocumentsRequest) returns (Operation)

Importa documentos para o Google Cloud Firestore. Os documentos existentes com o mesmo nome serão substituídos. A importação ocorre em segundo plano, e o progresso dela pode ser monitorado e gerenciado pelo recurso de operação criado. Se uma operação ImportDocuments for cancelada, é possível que um subconjunto dos dados já tenha sido importado para o Cloud Firestore.

Escopos de autorização

Requer um dos seguintes escopos de OAuth:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

Para saber mais, consulte a Visão geral da autenticação.

ListBackupSchedules

rpc ListBackupSchedules(ListBackupSchedulesRequest) returns (ListBackupSchedulesResponse)

Listar programações de backup.

Escopos de autorização

Requer um dos seguintes escopos de OAuth:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

Para saber mais, consulte a Visão geral da autenticação.

ListBackups

rpc ListBackups(ListBackupsRequest) returns (ListBackupsResponse)

Lista todos os backups.

Escopos de autorização

Requer um dos seguintes escopos de OAuth:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

Para saber mais, consulte a Visão geral da autenticação.

ListarBancos de dados

rpc ListDatabases(ListDatabasesRequest) returns (ListDatabasesResponse)

Liste todos os bancos de dados no projeto.

Escopos de autorização

Requer um dos seguintes escopos de OAuth:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

Para saber mais, consulte a Visão geral da autenticação.

Campos de lista

rpc ListFields(ListFieldsRequest) returns (ListFieldsResponse)

Lista a configuração de campo e os metadados para este banco de dados.

No momento, FirestoreAdmin.ListFields só é compatível com a listagem de campos que foram explicitamente modificados. Para emitir essa consulta, chame FirestoreAdmin.ListFields com o filtro definido como indexConfig.usesAncestorConfig:false ou ttlConfig:*.

Escopos de autorização

Requer um dos seguintes escopos de OAuth:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

Para saber mais, consulte a Visão geral da autenticação.

Índices da lista

rpc ListIndexes(ListIndexesRequest) returns (ListIndexesResponse)

Lista os índices compostos.

Escopos de autorização

Requer um dos seguintes escopos de OAuth:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

Para saber mais, consulte a Visão geral da autenticação.

RestoreDatabase

rpc RestoreDatabase(RestoreDatabaseRequest) returns (Operation)

Cria um novo banco de dados restaurando a partir de um backup existente.

O novo banco de dados precisa estar na mesma região de nuvem ou local multirregional que o backup atual. O comportamento é semelhante a [FirestoreAdmin.CreateDatabase][google.firestore.admin.v1.CreateDatabase], exceto que, em vez de criar um novo banco de dados vazio, um novo banco de dados é criado com o tipo de banco de dados, a configuração de índice e os documentos de um backup existente.

O long-running operation pode ser usado para acompanhar o progresso da restauração, sendo o tipo de campo metadata da operação o RestoreDatabaseMetadata. O tipo response será o Database se a restauração for bem-sucedida. O novo banco de dados não será legível nem gravável até que a LRO seja concluída.

Escopos de autorização

Requer um dos seguintes escopos de OAuth:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

Para saber mais, consulte a Visão geral da autenticação.

AtualizarProgramação

rpc UpdateBackupSchedule(UpdateBackupScheduleRequest) returns (BackupSchedule)

Atualiza uma programação de backup.

Escopos de autorização

Requer um dos seguintes escopos de OAuth:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

Para saber mais, consulte a Visão geral da autenticação.

UpdateDatabase

rpc UpdateDatabase(UpdateDatabaseRequest) returns (Operation)

Atualiza um banco de dados.

Escopos de autorização

Requer um dos seguintes escopos de OAuth:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

Para saber mais, consulte a Visão geral da autenticação.

UpdateField

rpc UpdateField(UpdateFieldRequest) returns (Operation)

Atualiza uma configuração de campo. Atualmente, as atualizações de campo se aplicam apenas à configuração de índice de campo único. No entanto, as chamadas para FirestoreAdmin.UpdateField precisam fornecer uma máscara de campo para evitar mudanças de qualquer configuração que o autor da chamada não conheça. A máscara de campo precisa ser especificada como: { paths: "index_config" }.

Essa chamada retorna um google.longrunning.Operation que pode ser usado para rastrear o status da atualização do campo. Os metadados da operação serão do tipo FieldOperationMetadata.

Para definir as configurações de campo padrão para o banco de dados, use o Field especial com o nome de recurso: projects/{project_id}/databases/{database_id}/collectionGroups/__default__/fields/*.

Escopos de autorização

Requer um dos seguintes escopos de OAuth:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

Para saber mais, consulte a Visão geral da autenticação.

Backup

Um backup de um banco de dados do Cloud Firestore.

O backup contém todos os documentos e configurações de índice do banco de dados em um momento específico.

Campos
name

string

Apenas saída. O nome de recurso exclusivo do backup.

O formato é projects/{project}/locations/{location}/backups/{backup}.

database

string

Apenas saída. Nome do banco de dados do Firestore de origem do backup.

O formato é projects/{project}/databases/{database}.

database_uid

string

Apenas saída. O UUID4 gerado pelo sistema para o banco de dados do Firestore de onde vem o backup.

snapshot_time

Timestamp

Apenas saída. No momento, o backup contém uma cópia externa consistente do banco de dados.

expire_time

Timestamp

Apenas saída. O carimbo de data/hora em que o backup expira.

state

State

Apenas saída. O estado atual do backup.

Estado

Indique o estado atual do backup.

Tipos enumerados
STATE_UNSPECIFIED O estado não foi especificado.
CREATING O backup pendente ainda está sendo criado. As operações no backup serão rejeitadas neste estado.
READY O backup foi concluído e está pronto para uso.
NOT_AVAILABLE O backup não está disponível no momento.

Programa de backup

Uma programação de backup para um banco de dados do Cloud Firestore.

Esse recurso pertence ao banco de dados do qual está fazendo backup e é excluído com o banco de dados. Mas os backups reais não são.

Campos
name

string

Apenas saída. O identificador exclusivo da programação de backup em todos os locais e bancos de dados de um determinado projeto.

Isso será atribuído automaticamente.

O formato é projects/{project}/databases/{database}/backupSchedules/{backup_schedule}

create_time

Timestamp

Apenas saída. O carimbo de data/hora em que a programação de backup foi criada e está em vigor desde então.

Nenhum backup será criado para esta programação antes desse período.

update_time

Timestamp

Apenas saída. O carimbo de data/hora em que essa programação de backup foi atualizada mais recentemente. Quando uma programação de backup é criada pela primeira vez, é o mesmo que create_time.

retention

Duration

Em que momento relativo no futuro, comparado com a hora de criação, o backup deve ser excluído, por exemplo, manter backups por sete dias.

O período de armazenamento máximo permitido é de 14 semanas.

Campo de união recurrence. Um campo oneof para representar quando os backups serão feitos. recurrence só pode ser de um dos seguintes tipos:
daily_recurrence

DailyRecurrence

Para uma programação que é executada diariamente.

weekly_recurrence

WeeklyRecurrence

Para uma programação executada semanalmente em um dia específico.

CreateBackupScheduleRequest

A solicitação para FirestoreAdmin.CreateBackupSchedule.

Campos
parent

string

Obrigatório. O banco de dados pai.

Formato projects/{project}/databases/{database}

backup_schedule

BackupSchedule

Obrigatório. A programação de backup a ser criada.

CreateDatabaseMetadata

Esse tipo não tem campos.

Metadados relacionados à operação de criação do banco de dados.

CreateDatabaseRequest

A solicitação para FirestoreAdmin.CreateDatabase.

Campos
parent

string

Obrigatório. Um nome pai do formulário projects/{project_id}

database

Database

Obrigatório. O banco de dados a ser criado.

database_id

string

Obrigatório. O ID a ser usado no banco de dados, que se tornará o componente final do nome do recurso do banco de dados.

Esse valor precisa ter de 4 a 63 caracteres. Os caracteres válidos são /[a-z][0-9]-/ com o primeiro caractere uma letra e o último uma letra ou um número. Não pode ser semelhante a UUID /[0-9a-f]{8}(-[0-9a-f]{4}){3}-[0-9a-f]{12}/.

O ID do banco de dados "(padrão)" também é válido.

CreateIndexRequest

A solicitação para FirestoreAdmin.CreateIndex.

Campos
parent

string

Obrigatório. Um nome pai do formulário projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}

index

Index

Obrigatório. O índice composto a ser criado.

Recorrência diária

Esse tipo não tem campos.

Representa uma programação recorrente que é executada todos os dias.

O fuso horário é UTC.

Banco de dados

Um banco de dados do Cloud Firestore.

Campos
name

string

O nome do recurso do banco de dados. Formato: projects/{project}/databases/{database}

uid

string

Apenas saída. O UUID4 gerado pelo sistema para este banco de dados.

create_time

Timestamp

Apenas saída. O carimbo de data/hora em que o banco de dados foi criado. Bancos de dados criados antes de 2016 não preenchem create_time.

update_time

Timestamp

Apenas saída. O carimbo de data/hora em que esse banco de dados foi atualizado pela última vez. Observe que isso inclui apenas atualizações ao recurso do banco de dados e não aos dados contidos nele.

delete_time

Timestamp

Apenas saída. O carimbo de data/hora em que o banco de dados foi excluído. Defina apenas se o banco de dados tiver sido excluído.

location_id

string

O local do banco de dados. Os locais disponíveis estão listados em https://cloud.google.com/firestore/docs/locations.

type

DatabaseType

O tipo de banco de dados. Consulte https://cloud.google.com/datastore/docs/firestore-or-datastore para obter informações sobre como escolher.

concurrency_mode

ConcurrencyMode

O modo de controle de simultaneidade a ser usado neste banco de dados.

version_retention_period

Duration

Apenas saída. O período em que as versões anteriores dos dados são retidas no banco de dados.

Qualquer read ou query pode especificar um read_time dentro dessa janela e lerá o estado do banco de dados naquele momento.

Se o recurso PITR estiver ativado, o período de armazenamento será de sete dias. Caso contrário, o período de armazenamento será de uma hora.

earliest_version_time

Timestamp

Apenas saída. O carimbo de data/hora mais antigo em que versões mais antigas dos dados podem ser lidas do banco de dados. Consulte [version_retention_period] acima. Esse campo é preenchido com now - version_retention_period.

Esse valor é atualizado continuamente e fica obsoleto no momento em que é consultado. Se você estiver usando esse valor para recuperar dados, não deixe de considerar o momento entre o momento em que o valor é consultado e o momento em que você inicia a recuperação.

point_in_time_recovery_enablement

PointInTimeRecoveryEnablement

Define se o recurso PITR deve ser ativado neste banco de dados.

app_engine_integration_mode

AppEngineIntegrationMode

O modo de integração do App Engine a ser usado para este banco de dados.

key_prefix

string

Apenas saída. O key_prefix para este banco de dados. Esse key_prefix é usado com o ID do projeto ("~") para criar o ID do aplicativo retornado das APIs do Cloud Datastore nos ambientes de execução de primeira geração do Google App Engine.

Esse valor pode estar vazio. Nesse caso, o appid a ser usado para chaves codificadas em URL é o project_id (por exemplo, foo em vez de v~foo).

delete_protection_state

DeleteProtectionState

Estado da proteção contra exclusão do banco de dados.

cmek_config

CmekConfig

Opcional. "Presença" indica que a CMEK está ativada para este banco de dados.

previous_id

string

Apenas saída. O ID do banco de dados anterior do recurso de banco de dados. Este campo só é preenchido para bancos de dados excluídos.

etag

string

Essa soma de verificação é calculada pelo servidor com base no valor de outros campos e pode ser enviada em solicitações de atualização e exclusão para garantir que o cliente tenha um valor atualizado antes de prosseguir.

AppEngineIntegrationMode

O tipo de modo de integração do App Engine.

Tipos enumerados
APP_ENGINE_INTEGRATION_MODE_UNSPECIFIED Não utilizado.
ENABLED Se houver um aplicativo do App Engine na mesma região desse banco de dados, a configuração do App Engine afetará o banco de dados. Isso inclui desativar o aplicativo e o banco de dados, bem como as gravações no banco de dados.
DISABLED

O App Engine não afeta a capacidade desse banco de dados de atender às solicitações.

Essa é a configuração padrão para bancos de dados criados com a API Firestore.

Configuração Cmek

A configuração da chave de criptografia gerenciada pelo cliente (CMEK) para um banco de dados do Firestore. Se ausente, o banco de dados é protegido pela chave de criptografia padrão do Google.

Campos
kms_key_name

string

Obrigatório. Somente as chaves no mesmo local desse banco de dados podem ser usadas para criptografia.

Para a multirregião nam5 do Firestore, isso corresponde à multirregião us do Cloud KMS. Para a multirregião eur3 do Firestore, isso corresponde à Europa multirregional do Cloud KMS. Consulte https://cloud.google.com/kms/docs/locations.

O formato esperado é projects/{project_id}/locations/{kms_location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}.

active_key_version[]

string

Apenas saída. Versões de chaves KMS em uso. Durante a rotação de chaves, pode haver várias versões de chaves em uso.

O formato esperado é projects/{project_id}/locations/{kms_location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}/cryptoKeyVersions/{key_version}.

Modo de simultaneidade

O tipo de modo de controle de simultaneidade para transações.

Tipos enumerados
CONCURRENCY_MODE_UNSPECIFIED Não utilizado.
OPTIMISTIC Use o controle de simultaneidade otimista por padrão. Esse modo está disponível para bancos de dados do Cloud Firestore.
PESSIMISTIC

Usar o controle de simultaneidade pessimista por padrão. Esse modo está disponível para bancos de dados do Cloud Firestore.

Essa é a configuração padrão do Cloud Firestore.

OPTIMISTIC_WITH_ENTITY_GROUPS

Use o controle de simultaneidade otimista com grupos de entidades por padrão.

Esse é o único modo disponível para o Cloud Datastore.

Esse modo também está disponível para o Cloud Firestore com o modo Datastore, mas não é recomendado.

DatabaseType

O tipo de banco de dados. Consulte https://cloud.google.com/datastore/docs/firestore-or-datastore para obter informações sobre como escolher.

As alterações de modo só são permitidas se o banco de dados estiver vazio.

Tipos enumerados
DATABASE_TYPE_UNSPECIFIED O valor padrão. Esse valor será usado se o tipo do banco de dados for omitido.
FIRESTORE_NATIVE Modo nativo do Firestore
DATASTORE_MODE Firestore no modo Datastore.

DeleteProtectionState

O estado de proteção contra exclusão do banco de dados.

Tipos enumerados
DELETE_PROTECTION_STATE_UNSPECIFIED O valor padrão. O tipo de proteção contra exclusão não está especificado
DELETE_PROTECTION_DISABLED A proteção contra exclusão está desativada
DELETE_PROTECTION_ENABLED A proteção contra exclusão está ativada

Ativação de recuperação pontual

Ativação do recurso de recuperação pontual.

Tipos enumerados
POINT_IN_TIME_RECOVERY_ENABLEMENT_UNSPECIFIED Não utilizado.
POINT_IN_TIME_RECOVERY_ENABLED

As leituras são compatíveis com versões selecionadas dos dados dos últimos sete dias:

  • Faz leituras em qualquer carimbo de data/hora da última hora
  • Lê resumos de 1 minuto além de 1 hora e dentro de 7 dias

version_retention_period e earliest_version_time podem ser usados para determinar as versões compatíveis.

POINT_IN_TIME_RECOVERY_DISABLED Qualquer versão dos dados da última hora aceita leituras.

DeleteBackupRequest

A solicitação para FirestoreAdmin.DeleteBackup.

Campos
name

string

Obrigatório. Nome do backup a ser excluído.

formato é projects/{project}/locations/{location}/backups/{backup}.

DeleteBackupScheduleRequest

A solicitação para [FirestoreAdmin.DeleteBackupSchedules][].

Campos
name

string

Obrigatório. O nome da programação de backup.

Formato projects/{project}/databases/{database}/backupSchedules/{backup_schedule}

DeleteDatabaseMetadata

Esse tipo não tem campos.

Metadados relacionados à operação de exclusão do banco de dados.

DeleteDatabaseRequest

A solicitação para FirestoreAdmin.DeleteDatabase.

Campos
name

string

Obrigatório. Um nome no formato projects/{project_id}/databases/{database_id}

etag

string

A etag atual do banco de dados. Se uma etag for fornecida e não corresponder à etag atual do banco de dados, a exclusão será bloqueada e o erro FAILED_PRECONDITION será retornado.

DeleteIndexRequest

A solicitação para FirestoreAdmin.DeleteIndex.

Campos
name

string

Obrigatório. Um nome no formato projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}/indexes/{index_id}

ExportDocumentsMetadata

Metadados de google.longrunning.Operation resultados de FirestoreAdmin.ExportDocuments.

Campos
start_time

Timestamp

Hora em que a operação foi iniciada.

end_time

Timestamp

A hora em que essa operação foi concluída. Não será definido se a operação ainda estiver em andamento.

operation_state

OperationState

O estado da operação de exportação.

progress_documents

Progress

O progresso, em documentos, dessa operação.

progress_bytes

Progress

O progresso, em bytes, dessa operação.

collection_ids[]

string

Quais IDs de coleções estão sendo exportados.

output_uri_prefix

string

Para onde os documentos estão sendo exportados.

namespace_ids[]

string

Quais IDs de namespace estão sendo exportados.

snapshot_time

Timestamp

O carimbo de data/hora que corresponde à versão do banco de dados que está sendo exportado. Se não for especificado, não haverá garantias de consistência dos documentos que estão sendo exportados.

ExportDocumentsRequest

A solicitação para FirestoreAdmin.ExportDocuments.

Campos
name

string

Obrigatório. Banco de dados a ser exportado. Precisa estar no formato: projects/{project_id}/databases/{database_id}.

collection_ids[]

string

Quais IDs de coleções serão exportados. "Não especificado" significa todas as coleções.

output_uri_prefix

string

O URI de saída. No momento, só oferece suporte a URIs do Google Cloud Storage no formato: gs://BUCKET_NAME[/NAMESPACE_PATH], em que BUCKET_NAME é o nome do bucket do Google Cloud Storage e NAMESPACE_PATH é um caminho de namespace opcional do Google Cloud Storage. Ao escolher um nome, considere as diretrizes de nomenclatura do Google Cloud Storage: https://cloud.google.com/storage/docs/naming. Se o URI for um bucket (sem caminho de namespace), um prefixo será gerado com base no horário de início.

namespace_ids[]

string

Uma lista vazia representa todos os namespaces. Esse é o uso preferencial para bancos de dados que não usam namespaces.

Um elemento de string vazio representa o namespace padrão. Isso deve ser usado se o banco de dados tiver dados em namespaces não padrão, mas não quiser incluí-los. Cada namespace nessa lista precisa ser exclusivo.

snapshot_time

Timestamp

O carimbo de data/hora que corresponde à versão do banco de dados a ser exportado. O carimbo de data/hora precisa estar no passado, arredondado para os minutos e, no máximo, earliestVersionTime. Se especificado, os documentos exportados representam uma visualização consistente do banco de dados no momento fornecido. Caso contrário, não há garantias de consistência dos documentos exportados.

ExportDocumentsResponse

Retornado no campo de resposta google.longrunning.Operation.

Campos
output_uri_prefix

string

Localização dos arquivos de saída. Isso pode ser usado para iniciar uma importação para o Cloud Firestore (este ou outro projeto) depois que a operação for concluída com êxito.

Field

Representa um único campo no banco de dados.

Os campos são agrupados por "Grupo de coleções", que representa todas as coleções no banco de dados com o mesmo ID.

Campos
name

string

Obrigatório. Um nome de campo do formulário projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}/fields/{field_path}

Um caminho de campo pode ser um nome de campo simples (por exemplo, address) ou um caminho para campos em map_value (por exemplo, address.city) ou um caminho de campo especial. O único campo especial válido é *, que representa qualquer campo.

Os caminhos de campo podem ser citados usando (backtick). The only character that needs to be escaped within a quoted field path is the backtick character itself, escaped using a backslash. Special characters in field paths that must be quoted include:*,., ``` (backtick),[,]`, além de caracteres simbólicos ASCII.

Exemplos: os comentários aqui são escritos na sintaxe de markdown, portanto há uma camada adicional de crases para representar um bloco de código. \address.city`represents a field namedaddress.city, not the map key cityin the fieldaddress. `*`represents a field named*`, nenhum campo.

Um Field especial contém as configurações de indexação padrão para todos os campos. O nome do recurso deste campo é: projects/{project_id}/databases/{database_id}/collectionGroups/__default__/fields/* Os índices definidos neste Field serão aplicados a todos os campos que não tiverem sua própria configuração de índice Field.

index_config

IndexConfig

A configuração de índice deste campo. Se não for definida, a indexação de campo será revertida para a configuração definida por ancestor_field. Para remover explicitamente todos os índices deste campo, especifique uma configuração de índice com uma lista vazia de índices.

ttl_config

TtlConfig

A configuração de TTL deste Field. Definir ou cancelar a configuração vai ativar ou desativar o TTL para documentos que tenham esse Field.

IndexConfig

A configuração de índice deste campo.

Campos
indexes[]

Index

Os índices compatíveis com este campo.

uses_ancestor_config

bool

Apenas saída. Quando verdadeiro, a configuração de índice de Field é definida com base na configuração especificada por ancestor_field. Quando falso, a configuração de índice de Field é definida explicitamente.

ancestor_field

string

Apenas saída. Especifica o nome do recurso do Field em que a configuração de índice desse campo é definida (quando uses_ancestor_config é verdadeiro) ou do qual seria definida se o campo não tivesse configuração de índice (quando uses_ancestor_config é falso).

reverting

bool

Somente saída. Quando verdadeiro, a configuração do índice de Field está em processo de reversão. Depois de concluída, a configuração do índice vai passar para o mesmo estado do campo especificado por ancestor_field. A partir de então, uses_ancestor_config será true, e reverting será false.

TtlConfig

A configuração de time to live (TTL) dos documentos com esse Field definido.

O armazenamento de um valor de carimbo de data/hora em um campo com TTL ativado será tratado como o tempo de expiração absoluto do documento. Valores de carimbo de data/hora no passado indicam que o documento está qualificado para expiração imediata. Usar qualquer outro tipo de dados ou deixar o campo ausente desativará a expiração para o documento individual.

Campos
state

State

Apenas saída. O estado da configuração do TTL.

Estado

O estado de aplicação da configuração de TTL a todos os documentos.

Tipos enumerados
STATE_UNSPECIFIED O estado não foi especificado ou é desconhecido.
CREATING O TTL está sendo aplicado. Há uma operação ativa de longa duração para rastrear a alteração. Os documentos recém-gravados terão TTLs aplicados conforme solicitado. Os TTLs solicitados nos documentos existentes ainda estão sendo processados. Quando os TTLs de todos os documentos existentes tiverem sido processados, o estado será movido para "ACTIVE".
ACTIVE O TTL está ativo para todos os documentos.
NEEDS_REPAIR A configuração de TTL não pôde ser ativada para todos os documentos existentes. Os documentos recém-gravados continuarão com o TTL aplicado. A LRO retornada na última tentativa de ativar o TTL para este Field falhou e pode ter mais detalhes.

FieldOperationMetadata

Metadados de google.longrunning.Operation resultados de FirestoreAdmin.UpdateField.

Campos
start_time

Timestamp

Hora em que a operação foi iniciada.

end_time

Timestamp

A hora em que essa operação foi concluída. Não será definido se a operação ainda estiver em andamento.

field

string

O recurso de campo em que esta operação está agindo. Exemplo: projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}/fields/{field_path}

index_config_deltas[]

IndexConfigDelta

Uma lista de IndexConfigDelta, que descreve a intenção da operação.

state

OperationState

O estado da operação.

progress_documents

Progress

O progresso, em documentos, dessa operação.

progress_bytes

Progress

O progresso, em bytes, dessa operação.

ttl_config_delta

TtlConfigDelta

Descreve os deltas da configuração de TTL.

IndexConfigDelta

Informações sobre uma mudança na configuração do índice.

Campos
change_type

ChangeType

Especifica como o índice está mudando.

index

Index

O índice que está sendo alterado.

ChangeType

Especifica como o índice está mudando.

Tipos enumerados
CHANGE_TYPE_UNSPECIFIED O tipo de alteração não é especificado ou conhecido.
ADD O índice de campo único está sendo adicionado.
REMOVE O índice de campo único está sendo removido.

TtlConfigDelta

Informações sobre uma alteração na configuração de TTL.

Campos
change_type

ChangeType

Especifica como a configuração do TTL está mudando.

ChangeType

Especifica como a configuração do TTL está mudando.

Tipos enumerados
CHANGE_TYPE_UNSPECIFIED O tipo de alteração não é especificado ou conhecido.
ADD A configuração de TTL está sendo adicionada.
REMOVE A configuração de TTL está sendo removida.

GetBackupRequest

A solicitação para FirestoreAdmin.GetBackup.

Campos
name

string

Obrigatório. Nome do backup a ser buscado.

O formato é projects/{project}/locations/{location}/backups/{backup}.

GetBackupScheduleRequest

A solicitação para FirestoreAdmin.GetBackupSchedule.

Campos
name

string

Obrigatório. O nome da programação de backup.

Formato projects/{project}/databases/{database}/backupSchedules/{backup_schedule}

GetDatabaseRequest

A solicitação para FirestoreAdmin.GetDatabase.

Campos
name

string

Obrigatório. Um nome no formato projects/{project_id}/databases/{database_id}

GetFieldRequest

A solicitação para FirestoreAdmin.GetField.

Campos
name

string

Obrigatório. Um nome no formato projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}/fields/{field_id}

GetIndexRequest

A solicitação para FirestoreAdmin.GetIndex.

Campos
name

string

Obrigatório. Um nome no formato projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}/indexes/{index_id}

ImportDocumentsMetadata

Metadados de google.longrunning.Operation resultados de FirestoreAdmin.ImportDocuments.

Campos
start_time

Timestamp

Hora em que a operação foi iniciada.

end_time

Timestamp

A hora em que essa operação foi concluída. Não será definido se a operação ainda estiver em andamento.

operation_state

OperationState

O estado da operação de importação.

progress_documents

Progress

O progresso, em documentos, dessa operação.

progress_bytes

Progress

O progresso, em bytes, dessa operação.

collection_ids[]

string

Quais IDs de coleções estão sendo importados.

input_uri_prefix

string

O local dos documentos que estão sendo importados.

namespace_ids[]

string

Quais IDs de namespace estão sendo importados.

ImportDocumentsRequest

A solicitação para FirestoreAdmin.ImportDocuments.

Campos
name

string

Obrigatório. Banco de dados para onde importar. Precisa estar no formato: projects/{project_id}/databases/{database_id}.

collection_ids[]

string

Os IDs de coleções a serem importados. Não especificado significa que todas as coleções incluídas na importação.

input_uri_prefix

string

Local dos arquivos exportados. Ele precisa corresponder ao output_uri_prefix de um ExportDocumentsResponse de uma exportação concluída. Consulte: google.firestore.admin.v1.ExportDocumentsResponse.output_uri_prefix.

namespace_ids[]

string

Uma lista vazia representa todos os namespaces. Esse é o uso preferencial para bancos de dados que não usam namespaces.

Um elemento de string vazio representa o namespace padrão. Isso deve ser usado se o banco de dados tiver dados em namespaces não padrão, mas não quiser incluí-los. Cada namespace nessa lista precisa ser exclusivo.

Índice

Com os índices do Cloud Firestore, é possível realizar consultas simples e complexas em documentos de um banco de dados.

Campos
name

string

Apenas saída. Um nome definido pelo servidor para este índice. A forma desse nome para índices compostos será: projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}/indexes/{composite_index_id}. Para índices de campo único, esse campo estará vazio.

query_scope

QueryScope

Os índices com um escopo de consulta de coleção especificado permitem fazer consultas em uma coleção que é filha de um documento específico, especificada no momento da consulta e que tem o mesmo ID de coleção.

Índices com um escopo de consulta de grupo de coleções especificado permitem consultas em todas as coleções descendentes de um documento específico, especificado no momento da consulta e que têm o mesmo ID de coleção que este índice.

api_scope

ApiScope

O escopo da API suportado por este índice.

fields[]

IndexField

Os campos suportados por este índice.

Para índices compostos, isso requer no mínimo 2 e no máximo 100 campos. A última entrada de campo é sempre para o caminho do campo __name__. Se, na criação, __name__ não tiver sido especificado como o último campo, ele será adicionado automaticamente com a mesma direção do último campo definido. Se o campo final em um índice composto não for direcional, o __name__ será ordenado ASCENDING (a menos que especificado explicitamente).

Para índices de campo único, será sempre exatamente uma entrada com um caminho de campo igual ao caminho do campo associado.

state

State

Apenas saída. O estado de exibição do índice.

Escopo da API

O escopo da API define as APIs (nativas do Firestore ou Firestore no modo Datastore) com suporte para consultas.

Tipos enumerados
ANY_API O índice só pode ser usado pela API de consulta nativa do Firestore. Esse é o padrão.
DATASTORE_MODE_API O índice só pode ser usado pelo Firestore na API de consulta do modo Datastore.

Campo de índice

Um campo em um índice. O field_path descreve qual campo é indexado, o value_mode descreve como o valor do campo é indexado.

Campos
field_path

string

Pode ser name. Para índices de campo único, ele precisa corresponder ao nome do campo ou pode ser omitido.

Campo de união value_mode. Como o valor do campo é indexado. value_mode só pode ser de um dos seguintes tipos:
order

Order

Indica que este campo é compatível com a ordenação pela ordem especificada ou comparação usando =, !=, <, <=, >, >=.

array_config

ArrayConfig

Indica que o campo é compatível com operações em array_values.

vector_config

VectorConfig

Indica que este campo aceita operações de vizinho e distância mais próximas no vetor.

ArrayConfig

As configurações de valor de matriz compatíveis.

Tipos enumerados
ARRAY_CONFIG_UNSPECIFIED O índice não aceita consultas de matriz adicionais.
CONTAINS O índice oferece suporte a consultas de contenção da matriz.

Pedido

As ordens compatíveis.

Tipos enumerados
ORDER_UNSPECIFIED A ordem não foi especificada. Não é uma opção válida.
ASCENDING O campo é ordenado pelo valor crescente.
DESCENDING O campo é ordenado pelo valor decrescente.

VectorConfig

A configuração de índice para dar suporte a operações de pesquisa vetorial

Campos
dimension

int32

Obrigatório. A dimensão vetorial a que essa configuração se aplica.

O índice resultante incluirá apenas vetores dessa dimensão e poderá ser usado para pesquisa de vetor com a mesma dimensão.

Campo de união type. O tipo de índice usado. type só pode ser de um dos seguintes tipos:
flat

FlatIndex

Indica que o índice vetorial é plano.

Índice fixo

Esse tipo não tem campos.

Um índice que armazena vetores em uma estrutura de dados simples e oferece suporte a pesquisas exaustivas.

QueryScope

Escopo da consulta define o escopo em que uma consulta é executada. Isso é especificado no campo from de um StructuredQuery.

Tipos enumerados
QUERY_SCOPE_UNSPECIFIED O escopo da consulta não foi especificado. Não é uma opção válida.
COLLECTION Os índices com um escopo de consulta de coleção especificado permitem fazer consultas em uma coleção que é filha de um documento específico, especificada no momento da consulta e que tem o ID de coleção especificado pelo índice.
COLLECTION_GROUP Índices com um escopo especificado para a consulta do grupo de coleções permitem consultas em todas as coleções que tenham o ID da coleção especificado pelo índice.
COLLECTION_RECURSIVE Inclua todos os ancestrais das coleções no índice. Disponível apenas para bancos de dados do modo Datastore.

Estado

O estado de um índice. Durante a criação, um índice fica no estado CREATING. Se o índice for criado corretamente, ele vai passar para o estado READY. Se a criação do índice encontrar um problema, ele fará a transição para o estado NEEDS_REPAIR.

Tipos enumerados
STATE_UNSPECIFIED O estado não foi especificado.
CREATING O índice está sendo criado. Há uma operação ativa de longa duração para o índice. O índice é atualizado durante a gravação de um documento. Alguns dados de índice podem existir.
READY O índice está pronto para ser usado. O índice é atualizado durante a gravação de um documento. O índice está totalmente preenchido com todos os documentos armazenados aos quais se aplica.
NEEDS_REPAIR O índice estava sendo criado, mas algo deu errado. Não há operação ativa de longa duração para o índice, e a operação de longa duração finalizada mais recentemente falhou. O índice não é atualizado durante a gravação de um documento. Alguns dados de índice podem existir. Use a API google.longrunning.Operations para determinar por que a última operação que tentou criar esse índice falhou e, em seguida, recrie o índice.

IndexOperationMetadata

Metadados de google.longrunning.Operation resultados de FirestoreAdmin.CreateIndex.

Campos
start_time

Timestamp

Hora em que a operação foi iniciada.

end_time

Timestamp

A hora em que essa operação foi concluída. Não será definido se a operação ainda estiver em andamento.

index

string

O recurso de índice em que esta operação está agindo. Exemplo: projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}/indexes/{index_id}

state

OperationState

O estado da operação.

progress_documents

Progress

O progresso, em documentos, dessa operação.

progress_bytes

Progress

O progresso, em bytes, dessa operação.

ListBackupSchedulesRequest

A solicitação para FirestoreAdmin.ListBackupSchedules.

Campos
parent

string

Obrigatório. O banco de dados pai.

O formato é projects/{project}/databases/{database}.

ListBackupSchedulesResponse

A resposta para FirestoreAdmin.ListBackupSchedules.

Campos
backup_schedules[]

BackupSchedule

Lista de todas as programações de backup.

ListBackupsRequest

A solicitação para FirestoreAdmin.ListBackups.

Campos
parent

string

Obrigatório. O local de onde os backups serão listados.

O formato é projects/{project}/locations/{location}. Use {location} = '-' para listar os backups de todos os locais do projeto especificado. Isso permite listar backups de um único local ou de todos os locais.

ListBackupsResponse

A resposta para FirestoreAdmin.ListBackups.

Campos
backups[]

Backup

Lista de todos os backups do projeto.

unreachable[]

string

Lista de locais em que não foi possível buscar os backups atuais.

Em vez de falhar em todas as solicitações quando um único local está inacessível, essa resposta retorna um conjunto de resultados parcial e uma lista de locais que não podem ser acessados aqui. A solicitação pode ser repetida em um único local para gerar um erro concreto.

ListDatabasesRequest

Uma solicitação para listar os bancos de dados do Firestore em todos os locais de um projeto.

Campos
parent

string

Obrigatório. Um nome pai do formulário projects/{project_id}

show_deleted

bool

Se verdadeiro, também retorna recursos excluídos.

ListDatabasesResponse

A lista de bancos de dados de um projeto.

Campos
databases[]

Database

Os bancos de dados no projeto.

unreachable[]

string

Caso os dados sobre bancos de dados individuais não possam ser listados, eles serão registrados aqui.

Um exemplo de entrada pode ser: projects/some_project/locations/some_location. Isso pode acontecer se a região do Cloud em que o banco de dados reside não estiver disponível no momento. Nesse caso, não é possível buscar todos os detalhes sobre o banco de dados. Você pode conseguir uma mensagem de erro mais detalhada (ou possivelmente buscar o recurso) enviando uma solicitação 'Get' para o recurso ou uma solicitação 'List' para o local específico.

ListFieldsRequest

A solicitação para FirestoreAdmin.ListFields.

Campos
parent

string

Obrigatório. Um nome pai do formulário projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}

filter

string

O filtro a ser aplicado aos resultados da lista. No momento, FirestoreAdmin.ListFields só é compatível com a listagem de campos que foram explicitamente modificados. Para emitir essa consulta, chame FirestoreAdmin.ListFields com um filtro que inclua indexConfig.usesAncestorConfig:false ou ttlConfig:*.

page_size

int32

O número de resultados a serem retornados.

page_token

string

Um token de página, retornado de uma chamada anterior para FirestoreAdmin.ListFields, que pode ser usado para exibir a próxima página de resultados.

Resposta de campos em lista

A resposta para FirestoreAdmin.ListFields.

Campos
fields[]

Field

Os campos solicitados.

next_page_token

string

Um token de página que pode ser usado para solicitar outra página de resultados. Se o campo ficar em branco, será a última página.

ListIndexRequest

A solicitação para FirestoreAdmin.ListIndexes.

Campos
parent

string

Obrigatório. Um nome pai do formulário projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}

filter

string

O filtro a ser aplicado aos resultados da lista.

page_size

int32

O número de resultados a serem retornados.

page_token

string

Um token de página, retornado de uma chamada anterior para FirestoreAdmin.ListIndexes, que pode ser usado para exibir a próxima página de resultados.

ListIndexResponse

A resposta para FirestoreAdmin.ListIndexes.

Campos
indexes[]

Index

Os índices solicitados.

next_page_token

string

Um token de página que pode ser usado para solicitar outra página de resultados. Se o campo ficar em branco, será a última página.

LocationMetadata

Esse tipo não tem campos.

A mensagem de metadados para google.cloud.location.Location.metadata.

OperationState

Descreve o estado da operação.

Tipos enumerados
OPERATION_STATE_UNSPECIFIED Não especificado.
INITIALIZING A solicitação está sendo preparada para processamento.
PROCESSING A solicitação está sendo processada ativamente.
CANCELLING A solicitação está em processo de cancelamento após o usuário ter chamado google.longrunning.Operations.CancelOperation na operação.
FINALIZING A solicitação foi processada e está na etapa de finalização.
SUCCESSFUL A solicitação foi concluída.
FAILED O processamento da solicitação foi concluído, mas ocorreu um erro.
CANCELLED A solicitação foi cancelada depois que o usuário google.longrunning.Operations.CancelOperation.

Progresso

Descreve o progresso da operação. A unidade de trabalho é genérica e precisa ser interpretada com base no local em que Progress é usado.

Campos
estimated_work

int64

A quantidade de trabalho estimada.

completed_work

int64

A quantidade de trabalho concluída.

RestoreDatabaseMetadata

Metadados de long-running operation da solicitação [RestoreDatabase][google.firestore.admin.v1.RestoreDatabase].

Campos
start_time

Timestamp

A hora em que a restauração foi iniciada.

end_time

Timestamp

O horário em que a restauração foi concluída, não definido para restaurações em andamento.

operation_state

OperationState

O estado de operação da restauração.

database

string

O nome do banco de dados que está sendo restaurado.

backup

string

O nome da restauração do backup.

progress_percentage

Progress

O período da restauração como uma porcentagem estimada do tempo restante.

RestoreDatabaseRequest

A mensagem de solicitação para [FirestoreAdmin.RestoreDatabase][google.firestore.admin.v1.RestoreDatabase].

Campos
parent

string

Obrigatório. O projeto em que o banco de dados será restaurado. O formato é projects/{project_id}.

database_id

string

Obrigatório. O ID a ser usado no banco de dados, que se tornará o componente final do nome do recurso do banco de dados. Esse ID de banco de dados não pode estar associado a um banco de dados existente.

Esse valor precisa ter de 4 a 63 caracteres. Os caracteres válidos são /[a-z][0-9]-/ com o primeiro caractere uma letra e o último uma letra ou um número. Não pode ser semelhante a UUID /[0-9a-f]{8}(-[0-9a-f]{4}){3}-[0-9a-f]{12}/.

O ID do banco de dados "(padrão)" também é válido.

Campo de união source.

source pode ser apenas de um dos tipos a seguir:

backup

string

Backup a ser restaurado. Precisa ser do mesmo projeto que o pai.

O formato é: projects/{project_id}/locations/{location}/backups/{backup}

UpdateBackupScheduleRequest

A solicitação para FirestoreAdmin.UpdateBackupSchedule.

Campos
backup_schedule

BackupSchedule

Obrigatório. A programação de backup a ser atualizada.

update_mask

FieldMask

Lista de campos a serem atualizados.

UpdateDatabaseMetadata

Esse tipo não tem campos.

Metadados relacionados à operação de atualização do banco de dados.

UpdateDatabaseRequest

A solicitação para FirestoreAdmin.UpdateDatabase.

Campos
database

Database

Obrigatório. O banco de dados a ser atualizado.

update_mask

FieldMask

Lista de campos a serem atualizados.

UpdateFieldRequest

A solicitação para FirestoreAdmin.UpdateField.

Campos
field

Field

Obrigatório. O campo a ser atualizado.

update_mask

FieldMask

Uma máscara relativa ao campo. Se especificado, somente a configuração especificada por esta field_mask será atualizada no campo.

Recorrência semanal

Representa uma programação recorrente executada em um dia especificado da semana.

O fuso horário é UTC.

Campos
day

DayOfWeek

O dia da semana a ser executado.

DAY_OF_WEEK_UNSPECIFIED não é permitido.