REST Resource: projects

资源:FirebaseProject

FirebaseProject 是顶层 Firebase 实体。它是 Firebase 应用、Firebase Hosting 网站、存储系统(Firebase Realtime Database、Cloud Firestore、Cloud Storage 存储分区)以及其他 Firebase 和 Google Cloud Platform (GCP) 资源的容器。

您可以通过调用 projects.addFirebase 并指定现有的 GCP Project 来创建 FirebaseProject。这会将 Firebase 资源添加到现有 GCP Project

由于 FirebaseProject 实际上也是 GCP Project,因此 FirebaseProject 具有相同的底层 GCP 标识符(projectNumberprojectId)。这允许与 Google API 轻松互操作。

JSON 表示法
{
  "name": string,
  "projectId": string,
  "projectNumber": string,
  "displayName": string,
  "resources": {
    object (DefaultResources)
  },
  "state": enum (State),
  "annotations": {
    string: string,
    ...
  },
  "etag": string
}
字段
name

string

项目的资源名称,格式如下:

projects/PROJECT_IDENTIFIER

PROJECT_IDENTIFIER:项目的 ProjectNumber(推荐)或其 ProjectId
请参阅 Google 的 AIP 2510 标准,详细了解如何使用项目标识符。
请注意,任何响应正文中 PROJECT_IDENTIFIER 的值都将是 ProjectId

projectId

string

仅限输出。不可变。用户为项目指定的唯一标识符。

此标识符可能会出现在与项目相关联的某些 Firebase 资源的网址或名称中,但通常应将其视为可方便引用该项目的别名。

projectNumber

string (int64 format)

仅限输出。不可变。Google 为项目分配的全局唯一的规范化标识符。在配置集成和/或对 Firebase 或第三方服务进行 API 调用时,请使用此标识符。

displayName

string

由用户指定的项目的显示名称。

resources

object (DefaultResources)

仅限输出。与项目关联的默认 Firebase 资源。

state

enum (State)

仅限输出。项目的生命周期状态。

annotations

map (key: string, value: string)

一组用户定义的 FirebaseProject 注解。
详细了解 Google 的 AIP-128 标准中的注释。

这些注释仅适用于开发者和客户端工具。Firebase 服务不会更改此注解集。

包含一系列 "key": value 对的对象。示例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }

etag

string

此校验和由服务器根据其他字段的值计算,并且可以与更新请求一起发送,以确保客户端在继续操作之前拥有最新的值。

详细了解 Google 的 AIP-154 标准中的 etag

此 ETag 已经过充分验证。

DefaultResources

与项目关联的默认资源。

JSON 表示法
{
  "hostingSite": string,
  "realtimeDatabaseInstance": string,
  "storageBucket": string,
  "locationId": string
}
字段
hostingSite

string

仅限输出。默认的 Firebase Hosting 网站名称,格式如下:

PROJECT_ID

虽然这种情况很少见,但您的 projectId 可能已用作其他项目中现有 Hosting 网站的名称(详细了解如何创建非默认的其他网站)。在这些情况下,系统会在 projectId 中附加一个连字符,后跟五个字母数字字符,以创建默认的 Hosting 网站名称。例如,如果您的 projectIdmyproject123,则您的默认 Hosting 网站名称可能是:myproject123-a5c16

realtimeDatabaseInstance

string

仅限输出。默认的 Firebase Realtime Database 实例名称,格式如下:

PROJECT_ID

虽然这种情况很少见,但您的 projectId 可能已用作另一个项目中现有 Realtime Database 实例的名称(详细了解数据库分片)。在这些情况下,您的 projectId 会附加一个连字符,后跟五个字母数字字符,以创建您的默认 Realtime Database 实例名称。例如,如果您的 projectIdmyproject123,则您的默认数据库实例名称可能为:myproject123-a5c16

storageBucket

string

仅限输出。默认的 Cloud Storage for Firebase 存储分区,格式如下:

PROJECT_ID.appspot.com

locationId

string

仅限输出。项目的默认 GCP 资源位置的 ID。该位置是可用的 GCP 资源位置之一。

如果默认 GCP 资源位置尚未最终确定,则省略此字段。如需设置项目的默认 GCP 资源位置,请在将 Firebase 资源添加到项目后调用 defaultLocation.finalize

状态

项目的可能生命周期状态。如需详细了解各州,请参阅 Google 的 AIP-216 标准

枚举
STATE_UNSPECIFIED 未指定状态。
ACTIVE 项目处于有效状态。
DELETED 该项目已被软删除。

方法

addFirebase

将 Firebase 资源添加到指定的现有 Google Cloud Platform (GCP) Project

addGoogleAnalytics

将指定的 FirebaseProject 与现有 Google Analytics 账号相关联。

get

获取指定的 FirebaseProject

getAdminSdkConfig

获取与指定 FirebaseProject 关联的配置工件,服务器可以使用该工件简化初始化。

getAnalyticsDetails

获取当前与指定的 FirebaseProject 相关联的 Google Analytics 详细信息。

list

列出调用方可访问的每个 FirebaseProject

patch

更新指定 FirebaseProject 的属性。

removeAnalytics

取消指定的FirebaseProject与其 Google Analytics 账号的关联。

searchApps

列出指定 FirebaseProject 的所有可用应用。