Definitions for @turbot/gcp-firebase
AndroidApp
{ "description": "Details of a Firebase App for Android.", "properties": { "apiKeyId": { "description": "The globally unique, Google-assigned identifier (UID) for the Firebase API key associated with the `AndroidApp`. 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](../../rest/v1beta1/projects.androidApps/getConfig). If `api_key_id` is not set in requests to [`androidApps.Create`](../../rest/v1beta1/projects.androidApps/create), then Firebase automatically associates an `api_key_id` with the `AndroidApp`. 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, `api_key_id` 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 `AndroidApp`. We recommend using the [Google Cloud Console](https://console.cloud.google.com/apis/credentials) to manage API keys.", "type": "string" }, "appId": { "description": "Output only. Immutable. The globally unique, Firebase-assigned identifier for the `AndroidApp`. This identifier should be treated as an opaque token, as the data format is not specified.", "readOnly": true, "type": "string" }, "displayName": { "description": "The user-assigned display name for the `AndroidApp`.", "type": "string" }, "etag": { "description": "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.", "type": "string" }, "expireTime": { "description": "Output only. Timestamp of when the App will be considered expired and cannot be undeleted. This value is only provided if the App is in the `DELETED` state.", "readOnly": true, "type": "string" }, "name": { "description": "The resource name of the AndroidApp, in the format: projects/ PROJECT_IDENTIFIER/androidApps/APP_ID * PROJECT_IDENTIFIER: the parent Project's [`ProjectNumber`](../projects#FirebaseProject.FIELDS.project_number) ***(recommended)*** or its [`ProjectId`](../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 PROJECT_IDENTIFIER in any response body will be the `ProjectId`. * APP_ID: the globally unique, Firebase-assigned identifier for the App (see [`appId`](../projects.androidApps#AndroidApp.FIELDS.app_id)).", "type": "string" }, "packageName": { "description": "Immutable. The canonical package name of the Android app as would appear in the Google Play Developer Console.", "type": "string" }, "projectId": { "description": "Output only. Immutable. A user-assigned unique identifier of the parent FirebaseProject for the `AndroidApp`.", "readOnly": true, "type": "string" }, "sha1Hashes": { "description": "The SHA1 certificate hashes for the AndroidApp.", "items": { "type": "string" }, "type": "array" }, "sha256Hashes": { "description": "The SHA256 certificate hashes for the AndroidApp.", "items": { "type": "string" }, "type": "array" }, "state": { "description": "Output only. The lifecycle state of the App.", "enum": [ "STATE_UNSPECIFIED", "ACTIVE", "DELETED" ], "readOnly": true, "type": "string" } }, "type": "object", ".turbot": { "uri": "tmod:@turbot/gcp-firebase#/definitions/AndroidApp", "modUri": "tmod:@turbot/gcp-firebase" }}
firebase
{ "type": "object", "properties": { "name": { "$ref": "#/definitions/firebaseName" }, "state": { "$ref": "gcp#/definitions/state" }, "turbot": { "type": "object", "properties": { "akas": { "type": "array", "items": { "$ref": "#/definitions/firebaseAka" } }, "title": { "type": "string" }, "custom": { "type": "object", "properties": { "gcp": { "$ref": "gcp#/definitions/gcpMetadata" } } } } } }, "tests": [ { "description": "Valid - base test", "input": { "name": "projects/123456789012/services/firebase.googleapis.com", "turbot": { "akas": [ "gcp://serviceusage.googleapis.com/projects/123456789012/services/firebase.googleapis.com" ], "title": "Firebase", "custom": { "gcp": { "projectId": "cse-legolas-2" } } } } } ], ".turbot": { "uri": "tmod:@turbot/gcp-firebase#/definitions/firebase", "modUri": "tmod:@turbot/gcp-firebase" }}
firebaseAka
{ "type": "string", "pattern": "^gcp://serviceusage.googleapis.com/projects/[0-9]{12}/services/firebase.googleapis.com", "tests": [ { "description": "Base", "input": "gcp://serviceusage.googleapis.com/projects/123456789012/services/firebase.googleapis.com" }, { "description": "Invalid - aka", "input": "gcp://serviceusage.googleapis.com/projectss/cse-legolas-2/services/firebase.googleapis.com", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/gcp-firebase#/definitions/firebaseAka", "modUri": "tmod:@turbot/gcp-firebase" }}
firebaseName
{ "type": "string", "pattern": "^projects/[0-9]{1,12}/services/firebase.googleapis.com$", "tests": [ { "description": "Base", "input": "projects/123456789012/services/firebase.googleapis.com" }, { "description": "Invalid - firebase name", "input": "gcp://serviceusage.googleapis.com/projects/cse-legolas-2/services/firebasezz.googleapis.com", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/gcp-firebase#/definitions/firebaseName", "modUri": "tmod:@turbot/gcp-firebase" }}
firebaseProject
{ "type": "object", "properties": { "projectId": { "type": "string" }, "name": { "type": "string" }, "projectNumber": { "type": "string" }, "displayName": { "type": "string" }, "resources": { "type": "object", "properties": { "hostingSite": { "type": "string" }, "realtimeDatabaseInstance": { "type": "string" }, "storageBucket": { "type": "string" }, "locationId": { "type": "string" } } }, "state": { "type": "string" }, "turbot": { "type": "object", "properties": { "akas": { "type": "array", "items": { "$ref": "#/definitions/firebaseProjectAka" } }, "metadata": { "type": "object", "properties": { "createTimestamp": { "$ref": "turbot#/definitions/isoTimestamp" }, "gcp": { "$ref": "gcp#/definitions/gcpMetadata" } } } } } }, "additionalProperties": true, ".turbot": { "uri": "tmod:@turbot/gcp-firebase#/definitions/firebaseProject", "modUri": "tmod:@turbot/gcp-firebase" }}
firebaseProjectAka
{ "type": "string", "pattern": "^gcp://firebase.googleapis.com/projects/[a-z0-9-]{5,29}[a-z0-9]{1}", "tests": [ { "description": "Valid - Base case", "input": "gcp://firebase.googleapis.com/projects/cse-legolas-2" }, { "description": "Invalid - Malformed resource collection", "input": "gcp://firebase.googleapis.com/projects/cse-legolas-2", "expected": false }, { "description": "Invalid - Malformed region name", "input": "gcp://firebase.googleapis.com/projects/cse-legolas-2", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/gcp-firebase#/definitions/firebaseProjectAka", "modUri": "tmod:@turbot/gcp-firebase" }}
IosApp
{ "description": "Details of a Firebase App for iOS.", "properties": { "apiKeyId": { "description": "The globally unique, Google-assigned identifier (UID) for the Firebase API key associated with the `IosApp`. 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](../../rest/v1beta1/projects.iosApps/getConfig). If `api_key_id` is not set in requests to [`iosApps.Create`](../../rest/v1beta1/projects.iosApps/create), then Firebase automatically associates an `api_key_id` with the `IosApp`. 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, `api_key_id` 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 `IosApp`. We recommend using the [Google Cloud Console](https://console.cloud.google.com/apis/credentials) to manage API keys.", "type": "string" }, "appId": { "description": "Output only. Immutable. The globally unique, Firebase-assigned identifier for the `IosApp`. This identifier should be treated as an opaque token, as the data format is not specified.", "readOnly": true, "type": "string" }, "appStoreId": { "description": "The automatically generated Apple ID assigned to the iOS app by Apple in the iOS App Store.", "type": "string" }, "bundleId": { "description": "Immutable. The canonical bundle ID of the iOS app as it would appear in the iOS AppStore.", "type": "string" }, "displayName": { "description": "The user-assigned display name for the `IosApp`.", "type": "string" }, "etag": { "description": "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.", "type": "string" }, "expireTime": { "description": "Output only. Timestamp of when the App will be considered expired and cannot be undeleted. This value is only provided if the App is in the `DELETED` state.", "readOnly": true, "type": "string" }, "name": { "description": "The resource name of the IosApp, in the format: projects/PROJECT_IDENTIFIER /iosApps/APP_ID * PROJECT_IDENTIFIER: the parent Project's [`ProjectNumber`](../projects#FirebaseProject.FIELDS.project_number) ***(recommended)*** or its [`ProjectId`](../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 PROJECT_IDENTIFIER in any response body will be the `ProjectId`. * APP_ID: the globally unique, Firebase-assigned identifier for the App (see [`appId`](../projects.iosApps#IosApp.FIELDS.app_id)).", "type": "string" }, "projectId": { "description": "Output only. Immutable. A user-assigned unique identifier of the parent FirebaseProject for the `IosApp`.", "readOnly": true, "type": "string" }, "state": { "description": "Output only. The lifecycle state of the App.", "enum": [ "STATE_UNSPECIFIED", "ACTIVE", "DELETED" ], "readOnly": true, "type": "string" }, "teamId": { "description": "The Apple Developer Team ID associated with the App in the App Store.", "type": "string" } }, "type": "object", ".turbot": { "uri": "tmod:@turbot/gcp-firebase#/definitions/IosApp", "modUri": "tmod:@turbot/gcp-firebase" }}
WebApp
{ "description": "Details of a Firebase App for the web.", "properties": { "apiKeyId": { "description": "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](../../rest/v1beta1/projects.webApps/getConfig). If `api_key_id` is not set in requests to [`webApps.Create`](../../rest/v1beta1/projects.webApps/create), then Firebase automatically associates an `api_key_id` 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, `api_key_id` 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.", "type": "string" }, "appId": { "description": "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.", "readOnly": true, "type": "string" }, "appUrls": { "description": "The URLs where the `WebApp` is hosted.", "items": { "type": "string" }, "type": "array" }, "displayName": { "description": "The user-assigned display name for the `WebApp`.", "type": "string" }, "etag": { "description": "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.", "type": "string" }, "expireTime": { "description": "Output only. Timestamp of when the App will be considered expired and cannot be undeleted. This value is only provided if the App is in the `DELETED` state.", "readOnly": true, "type": "string" }, "name": { "description": "The resource name of the WebApp, in the format: projects/PROJECT_IDENTIFIER /webApps/APP_ID * PROJECT_IDENTIFIER: the parent Project's [`ProjectNumber`](../projects#FirebaseProject.FIELDS.project_number) ***(recommended)*** or its [`ProjectId`](../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 PROJECT_IDENTIFIER in any response body will be the `ProjectId`. * APP_ID: the globally unique, Firebase-assigned identifier for the App (see [`appId`](../projects.webApps#WebApp.FIELDS.app_id)).", "type": "string" }, "projectId": { "description": "Output only. Immutable. A user-assigned unique identifier of the parent FirebaseProject for the `WebApp`.", "readOnly": true, "type": "string" }, "state": { "description": "Output only. The lifecycle state of the App.", "enum": [ "STATE_UNSPECIFIED", "ACTIVE", "DELETED" ], "readOnly": true, "type": "string" }, "webId": { "deprecated": true, "description": "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.", "readOnly": true, "type": "string" } }, "type": "object", ".turbot": { "uri": "tmod:@turbot/gcp-firebase#/definitions/WebApp", "modUri": "tmod:@turbot/gcp-firebase" }}