REST Resource: projects

Resource: FirebaseProject

A FirebaseProject is the top-level Firebase entity. It is the container for Firebase Apps, Firebase Hosting sites, storage systems (Firebase Realtime Database, Cloud Firestore, Cloud Storage buckets), and other Firebase and Google Cloud Platform (GCP) resources.

You create a FirebaseProject by calling projects.addFirebase and specifying an existing GCP Project. This adds Firebase resources to the existing GCP Project.

Since a FirebaseProject is actually also a GCP Project, a FirebaseProject has the same underlying GCP identifiers (projectNumber and projectId). This allows for easy interop with Google APIs.

JSON representation
{
  "name": string,
  "projectId": string,
  "projectNumber": string,
  "displayName": string,
  "resources": {
    object (DefaultResources)
  },
  "state": enum (State),
  "annotations": {
    string: string,
    ...
  },
  "etag": string
}
Fields
name

string

The resource name of the Project, in the format:

projects/PROJECT_IDENTIFIER

PROJECT_IDENTIFIER: the Project's ProjectNumber (recommended) or its ProjectId.
Learn more about using project identifiers in Google's AIP 2510 standard.
Note that the value for PROJECT_IDENTIFIER in any response body will be the ProjectId.

projectId

string

Output only. Immutable. A user-assigned unique identifier for the Project.

This identifier may appear in URLs or names for some Firebase resources associated with the Project, but it should generally be treated as a convenience alias to reference the Project.

projectNumber

string (int64 format)

Output only. Immutable. The globally unique, Google-assigned canonical identifier for the Project. Use this identifier when configuring integrations and/or making API calls to Firebase or third-party services.

displayName

string

The user-assigned display name of the Project.

resources

object (DefaultResources)

Output only. The default Firebase resources associated with the Project.

state

enum (State)

Output only. The lifecycle state of the Project.

annotations

map (key: string, value: string)

A set of user-defined annotations for the FirebaseProject.
Learn more about annotations in Google's AIP-128 standard.

These annotations are intended solely for developers and client-side tools. Firebase services will not mutate this annotations set.

An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

etag

string

This checksum is computed by the server based on the value of other fields, and it may be sent with update requests to ensure the client has an up-to-date value before proceeding.

Learn more about etag in Google's AIP-154 standard.

This etag is strongly validated.

DefaultResources

The default resources associated with the Project.

JSON representation
{
  "hostingSite": string,
  "realtimeDatabaseInstance": string,
  "storageBucket": string,
  "locationId": string
}
Fields
hostingSite

string

Output only. The default Firebase Hosting site name, in the format:

PROJECT_ID

Though rare, your projectId might already be used as the name for an existing Hosting site in another project (learn more about creating non-default, additional sites). In these cases, your projectId is appended with a hyphen then five alphanumeric characters to create your default Hosting site name. For example, if your projectId is myproject123, your default Hosting site name might be: myproject123-a5c16

realtimeDatabaseInstance

string

Output only. The default Firebase Realtime Database instance name, in the format:

PROJECT_ID

Though rare, your projectId might already be used as the name for an existing Realtime Database instance in another project (learn more about database sharding). In these cases, your projectId is appended with a hyphen then five alphanumeric characters to create your default Realtime Database instance name. For example, if your projectId is myproject123, your default database instance name might be: myproject123-a5c16

storageBucket

string

Output only. The default Cloud Storage for Firebase storage bucket, in the format:

PROJECT_ID.appspot.com

locationId

string

Output only. The ID of the Project's default GCP resource location. The location is one of the available GCP resource locations.

This field is omitted if the default GCP resource location has not been finalized yet. To set a Project's default GCP resource location, call defaultLocation.finalize after you add Firebase resources to the Project.

State

The possible lifecycle states of the Project. Learn more about states in Google's AIP-216 standard.

Enums
STATE_UNSPECIFIED Unspecified state.
ACTIVE The Project is active.
DELETED The Project has been soft-deleted.

Methods

addFirebase

Adds Firebase resources to the specified existing Google Cloud Platform (GCP) Project.

addGoogleAnalytics

Links the specified FirebaseProject with an existing Google Analytics account.

get

Gets the specified FirebaseProject.

getAdminSdkConfig

Gets the configuration artifact associated with the specified FirebaseProject, which can be used by servers to simplify initialization.

getAnalyticsDetails

Gets the Google Analytics details currently associated with the specified FirebaseProject.

list

Lists each FirebaseProject accessible to the caller.

patch

Updates the attributes of the specified FirebaseProject.

removeAnalytics

Unlinks the specified FirebaseProject from its Google Analytics account.

searchApps

Lists all available Apps for the specified FirebaseProject.