## Resource: WebApp

Details of a Firebase App for the web.

| JSON representation |
|---|
| ``` { "name": string, "appId": string, "displayName": string, "projectId": string, "appUrls": [ string ], "webId": string, "apiKeyId": string, "state": enum (`https://firebase.google.com/docs/reference/firebase-management/rest/v1beta1/State`), "expireTime": string, "etag": string } ``` |

| Fields ||
|---|---|
| `name` | `string` The resource name of the `https://firebase.google.com/docs/reference/firebase-management/rest/v1beta1/projects.webApps#WebApp`, in the format: `projects/PROJECT_IDENTIFIER/webApps/APP_ID` - <var translate="no">PROJECT_IDENTIFIER</var>: the parent Project's [`ProjectNumber`](https://firebase.google.com/docs/reference/firebase-management/rest/projects#FirebaseProject.FIELDS.project_number) ***(recommended)*** or its [`ProjectId`](https://firebase.google.com/docs/reference/firebase-management/rest/projects#FirebaseProject.FIELDS.project_id). Learn more about using project identifiers in Google's [AIP 2510 standard](https://google.aip.dev/cloud/2510). Note that the value for <var translate="no">PROJECT_IDENTIFIER</var> in any response body will be the `ProjectId`. - <var translate="no">APP_ID</var>: the globally unique, Firebase-assigned identifier for the App (see [`appId`](https://firebase.google.com/docs/reference/firebase-management/rest/projects.webApps#WebApp.FIELDS.app_id)). |
| `appId` | `string` Output only. Immutable. The globally unique, Firebase-assigned identifier for the `WebApp`. This identifier should be treated as an opaque token, as the data format is not specified. |
| `displayName` | `string` The user-assigned display name for the `WebApp`. |
| `projectId` | `string` Output only. Immutable. A user-assigned unique identifier of the parent `https://firebase.google.com/docs/reference/firebase-management/rest/v1beta1/projects#FirebaseProject` for the `WebApp`. |
| `appUrls[]` | `string` The URLs where the `WebApp` is hosted. |
| `webId (deprecated)` | `string` > [!WARNING] > This item is deprecated! Output only. Immutable. A unique, Firebase-assigned identifier for the `WebApp`. This identifier is only used to populate the `namespace` value for the `WebApp`. For most use cases, use `appId` to identify or reference the App. The `webId` value is only unique within a `FirebaseProject` and its associated Apps. |
| `apiKeyId` | `string` The globally unique, Google-assigned identifier (UID) for the Firebase API key associated with the `WebApp`. Be aware that this value is the UID of the API key, *not* the [`keyString`](https://cloud.google.com/api-keys/docs/reference/rest/v2/projects.locations.keys#Key.FIELDS.key_string) of the API key. The `keyString` is the value that can be found in the App's [configuration artifact](https://firebase.google.com/docs/reference/firebase-management/rest/v1beta1/projects.webApps/getConfig). If `apiKeyId` is not set in requests to [`webApps.Create`](https://firebase.google.com/docs/reference/firebase-management/rest/v1beta1/projects.webApps/create), then Firebase automatically associates an `apiKeyId` with the `WebApp`. This auto-associated key may be an existing valid key or, if no valid key exists, a new one will be provisioned. In patch requests, `apiKeyId` cannot be set to an empty value, and the new UID must have no restrictions or only have restrictions that are valid for the associated `WebApp`. We recommend using the [Google Cloud Console](https://console.cloud.google.com/apis/credentials) to manage API keys. |
| `state` | ``enum (`https://firebase.google.com/docs/reference/firebase-management/rest/v1beta1/State`)`` Output only. The lifecycle state of the App. |
| `expireTime` | ``string (`https://protobuf.dev/reference/protobuf/google.protobuf#timestamp` format)`` Output only. If the App has been removed from the Project, this is the timestamp of when the App is considered expired and will be permanently deleted. After this time, the App cannot be undeleted (that is, restored to the Project). This value is only provided if the App is in the `DELETED` state. A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: `"2014-10-02T15:01:23Z"` and `"2014-10-02T15:01:23.045123456Z"`. |
| `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](https://google.aip.dev/154#declarative-friendly-resources). This etag is strongly validated. |

| ## Methods ||
|---|---|
| ### `https://firebase.google.com/docs/reference/firebase-management/rest/v1beta1/projects.webApps/create` | Requests the creation of a new `https://firebase.google.com/docs/reference/firebase-management/rest/v1beta1/projects.webApps#WebApp` in the specified `https://firebase.google.com/docs/reference/firebase-management/rest/v1beta1/projects#FirebaseProject`. |
| ### `https://firebase.google.com/docs/reference/firebase-management/rest/v1beta1/projects.webApps/get` | Gets the specified `https://firebase.google.com/docs/reference/firebase-management/rest/v1beta1/projects.webApps#WebApp`. |
| ### `https://firebase.google.com/docs/reference/firebase-management/rest/v1beta1/projects.webApps/getConfig` | Gets the configuration artifact associated with the specified `https://firebase.google.com/docs/reference/firebase-management/rest/v1beta1/projects.webApps#WebApp`. |
| ### `https://firebase.google.com/docs/reference/firebase-management/rest/v1beta1/projects.webApps/list` | Lists each `https://firebase.google.com/docs/reference/firebase-management/rest/v1beta1/projects.webApps#WebApp` associated with the specified `https://firebase.google.com/docs/reference/firebase-management/rest/v1beta1/projects#FirebaseProject`. |
| ### `https://firebase.google.com/docs/reference/firebase-management/rest/v1beta1/projects.webApps/patch` | Updates the attributes of the specified `https://firebase.google.com/docs/reference/firebase-management/rest/v1beta1/projects.webApps#WebApp`. |
| ### `https://firebase.google.com/docs/reference/firebase-management/rest/v1beta1/projects.webApps/remove` | Removes the specified `https://firebase.google.com/docs/reference/firebase-management/rest/v1beta1/projects.webApps#WebApp` from the `https://firebase.google.com/docs/reference/firebase-management/rest/v1beta1/projects#FirebaseProject`. |
| ### `https://firebase.google.com/docs/reference/firebase-management/rest/v1beta1/projects.webApps/undelete` | Restores the specified `https://firebase.google.com/docs/reference/firebase-management/rest/v1beta1/projects.webApps#WebApp` to the `https://firebase.google.com/docs/reference/firebase-management/rest/v1beta1/projects#FirebaseProject`. |