Firebase Management API

The Firebase Management API enables programmatic setup and management of Firebase projects, including a project's Firebase resources and Firebase apps.

Workflows: Set up and manage a Firebase project using the REST API

For a step-by-step example of the workflow to set up and manage Firebase projects, visit Workflow: Set up and manage a project.

Service: firebase.googleapis.com

To call this service, we recommend that you use the Google-provided client libraries. If your application needs to use your own libraries to call this service, use the following information when you make the API requests.

Discovery document

A Discovery Document is a machine-readable specification for describing and consuming REST APIs. It is used to build client libraries, IDE plugins, and other tools that interact with Google APIs. One service may provide multiple discovery documents. This service provides the following discovery document:

Service endpoint

A service endpoint is a base URL that specifies the network address of an API service. One service might have multiple service endpoints. This service has the following service endpoint and all URIs below are relative to this service endpoint:

  • https://firebase.googleapis.com

REST Resource: v1beta1.availableProjects

Methods
list GET /v1beta1/availableProjects
Lists each Google Cloud Project that can have Firebase resources added and Firebase services enabled.

REST Resource: v1beta1.operations

Methods
get GET /v1beta1/{name=operations/**}
Gets the latest state of a long-running operation.

REST Resource: v1beta1.projects

Methods
addFirebase POST /v1beta1/{project=projects/*}:addFirebase
Adds Firebase resources and enables Firebase services in the specified existing Google Cloud Project.
addGoogleAnalytics POST /v1beta1/{parent=projects/*}:addGoogleAnalytics
Links the specified FirebaseProject with an existing Google Analytics account.
get GET /v1beta1/{name=projects/*}
Gets the specified FirebaseProject.
getAdminSdkConfig GET /v1beta1/{name=projects/*/adminSdkConfig}
Gets the configuration artifact associated with the specified FirebaseProject, which can be used by servers to simplify initialization.
getAnalyticsDetails GET /v1beta1/{name=projects/*/analyticsDetails}
Gets the Google Analytics details currently associated with the specified FirebaseProject.
list GET /v1beta1/projects
Lists each FirebaseProject accessible to the caller.
patch PATCH /v1beta1/{project.name=projects/*}
Updates the attributes of the specified FirebaseProject.
removeAnalytics POST /v1beta1/{parent=projects/*}:removeAnalytics
Unlinks the specified FirebaseProject from its Google Analytics account.
searchApps GET /v1beta1/{parent=projects/*}:searchApps
Lists all available Apps for the specified FirebaseProject.

REST Resource: v1beta1.projects.androidApps

Methods
create POST /v1beta1/{parent=projects/*}/androidApps
Requests the creation of a new AndroidApp in the specified FirebaseProject.
get GET /v1beta1/{name=projects/*/androidApps/*}
Gets the specified AndroidApp.
getConfig GET /v1beta1/{name=projects/*/androidApps/*/config}
Gets the configuration artifact associated with the specified AndroidApp.
list GET /v1beta1/{parent=projects/*}/androidApps
Lists each AndroidApp associated with the specified FirebaseProject.
patch PATCH /v1beta1/{app.name=projects/*/androidApps/*}
Updates the attributes of the specified AndroidApp.
remove POST /v1beta1/{name=projects/*/androidApps/*}:remove
Removes the specified AndroidApp from the FirebaseProject.
undelete POST /v1beta1/{name=projects/*/androidApps/*}:undelete
Restores the specified AndroidApp to the FirebaseProject.

REST Resource: v1beta1.projects.androidApps.sha

Methods
create POST /v1beta1/{parent=projects/*/androidApps/*}/sha
Adds a ShaCertificate to the specified AndroidApp.
delete DELETE /v1beta1/{name=projects/*/androidApps/*/sha/*}
Removes a ShaCertificate from the specified AndroidApp.
list GET /v1beta1/{parent=projects/*/androidApps/*}/sha
Lists the SHA-1 and SHA-256 certificates for the specified AndroidApp.

REST Resource: v1beta1.projects.availableLocations

Methods
list
(deprecated)
GET /v1beta1/{parent=projects/*}/availableLocations

DECOMMISSIONED. If called, this endpoint will return a 404 error. Instead, use the applicable resource-specific REST API (or associated documentation, as needed) to determine valid locations for each resource used in your Project.

Lists the valid "locations for default Google Cloud resources" for the specified Project (including a FirebaseProject).

REST Resource: v1beta1.projects.defaultLocation

Methods
finalize
(deprecated)
POST /v1beta1/{parent=projects/*}/defaultLocation:finalize

DECOMMISSIONED. If called, this endpoint will return a 404 error. Instead, use the applicable resource-specific REST API to set the location for each resource used in your Project.

Sets the "location for default Google Cloud resources" for the specified FirebaseProject.

REST Resource: v1beta1.projects.iosApps

Methods
create POST /v1beta1/{parent=projects/*}/iosApps
Requests the creation of a new IosApp in the specified FirebaseProject.
get GET /v1beta1/{name=projects/*/iosApps/*}
Gets the specified IosApp.
getConfig GET /v1beta1/{name=projects/*/iosApps/*/config}
Gets the configuration artifact associated with the specified IosApp.
list GET /v1beta1/{parent=projects/*}/iosApps
Lists each IosApp associated with the specified FirebaseProject.
patch PATCH /v1beta1/{app.name=projects/*/iosApps/*}
Updates the attributes of the specified IosApp.
remove POST /v1beta1/{name=projects/*/iosApps/*}:remove
Removes the specified IosApp from the FirebaseProject.
undelete POST /v1beta1/{name=projects/*/iosApps/*}:undelete
Restores the specified IosApp to the FirebaseProject.

REST Resource: v1beta1.projects.webApps

Methods
create POST /v1beta1/{parent=projects/*}/webApps
Requests the creation of a new WebApp in the specified FirebaseProject.
get GET /v1beta1/{name=projects/*/webApps/*}
Gets the specified WebApp.
getConfig GET /v1beta1/{name=projects/*/webApps/*/config}
Gets the configuration artifact associated with the specified WebApp.
list GET /v1beta1/{parent=projects/*}/webApps
Lists each WebApp associated with the specified FirebaseProject.
patch PATCH /v1beta1/{app.name=projects/*/webApps/*}
Updates the attributes of the specified WebApp.
remove POST /v1beta1/{name=projects/*/webApps/*}:remove
Removes the specified WebApp from the FirebaseProject.
undelete POST /v1beta1/{name=projects/*/webApps/*}:undelete
Restores the specified WebApp to the FirebaseProject.