Cloud Firestore API

使用为自动扩缩、高性能和简化应用开发而构建的 NoSQL 文档数据库。

服务:firestore.googleapis.com

要调用此服务,我们建议您使用 Google 提供的客户端库。如果您的应用需要使用您自己的库来调用此服务,则在发出 API 请求时应使用以下信息。

发现文档

发现文档是用于说明和使用 REST API 的机器可读规范。它用于构建客户端库、IDE 插件以及与 Google API 交互的其他工具。一项服务可能会提供多个发现文档。此服务提供了以下发现文档:

服务端点

服务端点是指定 API 服务的网络地址的基本网址。一项服务可能有多个服务端点。此服务具有以下服务端点,下面的所有 URI 都与此服务端点相关:

  • https://firestore.googleapis.com

REST 资源:v1beta2.projects.databases

方法
exportDocuments POST /v1beta2/{name=projects/*/databases/*}:exportDocuments
将所有或部分文档的副本从 Google Cloud Firestore 导出到其他存储系统(例如 Google Cloud Storage)。
importDocuments POST /v1beta2/{name=projects/*/databases/*}:importDocuments
将文档导入 Google Cloud Firestore。

REST 资源:v1beta2.projects.databases.collectionGroups.fields

方法
get GET /v1beta2/{name=projects/*/databases/*/collectionGroups/*/fields/*}
获取字段的元数据和配置。
list GET /v1beta2/{parent=projects/*/databases/*/collectionGroups/*}/fields
列出此数据库的字段配置和元数据。
patch PATCH /v1beta2/{field.name=projects/*/databases/*/collectionGroups/*/fields/*}
更新字段配置。

REST 资源:v1beta2.projects.databases.collectionGroups.indexes

方法
create POST /v1beta2/{parent=projects/*/databases/*/collectionGroups/*}/indexes
创建复合索引。
delete DELETE /v1beta2/{name=projects/*/databases/*/collectionGroups/*/indexes/*}
删除复合索引。
get GET /v1beta2/{name=projects/*/databases/*/collectionGroups/*/indexes/*}
获取复合索引。
list GET /v1beta2/{parent=projects/*/databases/*/collectionGroups/*}/indexes
列出复合索引。

REST 资源:v1beta1.projects.databases

方法
exportDocuments POST /v1beta1/{name=projects/*/databases/*}:exportDocuments
将所有或部分文档的副本从 Google Cloud Firestore 导出到其他存储系统(例如 Google Cloud Storage)。
importDocuments POST /v1beta1/{name=projects/*/databases/*}:importDocuments
将文档导入 Google Cloud Firestore。

REST 资源:v1beta1.projects.databases.documents

方法
batchGet POST /v1beta1/{database=projects/*/databases/*}/documents:batchGet
获取多个文档。
batchWrite POST /v1beta1/{database=projects/*/databases/*}/documents:batchWrite
应用批量写入操作。
beginTransaction POST /v1beta1/{database=projects/*/databases/*}/documents:beginTransaction
启动一个新事务。
commit POST /v1beta1/{database=projects/*/databases/*}/documents:commit
提交事务,同时选择性地更新文档。
createDocument POST /v1beta1/{parent=projects/*/databases/*/documents/**}/{collectionId}
创建新文档。
delete DELETE /v1beta1/{name=projects/*/databases/*/documents/*/**}
删除文档。
get GET /v1beta1/{name=projects/*/databases/*/documents/*/**}
获取单个文档。
list GET /v1beta1/{parent=projects/*/databases/*/documents/*/**}/{collectionId}
列出文档。
listCollectionIds POST /v1beta1/{parent=projects/*/databases/*/documents}:listCollectionIds
列出某个文档下的所有集合 ID。
listDocuments GET /v1beta1/{parent=projects/*/databases/*/documents}/{collectionId}
列出文档。
partitionQuery POST /v1beta1/{parent=projects/*/databases/*/documents}:partitionQuery
通过返回可用于并行运行查询的分区游标来对查询进行分区。
patch PATCH /v1beta1/{document.name=projects/*/databases/*/documents/*/**}
更新或插入文档。
rollback POST /v1beta1/{database=projects/*/databases/*}/documents:rollback
回滚事务。
runAggregationQuery POST /v1beta1/{parent=projects/*/databases/*/documents}:runAggregationQuery
运行聚合查询。
runQuery POST /v1beta1/{parent=projects/*/databases/*/documents}:runQuery
运行查询。

REST 资源:v1beta1.projects.databases.indexes

方法
create POST /v1beta1/{parent=projects/*/databases/*}/indexes
创建指定的索引。
delete DELETE /v1beta1/{name=projects/*/databases/*/indexes/*}
删除索引。
get GET /v1beta1/{name=projects/*/databases/*/indexes/*}
获取索引。
list GET /v1beta1/{parent=projects/*/databases/*}/indexes
列出与指定过滤条件匹配的索引。

REST 资源:v1.projects.databases

方法
create POST /v1/{parent=projects/*}/databases
创建数据库。
delete DELETE /v1/{name=projects/*/databases/*}
删除数据库。
exportDocuments POST /v1/{name=projects/*/databases/*}:exportDocuments
将所有或部分文档的副本从 Google Cloud Firestore 导出到其他存储系统(例如 Google Cloud Storage)。
get GET /v1/{name=projects/*/databases/*}
获取有关数据库的信息。
importDocuments POST /v1/{name=projects/*/databases/*}:importDocuments
将文档导入 Google Cloud Firestore。
list GET /v1/{parent=projects/*}/databases
列出项目中的所有数据库。
patch PATCH /v1/{database.name=projects/*/databases/*}
更新数据库。
restore POST /v1/{parent=projects/*}/databases:restore
通过从现有备份恢复来创建新数据库。

REST 资源:v1.projects.databases.backupSchedules

方法
create POST /v1/{parent=projects/*/databases/*}/backupSchedules
根据数据库创建备份时间表。
delete DELETE /v1/{name=projects/*/databases/*/backupSchedules/*}
删除备份时间表。
get GET /v1/{name=projects/*/databases/*/backupSchedules/*}
获取有关备份时间表的信息。
list GET /v1/{parent=projects/*/databases/*}/backupSchedules
列出备份时间表。
patch PATCH /v1/{backupSchedule.name=projects/*/databases/*/backupSchedules/*}
更新备份时间表。

REST 资源:v1.projects.databases.collectionGroups.fields

方法
get GET /v1/{name=projects/*/databases/*/collectionGroups/*/fields/*}
获取字段的元数据和配置。
list GET /v1/{parent=projects/*/databases/*/collectionGroups/*}/fields
列出此数据库的字段配置和元数据。
patch PATCH /v1/{field.name=projects/*/databases/*/collectionGroups/*/fields/*}
更新字段配置。

REST 资源:v1.projects.databases.collectionGroups.indexes

方法
create POST /v1/{parent=projects/*/databases/*/collectionGroups/*}/indexes
创建复合索引。
delete DELETE /v1/{name=projects/*/databases/*/collectionGroups/*/indexes/*}
删除复合索引。
get GET /v1/{name=projects/*/databases/*/collectionGroups/*/indexes/*}
获取复合索引。
list GET /v1/{parent=projects/*/databases/*/collectionGroups/*}/indexes
列出复合索引。

REST 资源:v1.projects.databases.documents

方法
batchGet POST /v1/{database=projects/*/databases/*}/documents:batchGet
获取多个文档。
batchWrite POST /v1/{database=projects/*/databases/*}/documents:batchWrite
应用批量写入操作。
beginTransaction POST /v1/{database=projects/*/databases/*}/documents:beginTransaction
启动一个新事务。
commit POST /v1/{database=projects/*/databases/*}/documents:commit
提交事务,同时选择性地更新文档。
createDocument POST /v1/{parent=projects/*/databases/*/documents/**}/{collectionId}
创建新文档。
delete DELETE /v1/{name=projects/*/databases/*/documents/*/**}
删除文档。
get GET /v1/{name=projects/*/databases/*/documents/*/**}
获取单个文档。
list GET /v1/{parent=projects/*/databases/*/documents/*/**}/{collectionId}
列出文档。
listCollectionIds POST /v1/{parent=projects/*/databases/*/documents}:listCollectionIds
列出某个文档下的所有集合 ID。
listDocuments GET /v1/{parent=projects/*/databases/*/documents}/{collectionId}
列出文档。
partitionQuery POST /v1/{parent=projects/*/databases/*/documents}:partitionQuery
通过返回可用于并行运行查询的分区游标来对查询进行分区。
patch PATCH /v1/{document.name=projects/*/databases/*/documents/*/**}
更新或插入文档。
rollback POST /v1/{database=projects/*/databases/*}/documents:rollback
回滚事务。
runAggregationQuery POST /v1/{parent=projects/*/databases/*/documents}:runAggregationQuery
运行聚合查询。
runQuery POST /v1/{parent=projects/*/databases/*/documents}:runQuery
运行查询。

REST 资源:v1.projects.databases.operations

方法
cancel POST /v1/{name=projects/*/databases/*/operations/*}:cancel
对长时间运行的操作启动异步取消。
delete DELETE /v1/{name=projects/*/databases/*/operations/*}
删除长时间运行的操作。
get GET /v1/{name=projects/*/databases/*/operations/*}
获取长时间运行的操作的最新状态。
list GET /v1/{name=projects/*/databases/*}/operations
列出与请求中指定的过滤条件匹配的操作。

REST 资源:v1.projects.locations

方法
get GET /v1/{name=projects/*/locations/*}
获取位置相关信息。
list GET /v1/{name=projects/*}/locations
列出有关此服务所支持位置的信息。

REST 资源:v1.projects.locations.backups

方法
delete DELETE /v1/{name=projects/*/locations/*/backups/*}
删除备份。
get GET /v1/{name=projects/*/locations/*/backups/*}
获取有关备份的信息。
list GET /v1/{parent=projects/*/locations/*}/backups
列出所有备份。