The Firebase Hosting REST API enables programmatic and customizable management and deployments to your Firebase-hosted sites. Use this REST API to create and manage channels and sites as well as to deploy new or updated hosting configurations and content files.
For a step-by-step example of the deploy workflow, visit Deploy using the REST API.
Service: firebasehosting.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.
REST Resource: v1beta1.projects.operations
| Methods | |
|---|---|
| get | GET /v1beta1/{name=projects/*/operations/*}Gets the latest state of a long-running operation. | 
REST Resource: v1beta1.projects.sites
| Methods | |
|---|---|
| create | POST /v1beta1/{parent=projects/*}/sitesCreates a new Hosting Sitein the specified parent Firebase project. | 
| delete | DELETE /v1beta1/{name=projects/*/sites/*}Deletes the specified Hosting Sitefrom the specified parent Firebase project. | 
| get | GET /v1beta1/{name=projects/*/sites/*}Gets the specified Hosting Site. | 
| list | GET /v1beta1/{parent=projects/*}/sitesLists each Hosting Siteassociated with the specified parent Firebase project. | 
| patch | PATCH /v1beta1/{site.name=projects/*/sites/*}Updates attributes of the specified Hosting Site. | 
REST Resource: v1beta1.projects.sites.customDomains
| Methods | |
|---|---|
| create | POST /v1beta1/{parent=projects/*/sites/*}/customDomainsCreates a CustomDomain. | 
| delete | DELETE /v1beta1/{name=projects/*/sites/*/customDomains/*}Deletes the specified CustomDomain. | 
| get | GET /v1beta1/{name=projects/*/sites/*/customDomains/*}Gets the specified CustomDomain. | 
| list | GET /v1beta1/{parent=projects/*/sites/*}/customDomainsLists each CustomDomainassociated with the specified parent Hosting site. | 
| patch | PATCH /v1beta1/{customDomain.name=projects/*/sites/*/customDomains/*}Updates the specified CustomDomain. | 
| undelete | POST /v1beta1/{name=projects/*/sites/*/customDomains/*}:undeleteUndeletes the specified CustomDomainif it has been soft-deleted. | 
REST Resource: v1beta1.projects.sites.customDomains.operations
| Methods | |
|---|---|
| get | GET /v1beta1/{name=projects/*/sites/*/customDomains/*/operations/*}Gets the latest state of a long-running operation. | 
| list | GET /v1beta1/{name=projects/*/sites/*/customDomains/*}/operationsLists operations that match the specified filter in the request. | 
REST Resource: v1beta1.sites.channels
| Methods | |
|---|---|
| create | POST /v1beta1/{parent=sites/*}/channelsCreates a new channel in the specified site. | 
| delete | DELETE /v1beta1/{name=sites/*/channels/*}Deletes the specified channel of the specified site. | 
| get | GET /v1beta1/{name=sites/*/channels/*}Retrieves information for the specified channel of the specified site. | 
| list | GET /v1beta1/{parent=sites/*}/channelsLists the channels for the specified site. | 
| patch | PATCH /v1beta1/{channel.name=sites/*/channels/*}Updates information for the specified channel of the specified site. | 
REST Resource: v1beta1.sites.channels.releases
| Methods | |
|---|---|
| create | POST /v1beta1/{parent=sites/*/channels/*}/releasesCreates a new release, which makes the content of the specified version actively display on the appropriate URL(s). | 
| get | GET /v1beta1/{name=sites/*/channels/*/releases/*}Gets the specified release for a site or channel. | 
| list | GET /v1beta1/{parent=sites/*/channels/*}/releasesLists the releases that have been created for the specified site or channel. | 
REST Resource: v1beta1.sites.releases
| Methods | |
|---|---|
| create | POST /v1beta1/{parent=sites/*}/releasesCreates a new release, which makes the content of the specified version actively display on the appropriate URL(s). | 
| get | GET /v1beta1/{name=sites/*/releases/*}Gets the specified release for a site or channel. | 
| list | GET /v1beta1/{parent=sites/*}/releasesLists the releases that have been created for the specified site or channel. | 
REST Resource: v1beta1.sites.versions
| Methods | |
|---|---|
| clone | POST /v1beta1/{parent=sites/*}/versions:cloneCreates a new version on the specified target site using the content of the specified version. | 
| create | POST /v1beta1/{parent=sites/*}/versionsCreates a new version for the specified site. | 
| delete | DELETE /v1beta1/{name=sites/*/versions/*}Deletes the specified version. | 
| get | GET /v1beta1/{name=sites/*/versions/*}Get the specified version that has been created for the specified site. | 
| list | GET /v1beta1/{parent=sites/*}/versionsLists the versions that have been created for the specified site. | 
| patch | PATCH /v1beta1/{version.name=sites/*/versions/*}Updates the specified metadata for the specified version. | 
| populateFiles | POST /v1beta1/{parent=sites/*/versions/*}:populateFilesAdds content files to the specified version. | 
REST Resource: v1beta1.sites.versions.files
| Methods | |
|---|---|
| list | GET /v1beta1/{parent=sites/*/versions/*}/filesLists the remaining files to be uploaded for the specified version. |