Firebase App Hosting API

Firebase App Hosting streamlines the development and deployment of dynamic Next.js and Angular applications, offering built-in framework support, GitHub integration, and integration with other Firebase products.

You can use this API to intervene in the Firebase App Hosting build process and add custom functionality not supported in our default Console & CLI flows, including triggering builds from external CI/CD workflows or deploying from pre-built container images.

Service: firebaseapphosting.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://firebaseapphosting.googleapis.com

REST Resource: v1beta.projects.locations

Methods
get GET /v1beta/{name=projects/*/locations/*}
Gets information about a location.
list GET /v1beta/{name=projects/*}/locations
Lists information about the supported locations for this service.

REST Resource: v1beta.projects.locations.backends

Methods
create POST /v1beta/{parent=projects/*/locations/*}/backends
Creates a new backend in a given project and location.
delete DELETE /v1beta/{name=projects/*/locations/*/backends/*}
Deletes a single backend.
get GET /v1beta/{name=projects/*/locations/*/backends/*}
Gets information about a backend.
getTraffic GET /v1beta/{name=projects/*/locations/*/backends/*/traffic}
Gets information about a backend's traffic.
list GET /v1beta/{parent=projects/*/locations/*}/backends
Lists backends in a given project and location.
patch PATCH /v1beta/{backend.name=projects/*/locations/*/backends/*}
Updates the information for a single backend.
updateTraffic PATCH /v1beta/{traffic.name=projects/*/locations/*/backends/*/traffic}
Updates a backend's traffic.

REST Resource: v1beta.projects.locations.backends.builds

Methods
create POST /v1beta/{parent=projects/*/locations/*/backends/*}/builds
Creates a new build for a backend.
delete DELETE /v1beta/{name=projects/*/locations/*/backends/*/builds/*}
Deletes a single build.
get GET /v1beta/{name=projects/*/locations/*/backends/*/builds/*}
Gets information about a build.
list GET /v1beta/{parent=projects/*/locations/*/backends/*}/builds
Lists builds in a given project, location, and backend.

REST Resource: v1beta.projects.locations.backends.domains

Methods
create POST /v1beta/{parent=projects/*/locations/*/backends/*}/domains
Links a new domain to a backend.
delete DELETE /v1beta/{name=projects/*/locations/*/backends/*/domains/*}
Deletes a single domain.
get GET /v1beta/{name=projects/*/locations/*/backends/*/domains/*}
Gets information about a domain.
list GET /v1beta/{parent=projects/*/locations/*/backends/*}/domains
Lists domains of a backend.
patch PATCH /v1beta/{domain.name=projects/*/locations/*/backends/*/domains/*}
Updates the information for a single domain.

REST Resource: v1beta.projects.locations.backends.rollouts

Methods
create POST /v1beta/{parent=projects/*/locations/*/backends/*}/rollouts
Creates a new rollout for a backend.
get GET /v1beta/{name=projects/*/locations/*/backends/*/rollouts/*}
Gets information about a rollout.
list GET /v1beta/{parent=projects/*/locations/*/backends/*}/rollouts
Lists rollouts for a backend.

REST Resource: v1beta.projects.locations.operations

Methods
cancel POST /v1beta/{name=projects/*/locations/*/operations/*}:cancel
Starts asynchronous cancellation on a long-running operation.
delete DELETE /v1beta/{name=projects/*/locations/*/operations/*}
Deletes a long-running operation.
get GET /v1beta/{name=projects/*/locations/*/operations/*}
Gets the latest state of a long-running operation.
list GET /v1beta/{name=projects/*/locations/*}/operations
Lists operations that match the specified filter in the request.