1368 lines
		
	
	
		
			53 KiB
		
	
	
	
		
			Ruby
		
	
	
	
			
		
		
	
	
			1368 lines
		
	
	
		
			53 KiB
		
	
	
	
		
			Ruby
		
	
	
	
| # Copyright 2015 Google Inc.
 | |
| #
 | |
| # Licensed under the Apache License, Version 2.0 (the "License");
 | |
| # you may not use this file except in compliance with the License.
 | |
| # You may obtain a copy of the License at
 | |
| #
 | |
| #      http://www.apache.org/licenses/LICENSE-2.0
 | |
| #
 | |
| # Unless required by applicable law or agreed to in writing, software
 | |
| # distributed under the License is distributed on an "AS IS" BASIS,
 | |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | |
| # See the License for the specific language governing permissions and
 | |
| # limitations under the License.
 | |
| 
 | |
| require 'date'
 | |
| require 'google/apis/core/base_service'
 | |
| require 'google/apis/core/json_representation'
 | |
| require 'google/apis/core/hashable'
 | |
| require 'google/apis/errors'
 | |
| 
 | |
| module Google
 | |
|   module Apis
 | |
|     module FirebaseV1beta1
 | |
|       
 | |
|       # All fields are required.
 | |
|       class AddFirebaseRequest
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # Deprecated. Instead, to set your project's default GCP resource location,
 | |
|         # call [`FinalizeDefaultLocation`](../projects.defaultLocation/finalize)
 | |
|         # after you add Firebase resources to your project.
 | |
|         # <br>
 | |
|         # <br>The ID of the project's default GCP resource location. The location
 | |
|         # must be one of the available
 | |
|         # [GCP resource
 | |
|         # locations](https://firebase.google.com/docs/projects/locations).
 | |
|         # Corresponds to the JSON property `locationId`
 | |
|         # @return [String]
 | |
|         attr_accessor :location_id
 | |
|       
 | |
|         # Deprecated. Instead, to link your Project with a Google Analytics account,
 | |
|         # call [`AddGoogleAnalytics`](../../v1beta1/projects/addGoogleAnalytics)
 | |
|         # after you add Firebase resources to your Project.
 | |
|         # <br>
 | |
|         # <br>The region code (CLDR) that the account will use for Firebase Analytics
 | |
|         # data.
 | |
|         # <br>For example: US, GB, or DE
 | |
|         # <br>
 | |
|         # <br>In Java, use `com.google.i18n.identifiers.RegionCode`.
 | |
|         # Corresponds to the JSON property `regionCode`
 | |
|         # @return [String]
 | |
|         attr_accessor :region_code
 | |
|       
 | |
|         # Deprecated. Instead, to link your Project with a Google Analytics account,
 | |
|         # call [`AddGoogleAnalytics`](../../v1beta1/projects/addGoogleAnalytics)
 | |
|         # after you add Firebase resources to your Project.
 | |
|         # <br>
 | |
|         # <br>The time zone that the account will use for Firebase Analytics data.
 | |
|         # <br>For example: America/Los_Angeles or Africa/Abidjan
 | |
|         # Corresponds to the JSON property `timeZone`
 | |
|         # @return [String]
 | |
|         attr_accessor :time_zone
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @location_id = args[:location_id] if args.key?(:location_id)
 | |
|           @region_code = args[:region_code] if args.key?(:region_code)
 | |
|           @time_zone = args[:time_zone] if args.key?(:time_zone)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # 
 | |
|       class AddGoogleAnalyticsRequest
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The ID for the existing
 | |
|         # [Google Analytics account](http://www.google.com/analytics/) that you
 | |
|         # want to link with your `FirebaseProject`.
 | |
|         # <br>
 | |
|         # <br>Specifying this field will provision a new Google Analytics
 | |
|         # property in your Google Analytics account and associate the new property
 | |
|         # with your `FirebaseProject`.
 | |
|         # Corresponds to the JSON property `analyticsAccountId`
 | |
|         # @return [String]
 | |
|         attr_accessor :analytics_account_id
 | |
|       
 | |
|         # The ID for the existing Google Analytics property that you want to
 | |
|         # associate with your `FirebaseProject`.
 | |
|         # Corresponds to the JSON property `analyticsPropertyId`
 | |
|         # @return [String]
 | |
|         attr_accessor :analytics_property_id
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @analytics_account_id = args[:analytics_account_id] if args.key?(:analytics_account_id)
 | |
|           @analytics_property_id = args[:analytics_property_id] if args.key?(:analytics_property_id)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # 
 | |
|       class AdminSdkConfig
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The default Firebase Realtime Database URL.
 | |
|         # Corresponds to the JSON property `databaseURL`
 | |
|         # @return [String]
 | |
|         attr_accessor :database_url
 | |
|       
 | |
|         # The ID of the project's default GCP resource location. The location is one
 | |
|         # of the available
 | |
|         # [GCP resource
 | |
|         # locations](https://firebase.google.com/docs/projects/locations). <br>
 | |
|         # <br>This field is omitted if the default GCP resource location has not been
 | |
|         # finalized yet. To set your project's default GCP resource location,
 | |
|         # call [`FinalizeDefaultLocation`](../projects.defaultLocation/finalize)
 | |
|         # after you add Firebase services to your project.
 | |
|         # Corresponds to the JSON property `locationId`
 | |
|         # @return [String]
 | |
|         attr_accessor :location_id
 | |
|       
 | |
|         # Immutable. The globally unique, user-assigned project ID of the parent
 | |
|         # Project.
 | |
|         # Corresponds to the JSON property `projectId`
 | |
|         # @return [String]
 | |
|         attr_accessor :project_id
 | |
|       
 | |
|         # The default Cloud Storage for Firebase storage bucket name.
 | |
|         # Corresponds to the JSON property `storageBucket`
 | |
|         # @return [String]
 | |
|         attr_accessor :storage_bucket
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @database_url = args[:database_url] if args.key?(:database_url)
 | |
|           @location_id = args[:location_id] if args.key?(:location_id)
 | |
|           @project_id = args[:project_id] if args.key?(:project_id)
 | |
|           @storage_bucket = args[:storage_bucket] if args.key?(:storage_bucket)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # 
 | |
|       class AnalyticsDetails
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # Details of a Google Analytics property
 | |
|         # Corresponds to the JSON property `analyticsProperty`
 | |
|         # @return [Google::Apis::FirebaseV1beta1::AnalyticsProperty]
 | |
|         attr_accessor :analytics_property
 | |
|       
 | |
|         # For Android Apps and iOS Apps: A map of `app` to `streamId` for each
 | |
|         # Firebase App in the specified `FirebaseProject`. Each `app` and
 | |
|         # `streamId` appears only once.<br>
 | |
|         # <br>
 | |
|         # For Web Apps: A map of `app` to `streamId` and `measurementId` for each
 | |
|         # Firebase App in the specified `FirebaseProject`. Each `app`, `streamId`,
 | |
|         # and `measurementId` appears only once.
 | |
|         # Corresponds to the JSON property `streamMappings`
 | |
|         # @return [Array<Google::Apis::FirebaseV1beta1::StreamMapping>]
 | |
|         attr_accessor :stream_mappings
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @analytics_property = args[:analytics_property] if args.key?(:analytics_property)
 | |
|           @stream_mappings = args[:stream_mappings] if args.key?(:stream_mappings)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Details of a Google Analytics property
 | |
|       class AnalyticsProperty
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The display name of the Google Analytics property associated with the
 | |
|         # specified `FirebaseProject`.
 | |
|         # Corresponds to the JSON property `displayName`
 | |
|         # @return [String]
 | |
|         attr_accessor :display_name
 | |
|       
 | |
|         # The globally unique, Google-assigned identifier of the Google Analytics
 | |
|         # property associated with the specified `FirebaseProject`.
 | |
|         # <br>
 | |
|         # <br>If you called
 | |
|         # [`AddGoogleAnalytics`](../../v1beta1/projects/addGoogleAnalytics) to link
 | |
|         # your `FirebaseProject` with a Google Analytics account, the value in this
 | |
|         # `id` field is the same as the ID of the property either specified or
 | |
|         # provisioned with that call to `AddGoogleAnalytics`.
 | |
|         # Corresponds to the JSON property `id`
 | |
|         # @return [String]
 | |
|         attr_accessor :id
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @display_name = args[:display_name] if args.key?(:display_name)
 | |
|           @id = args[:id] if args.key?(:id)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Details of a Firebase App for Android.
 | |
|       class AndroidApp
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # Immutable. The globally unique, Firebase-assigned identifier of the App.
 | |
|         # <br>
 | |
|         # <br>This identifier should be treated as an opaque token, as the data
 | |
|         # format is not specified.
 | |
|         # Corresponds to the JSON property `appId`
 | |
|         # @return [String]
 | |
|         attr_accessor :app_id
 | |
|       
 | |
|         # The user-assigned display name of the App.
 | |
|         # Corresponds to the JSON property `displayName`
 | |
|         # @return [String]
 | |
|         attr_accessor :display_name
 | |
|       
 | |
|         # The fully qualified resource name of the App, in the format:
 | |
|         # <br><code>projects/<var>projectId</var>/androidApps/<var>appId</var></code>
 | |
|         # Corresponds to the JSON property `name`
 | |
|         # @return [String]
 | |
|         attr_accessor :name
 | |
|       
 | |
|         # The canonical package name of the Android App as would appear in the
 | |
|         # Google Play Developer Console.
 | |
|         # Corresponds to the JSON property `packageName`
 | |
|         # @return [String]
 | |
|         attr_accessor :package_name
 | |
|       
 | |
|         # The globally unique, user-assigned ID of the parent Project for the App.
 | |
|         # Corresponds to the JSON property `projectId`
 | |
|         # @return [String]
 | |
|         attr_accessor :project_id
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @app_id = args[:app_id] if args.key?(:app_id)
 | |
|           @display_name = args[:display_name] if args.key?(:display_name)
 | |
|           @name = args[:name] if args.key?(:name)
 | |
|           @package_name = args[:package_name] if args.key?(:package_name)
 | |
|           @project_id = args[:project_id] if args.key?(:project_id)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Configuration metadata of a single Firebase App for Android.
 | |
|       class AndroidAppConfig
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The contents of the JSON configuration file.
 | |
|         # Corresponds to the JSON property `configFileContents`
 | |
|         # NOTE: Values are automatically base64 encoded/decoded in the client library.
 | |
|         # @return [String]
 | |
|         attr_accessor :config_file_contents
 | |
|       
 | |
|         # The filename that the configuration artifact is typically saved as.
 | |
|         # <br>For example: `google-services.json`
 | |
|         # Corresponds to the JSON property `configFilename`
 | |
|         # @return [String]
 | |
|         attr_accessor :config_filename
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @config_file_contents = args[:config_file_contents] if args.key?(:config_file_contents)
 | |
|           @config_filename = args[:config_filename] if args.key?(:config_filename)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # The default resources associated with a `FirebaseProject`.
 | |
|       class DefaultResources
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The default Firebase Hosting site name, in the format:
 | |
|         # <br><code><var>projectId</var></code>
 | |
|         # <br>Though rare, your `projectId` might already be used as the name for an
 | |
|         # existing Hosting site in another project (learn more about creating
 | |
|         # non-default,
 | |
|         # [additional sites](https://firebase.google.com/docs/hosting/multisites)).
 | |
|         # In these cases, your `projectId` is appended with a hyphen then five
 | |
|         # alphanumeric characters to create your default Hosting site name. For
 | |
|         # example, if your `projectId` is `myproject123`, your default Hosting site
 | |
|         # name might be:
 | |
|         # <br><code>myproject123-a5c16</code>
 | |
|         # Corresponds to the JSON property `hostingSite`
 | |
|         # @return [String]
 | |
|         attr_accessor :hosting_site
 | |
|       
 | |
|         # The ID of the project's default GCP resource location. The location is one
 | |
|         # of the available
 | |
|         # [GCP resource
 | |
|         # locations](https://firebase.google.com/docs/projects/locations). <br>
 | |
|         # <br>This field is omitted if the default GCP resource location has not been
 | |
|         # finalized yet. To set your project's default GCP resource location,
 | |
|         # call [`FinalizeDefaultLocation`](../projects.defaultLocation/finalize)
 | |
|         # after you add Firebase services to your project.
 | |
|         # Corresponds to the JSON property `locationId`
 | |
|         # @return [String]
 | |
|         attr_accessor :location_id
 | |
|       
 | |
|         # The default Firebase Realtime Database instance name, in the format:
 | |
|         # <br><code><var>projectId</var></code>
 | |
|         # <br>Though rare, your `projectId` might already be used as the name for an
 | |
|         # existing Realtime Database instance in another project (learn more about
 | |
|         # [database
 | |
|         # sharding](https://firebase.google.com/docs/database/usage/sharding)). In
 | |
|         # these cases, your `projectId` is appended with a hyphen then five
 | |
|         # alphanumeric characters to create your default Realtime Database instance
 | |
|         # name. For example, if your `projectId` is `myproject123`, your default
 | |
|         # database instance name might be:
 | |
|         # <br><code>myproject123-a5c16</code>
 | |
|         # Corresponds to the JSON property `realtimeDatabaseInstance`
 | |
|         # @return [String]
 | |
|         attr_accessor :realtime_database_instance
 | |
|       
 | |
|         # The default Cloud Storage for Firebase storage bucket, in the format:
 | |
|         # <br><code><var>projectId</var>.appspot.com</code>
 | |
|         # Corresponds to the JSON property `storageBucket`
 | |
|         # @return [String]
 | |
|         attr_accessor :storage_bucket
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @hosting_site = args[:hosting_site] if args.key?(:hosting_site)
 | |
|           @location_id = args[:location_id] if args.key?(:location_id)
 | |
|           @realtime_database_instance = args[:realtime_database_instance] if args.key?(:realtime_database_instance)
 | |
|           @storage_bucket = args[:storage_bucket] if args.key?(:storage_bucket)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # A generic empty message that you can re-use to avoid defining duplicated
 | |
|       # empty messages in your APIs. A typical example is to use it as the request
 | |
|       # or the response type of an API method. For instance:
 | |
|       # service Foo `
 | |
|       # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
 | |
|       # `
 | |
|       # The JSON representation for `Empty` is empty JSON object ````.
 | |
|       class Empty
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # 
 | |
|       class FinalizeDefaultLocationRequest
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The ID of the default GCP resource location for the Project. The location
 | |
|         # must be one of the available
 | |
|         # [GCP resource
 | |
|         # locations](https://firebase.google.com/docs/projects/locations).
 | |
|         # Corresponds to the JSON property `locationId`
 | |
|         # @return [String]
 | |
|         attr_accessor :location_id
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @location_id = args[:location_id] if args.key?(:location_id)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # A high-level summary of an App.
 | |
|       class FirebaseAppInfo
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # Immutable. The globally unique, Firebase-assigned identifier of the App.
 | |
|         # <br>
 | |
|         # <br>This identifier should be treated as an opaque token, as the data
 | |
|         # format is not specified.
 | |
|         # Corresponds to the JSON property `appId`
 | |
|         # @return [String]
 | |
|         attr_accessor :app_id
 | |
|       
 | |
|         # The user-assigned display name of the Firebase App.
 | |
|         # Corresponds to the JSON property `displayName`
 | |
|         # @return [String]
 | |
|         attr_accessor :display_name
 | |
|       
 | |
|         # The fully qualified resource name of the Firebase App, in the format:
 | |
|         # <br><code>projects/<var>projectId</var>/iosApps/<var>appId</var></code>
 | |
|         # or <br><code>projects/<var>projectId</var>/androidApps/<var>appId</var>
 | |
|         # </code>
 | |
|         # Corresponds to the JSON property `name`
 | |
|         # @return [String]
 | |
|         attr_accessor :name
 | |
|       
 | |
|         # The platform of the Firebase App.
 | |
|         # Corresponds to the JSON property `platform`
 | |
|         # @return [String]
 | |
|         attr_accessor :platform
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @app_id = args[:app_id] if args.key?(:app_id)
 | |
|           @display_name = args[:display_name] if args.key?(:display_name)
 | |
|           @name = args[:name] if args.key?(:name)
 | |
|           @platform = args[:platform] if args.key?(:platform)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # A `FirebaseProject` is the top-level Firebase entity. It is the container for
 | |
|       # Firebase Apps, Firebase Hosting sites, storage systems (Firebase Realtime
 | |
|       # Database, Cloud Firestore, Cloud Storage buckets) and other Firebase and
 | |
|       # Google Cloud Platform (GCP) resources.
 | |
|       # <br>
 | |
|       # <br>You can create a new `FirebaseProject` in the
 | |
|       # [Firebase console](https://console.firebase.google.com/),
 | |
|       # or you can add Firebase resources to an existing
 | |
|       # [GCP
 | |
|       # `Project`](https://cloud.google.com/resource-manager/reference/rest/v1/
 | |
|       # projects)
 | |
|       # by calling
 | |
|       # AddFirebase.
 | |
|       # <br>
 | |
|       # <br>A `FirebaseProject` is actually also a GCP `Project`, so a
 | |
|       # `FirebaseProject` uses underlying GCP identifiers (most importantly,
 | |
|       # `projectId`) as its own for easy interop with GCP APIs.
 | |
|       class FirebaseProject
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The user-assigned display name of the Project.
 | |
|         # Corresponds to the JSON property `displayName`
 | |
|         # @return [String]
 | |
|         attr_accessor :display_name
 | |
|       
 | |
|         # The fully qualified resource name of the Project, in the format:
 | |
|         # <br><code>projects/<var>projectId</var></code>
 | |
|         # Corresponds to the JSON property `name`
 | |
|         # @return [String]
 | |
|         attr_accessor :name
 | |
|       
 | |
|         # Immutable. The globally unique, user-assigned ID of the Project.
 | |
|         # Corresponds to the JSON property `projectId`
 | |
|         # @return [String]
 | |
|         attr_accessor :project_id
 | |
|       
 | |
|         # The globally unique, Google-assigned identifier of the Project.
 | |
|         # Corresponds to the JSON property `projectNumber`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :project_number
 | |
|       
 | |
|         # The default resources associated with a `FirebaseProject`.
 | |
|         # Corresponds to the JSON property `resources`
 | |
|         # @return [Google::Apis::FirebaseV1beta1::DefaultResources]
 | |
|         attr_accessor :resources
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @display_name = args[:display_name] if args.key?(:display_name)
 | |
|           @name = args[:name] if args.key?(:name)
 | |
|           @project_id = args[:project_id] if args.key?(:project_id)
 | |
|           @project_number = args[:project_number] if args.key?(:project_number)
 | |
|           @resources = args[:resources] if args.key?(:resources)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Details of a Firebase App for iOS.
 | |
|       class IosApp
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # Immutable. The globally unique, Firebase-assigned identifier of the App.
 | |
|         # <br>
 | |
|         # <br>This identifier should be treated as an opaque token, as the data
 | |
|         # format is not specified.
 | |
|         # Corresponds to the JSON property `appId`
 | |
|         # @return [String]
 | |
|         attr_accessor :app_id
 | |
|       
 | |
|         # The automatically generated Apple ID assigned to the App by Apple in the
 | |
|         # iOS App Store.
 | |
|         # Corresponds to the JSON property `appStoreId`
 | |
|         # @return [String]
 | |
|         attr_accessor :app_store_id
 | |
|       
 | |
|         # The canonical bundle ID of the iOS App as it would appear in the iOS
 | |
|         # AppStore.
 | |
|         # Corresponds to the JSON property `bundleId`
 | |
|         # @return [String]
 | |
|         attr_accessor :bundle_id
 | |
|       
 | |
|         # The user-assigned display name of the App.
 | |
|         # Corresponds to the JSON property `displayName`
 | |
|         # @return [String]
 | |
|         attr_accessor :display_name
 | |
|       
 | |
|         # The fully qualified resource name of the App, in the format:
 | |
|         # <br><code>projects/<var>projectId</var>/iosApps/<var>appId</var></code>
 | |
|         # Corresponds to the JSON property `name`
 | |
|         # @return [String]
 | |
|         attr_accessor :name
 | |
|       
 | |
|         # The globally unique, user-assigned ID of the parent Project for the App.
 | |
|         # Corresponds to the JSON property `projectId`
 | |
|         # @return [String]
 | |
|         attr_accessor :project_id
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @app_id = args[:app_id] if args.key?(:app_id)
 | |
|           @app_store_id = args[:app_store_id] if args.key?(:app_store_id)
 | |
|           @bundle_id = args[:bundle_id] if args.key?(:bundle_id)
 | |
|           @display_name = args[:display_name] if args.key?(:display_name)
 | |
|           @name = args[:name] if args.key?(:name)
 | |
|           @project_id = args[:project_id] if args.key?(:project_id)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Configuration metadata of a single Firebase App for iOS.
 | |
|       class IosAppConfig
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The content of the XML configuration file.
 | |
|         # Corresponds to the JSON property `configFileContents`
 | |
|         # NOTE: Values are automatically base64 encoded/decoded in the client library.
 | |
|         # @return [String]
 | |
|         attr_accessor :config_file_contents
 | |
|       
 | |
|         # The filename that the configuration artifact is typically saved as.
 | |
|         # <br>For example: `GoogleService-Info.plist`
 | |
|         # Corresponds to the JSON property `configFilename`
 | |
|         # @return [String]
 | |
|         attr_accessor :config_filename
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @config_file_contents = args[:config_file_contents] if args.key?(:config_file_contents)
 | |
|           @config_filename = args[:config_filename] if args.key?(:config_filename)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # 
 | |
|       class ListAndroidAppsResponse
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # List of each AndroidApp that is in the parent Firebase Project.
 | |
|         # Corresponds to the JSON property `apps`
 | |
|         # @return [Array<Google::Apis::FirebaseV1beta1::AndroidApp>]
 | |
|         attr_accessor :apps
 | |
|       
 | |
|         # If the result list is too large to fit in a single response, then a token
 | |
|         # is returned. If the string is empty, then this response is the last page of
 | |
|         # results.
 | |
|         # <br>
 | |
|         # <br>This token can be used in a subsequent call to `ListAndroidApps` to
 | |
|         # find the next group of Apps.
 | |
|         # <br>
 | |
|         # <br>Page tokens are short-lived and should not be persisted.
 | |
|         # Corresponds to the JSON property `nextPageToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :next_page_token
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @apps = args[:apps] if args.key?(:apps)
 | |
|           @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # 
 | |
|       class ListAvailableLocationsResponse
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # One page of results from a call to `ListAvailableLocations`.
 | |
|         # Corresponds to the JSON property `locations`
 | |
|         # @return [Array<Google::Apis::FirebaseV1beta1::Location>]
 | |
|         attr_accessor :locations
 | |
|       
 | |
|         # If the result list is too large to fit in a single response, then a token
 | |
|         # is returned. If the string is empty, then this response is the last page of
 | |
|         # results and all available locations have been listed.
 | |
|         # <br>
 | |
|         # <br>This token can be used in a subsequent call to
 | |
|         # `ListAvailableLocations` to find more locations.
 | |
|         # <br>
 | |
|         # <br>Page tokens are short-lived and should not be persisted.
 | |
|         # Corresponds to the JSON property `nextPageToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :next_page_token
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @locations = args[:locations] if args.key?(:locations)
 | |
|           @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # 
 | |
|       class ListAvailableProjectsResponse
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # If the result list is too large to fit in a single response, then a token
 | |
|         # is returned. If the string is empty, then this response is the last page of
 | |
|         # results.
 | |
|         # <br>
 | |
|         # <br>This token can be used in a subsequent calls to `ListAvailableProjects`
 | |
|         # to find the next group of GCP `Projects`.
 | |
|         # <br>
 | |
|         # <br>Page tokens are short-lived and should not be persisted.
 | |
|         # Corresponds to the JSON property `nextPageToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :next_page_token
 | |
|       
 | |
|         # The list of GCP `Projects` which can have Firebase resources added to them.
 | |
|         # Corresponds to the JSON property `projectInfo`
 | |
|         # @return [Array<Google::Apis::FirebaseV1beta1::ProjectInfo>]
 | |
|         attr_accessor :project_info
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
 | |
|           @project_info = args[:project_info] if args.key?(:project_info)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # 
 | |
|       class ListFirebaseProjectsResponse
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # If the result list is too large to fit in a single response, then a token
 | |
|         # is returned. If the string is empty, then this response is the last page of
 | |
|         # results.
 | |
|         # <br>
 | |
|         # <br>This token can be used in a subsequent calls to `ListFirebaseProjects`
 | |
|         # to find the next group of Projects.
 | |
|         # <br>
 | |
|         # <br>Page tokens are short-lived and should not be persisted.
 | |
|         # Corresponds to the JSON property `nextPageToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :next_page_token
 | |
|       
 | |
|         # One page of the list of Projects that are accessible to the caller.
 | |
|         # Corresponds to the JSON property `results`
 | |
|         # @return [Array<Google::Apis::FirebaseV1beta1::FirebaseProject>]
 | |
|         attr_accessor :results
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
 | |
|           @results = args[:results] if args.key?(:results)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # 
 | |
|       class ListIosAppsResponse
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # List of each IosApp that is in the parent Firebase Project.
 | |
|         # Corresponds to the JSON property `apps`
 | |
|         # @return [Array<Google::Apis::FirebaseV1beta1::IosApp>]
 | |
|         attr_accessor :apps
 | |
|       
 | |
|         # If the result list is too large to fit in a single response, then a token
 | |
|         # is returned. If the string is empty, then this response is the last page of
 | |
|         # results.
 | |
|         # <br>
 | |
|         # <br>This token can be used in a subsequent call to `ListIosApps` to find
 | |
|         # the next group of Apps.
 | |
|         # <br>
 | |
|         # <br>Page tokens are short-lived and should not be persisted.
 | |
|         # Corresponds to the JSON property `nextPageToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :next_page_token
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @apps = args[:apps] if args.key?(:apps)
 | |
|           @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # 
 | |
|       class ListShaCertificatesResponse
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The list of SHA certificates associated with the App.
 | |
|         # Corresponds to the JSON property `certificates`
 | |
|         # @return [Array<Google::Apis::FirebaseV1beta1::ShaCertificate>]
 | |
|         attr_accessor :certificates
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @certificates = args[:certificates] if args.key?(:certificates)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # 
 | |
|       class ListWebAppsResponse
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # List of each WebApp that is in the parent Firebase Project.
 | |
|         # Corresponds to the JSON property `apps`
 | |
|         # @return [Array<Google::Apis::FirebaseV1beta1::WebApp>]
 | |
|         attr_accessor :apps
 | |
|       
 | |
|         # If the result list is too large to fit in a single response, then a token
 | |
|         # is returned. If the string is empty, then this response is the last page of
 | |
|         # results.
 | |
|         # <br>
 | |
|         # <br>This token can be used in a subsequent call to `ListWebApps` to find
 | |
|         # the next group of Apps.
 | |
|         # <br>
 | |
|         # <br>Page tokens are short-lived and should not be persisted.
 | |
|         # Corresponds to the JSON property `nextPageToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :next_page_token
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @apps = args[:apps] if args.key?(:apps)
 | |
|           @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # A GCP resource location that can be selected for a Project.
 | |
|       class Location
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # Products and services that are available in the GCP resource location.
 | |
|         # Corresponds to the JSON property `features`
 | |
|         # @return [Array<String>]
 | |
|         attr_accessor :features
 | |
|       
 | |
|         # The ID of the GCP resource location. It will be one of the available [GCP
 | |
|         # resource
 | |
|         # locations](https://firebase.google.com/docs/projects/locations#types).
 | |
|         # Corresponds to the JSON property `locationId`
 | |
|         # @return [String]
 | |
|         attr_accessor :location_id
 | |
|       
 | |
|         # Indicates whether the GCP resource location is a [regional or
 | |
|         # multi-regional
 | |
|         # location](https://firebase.google.com/docs/projects/locations#types)
 | |
|         # for data replication.
 | |
|         # Corresponds to the JSON property `type`
 | |
|         # @return [String]
 | |
|         attr_accessor :type
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @features = args[:features] if args.key?(:features)
 | |
|           @location_id = args[:location_id] if args.key?(:location_id)
 | |
|           @type = args[:type] if args.key?(:type)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # This is proto2's version of MessageSet.
 | |
|       class MessageSet
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # This resource represents a long-running operation that is the result of a
 | |
|       # network API call.
 | |
|       class Operation
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # If the value is `false`, it means the operation is still in progress.
 | |
|         # If `true`, the operation is completed, and either `error` or `response` is
 | |
|         # available.
 | |
|         # Corresponds to the JSON property `done`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :done
 | |
|         alias_method :done?, :done
 | |
|       
 | |
|         # The `Status` type defines a logical error model that is suitable for
 | |
|         # different programming environments, including REST APIs and RPC APIs. It is
 | |
|         # used by [gRPC](https://github.com/grpc). Each `Status` message contains
 | |
|         # three pieces of data: error code, error message, and error details.
 | |
|         # You can find out more about this error model and how to work with it in the
 | |
|         # [API Design Guide](https://cloud.google.com/apis/design/errors).
 | |
|         # Corresponds to the JSON property `error`
 | |
|         # @return [Google::Apis::FirebaseV1beta1::Status]
 | |
|         attr_accessor :error
 | |
|       
 | |
|         # Service-specific metadata associated with the operation.  It typically
 | |
|         # contains progress information and common metadata such as create time.
 | |
|         # Some services might not provide such metadata.  Any method that returns a
 | |
|         # long-running operation should document the metadata type, if any.
 | |
|         # Corresponds to the JSON property `metadata`
 | |
|         # @return [Hash<String,Object>]
 | |
|         attr_accessor :metadata
 | |
|       
 | |
|         # The server-assigned name, which is only unique within the same service that
 | |
|         # originally returns it. If you use the default HTTP mapping, the
 | |
|         # `name` should be a resource name ending with `operations/`unique_id``.
 | |
|         # Corresponds to the JSON property `name`
 | |
|         # @return [String]
 | |
|         attr_accessor :name
 | |
|       
 | |
|         # The normal response of the operation in case of success.  If the original
 | |
|         # method returns no data on success, such as `Delete`, the response is
 | |
|         # `google.protobuf.Empty`.  If the original method is standard
 | |
|         # `Get`/`Create`/`Update`, the response should be the resource.  For other
 | |
|         # methods, the response should have the type `XxxResponse`, where `Xxx`
 | |
|         # is the original method name.  For example, if the original method name
 | |
|         # is `TakeSnapshot()`, the inferred response type is
 | |
|         # `TakeSnapshotResponse`.
 | |
|         # Corresponds to the JSON property `response`
 | |
|         # @return [Hash<String,Object>]
 | |
|         attr_accessor :response
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @done = args[:done] if args.key?(:done)
 | |
|           @error = args[:error] if args.key?(:error)
 | |
|           @metadata = args[:metadata] if args.key?(:metadata)
 | |
|           @name = args[:name] if args.key?(:name)
 | |
|           @response = args[:response] if args.key?(:response)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # A reference to a Google Cloud Platform (GCP) `Project`.
 | |
|       class ProjectInfo
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The user-assigned display name of the GCP `Project`, for example:
 | |
|         # <code>My App</code>
 | |
|         # Corresponds to the JSON property `displayName`
 | |
|         # @return [String]
 | |
|         attr_accessor :display_name
 | |
|       
 | |
|         # The ID of the project's default GCP resource location. The location is one
 | |
|         # of the available
 | |
|         # [GCP resource
 | |
|         # locations](https://firebase.google.com/docs/projects/locations). <br> <br>
 | |
|         # Not all projects will have this field populated. If it is not populated, it
 | |
|         # means that the project does not yet have a default GCP resource location.
 | |
|         # To set your project's default GCP resource location, call
 | |
|         # [`FinalizeDefaultLocation`](../projects.defaultLocation/finalize) after you
 | |
|         # add Firebase resources to your project.
 | |
|         # Corresponds to the JSON property `locationId`
 | |
|         # @return [String]
 | |
|         attr_accessor :location_id
 | |
|       
 | |
|         # The resource name of the GCP `Project` to which Firebase resources can be
 | |
|         # added, in the format:
 | |
|         # <br><code>projects/<var>projectId</var></code>
 | |
|         # Corresponds to the JSON property `project`
 | |
|         # @return [String]
 | |
|         attr_accessor :project
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @display_name = args[:display_name] if args.key?(:display_name)
 | |
|           @location_id = args[:location_id] if args.key?(:location_id)
 | |
|           @project = args[:project] if args.key?(:project)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # 
 | |
|       class RemoveAnalyticsRequest
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # Optional. The ID of the Google Analytics property associated with the
 | |
|         # specified `FirebaseProject`.
 | |
|         # <ul>
 | |
|         # <li>If not set, then the Google Analytics property that is currently
 | |
|         # associated with the specified `FirebaseProject` is removed.</li>
 | |
|         # <li>If set, and the specified `FirebaseProject` is currently associated
 | |
|         # with a <em>different</em> Google Analytics property, then the response is a
 | |
|         # `412 Precondition Failed` error.</li>
 | |
|         # </ul>
 | |
|         # Corresponds to the JSON property `analyticsPropertyId`
 | |
|         # @return [String]
 | |
|         attr_accessor :analytics_property_id
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @analytics_property_id = args[:analytics_property_id] if args.key?(:analytics_property_id)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # 
 | |
|       class SearchFirebaseAppsResponse
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # One page of results from a call to `SearchFirebaseApps`.
 | |
|         # Corresponds to the JSON property `apps`
 | |
|         # @return [Array<Google::Apis::FirebaseV1beta1::FirebaseAppInfo>]
 | |
|         attr_accessor :apps
 | |
|       
 | |
|         # If the result list is too large to fit in a single response, then a token
 | |
|         # is returned.
 | |
|         # <br>
 | |
|         # <br>This token can be used in a subsequent calls to `SearchFirebaseApps`
 | |
|         # to find the next group of Apps.
 | |
|         # <br>If the string is empty, then this response is the last page of results.
 | |
|         # <br>Page tokens are short-lived and should not be persisted.
 | |
|         # Corresponds to the JSON property `nextPageToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :next_page_token
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @apps = args[:apps] if args.key?(:apps)
 | |
|           @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # A SHA-1 or SHA-256 certificate associated with the AndroidApp.
 | |
|       class ShaCertificate
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The SHA certificate type.
 | |
|         # Corresponds to the JSON property `certType`
 | |
|         # @return [String]
 | |
|         attr_accessor :cert_type
 | |
|       
 | |
|         # The fully qualified resource name of the `sha-key`, in the format:
 | |
|         # <br><code>projects/<var>projectId</var>/androidApps/<var>appId</var>/sha/<var>
 | |
|         # shaId</var></code>
 | |
|         # Corresponds to the JSON property `name`
 | |
|         # @return [String]
 | |
|         attr_accessor :name
 | |
|       
 | |
|         # The certificate hash for the App.
 | |
|         # Corresponds to the JSON property `shaHash`
 | |
|         # @return [String]
 | |
|         attr_accessor :sha_hash
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @cert_type = args[:cert_type] if args.key?(:cert_type)
 | |
|           @name = args[:name] if args.key?(:name)
 | |
|           @sha_hash = args[:sha_hash] if args.key?(:sha_hash)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # The `Status` type defines a logical error model that is suitable for
 | |
|       # different programming environments, including REST APIs and RPC APIs. It is
 | |
|       # used by [gRPC](https://github.com/grpc). Each `Status` message contains
 | |
|       # three pieces of data: error code, error message, and error details.
 | |
|       # You can find out more about this error model and how to work with it in the
 | |
|       # [API Design Guide](https://cloud.google.com/apis/design/errors).
 | |
|       class Status
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The status code, which should be an enum value of google.rpc.Code.
 | |
|         # Corresponds to the JSON property `code`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :code
 | |
|       
 | |
|         # A list of messages that carry the error details.  There is a common set of
 | |
|         # message types for APIs to use.
 | |
|         # Corresponds to the JSON property `details`
 | |
|         # @return [Array<Hash<String,Object>>]
 | |
|         attr_accessor :details
 | |
|       
 | |
|         # A developer-facing error message, which should be in English. Any
 | |
|         # user-facing error message should be localized and sent in the
 | |
|         # google.rpc.Status.details field, or localized by the client.
 | |
|         # Corresponds to the JSON property `message`
 | |
|         # @return [String]
 | |
|         attr_accessor :message
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @code = args[:code] if args.key?(:code)
 | |
|           @details = args[:details] if args.key?(:details)
 | |
|           @message = args[:message] if args.key?(:message)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Wire-format for a Status object
 | |
|       class StatusProto
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The canonical error code (see codes.proto) that most closely
 | |
|         # corresponds to this status. May be missing.
 | |
|         # Corresponds to the JSON property `canonicalCode`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :canonical_code
 | |
|       
 | |
|         # Numeric code drawn from the space specified below. Often, this is the
 | |
|         # canonical error space, and code is drawn from google3/util/task/codes.proto
 | |
|         # Corresponds to the JSON property `code`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :code
 | |
|       
 | |
|         # Detail message
 | |
|         # Corresponds to the JSON property `message`
 | |
|         # @return [String]
 | |
|         attr_accessor :message
 | |
|       
 | |
|         # This is proto2's version of MessageSet.
 | |
|         # Corresponds to the JSON property `messageSet`
 | |
|         # @return [Google::Apis::FirebaseV1beta1::MessageSet]
 | |
|         attr_accessor :message_set
 | |
|       
 | |
|         # Message that groups a protocol type_id (as defined by MessageSet),
 | |
|         # with an encoded message of that type.  Its use is similar to
 | |
|         # MessageSet, except it represents a single (type, encoded message)
 | |
|         # instead of a set.
 | |
|         # To fill for known protocol type:
 | |
|         # MyProtocolMsg proto;
 | |
|         # TypedMessage typed_msg;
 | |
|         # typed_msg.set_type_id(MyProtocolMsg::MESSAGE_TYPE_ID);
 | |
|         # proto.AppendToCord(typed_msg.mutable_message());
 | |
|         # To fill for unknown protocol type:
 | |
|         # ProtocolMessage proto;
 | |
|         # TypedMessage typed_msg;
 | |
|         # typed_msg.set_type_id(proto.GetMapper()->type_id());
 | |
|         # proto.AppendToCord(typed_msg.mutable_message());
 | |
|         # Corresponds to the JSON property `payload`
 | |
|         # @return [Google::Apis::FirebaseV1beta1::TypedMessage]
 | |
|         attr_accessor :payload
 | |
|       
 | |
|         # The following are usually only present when code != 0
 | |
|         # Space to which this status belongs
 | |
|         # Corresponds to the JSON property `space`
 | |
|         # @return [String]
 | |
|         attr_accessor :space
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @canonical_code = args[:canonical_code] if args.key?(:canonical_code)
 | |
|           @code = args[:code] if args.key?(:code)
 | |
|           @message = args[:message] if args.key?(:message)
 | |
|           @message_set = args[:message_set] if args.key?(:message_set)
 | |
|           @payload = args[:payload] if args.key?(:payload)
 | |
|           @space = args[:space] if args.key?(:space)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # A mapping of a Firebase App to a Google Analytics data stream
 | |
|       class StreamMapping
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The fully qualified resource name of the Firebase App associated with the
 | |
|         # Google Analytics data stream, in the format:
 | |
|         # <br><code>projects/<var>projectId</var>/androidApps/<var>appId</var></code>
 | |
|         # or
 | |
|         # <code>projects/<var>projectId</var>/iosApps/<var>appId</var></code>
 | |
|         # or
 | |
|         # <code>projects/<var>projectId</var>/webApps/<var>appId</var></code>
 | |
|         # Corresponds to the JSON property `app`
 | |
|         # @return [String]
 | |
|         attr_accessor :app
 | |
|       
 | |
|         # Applicable for Firebase Web Apps only.<br>
 | |
|         # <br>The unique Google-assigned identifier of the Google Analytics web
 | |
|         # stream associated with the Firebase Web App. Firebase SDKs use this ID to
 | |
|         # interact with Google Analytics APIs.
 | |
|         # <br>
 | |
|         # <br>Learn more about this ID and Google Analytics web streams in the
 | |
|         # [Analytics
 | |
|         # documentation](https://support.google.com/analytics/topic/9303475).
 | |
|         # Corresponds to the JSON property `measurementId`
 | |
|         # @return [String]
 | |
|         attr_accessor :measurement_id
 | |
|       
 | |
|         # The unique Google-assigned identifier of the Google Analytics data stream
 | |
|         # associated with the Firebase App.
 | |
|         # <br>
 | |
|         # <br>Learn more about Google Analytics data streams in the
 | |
|         # [Analytics
 | |
|         # documentation](https://support.google.com/analytics/answer/9303323).
 | |
|         # Corresponds to the JSON property `streamId`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :stream_id
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @app = args[:app] if args.key?(:app)
 | |
|           @measurement_id = args[:measurement_id] if args.key?(:measurement_id)
 | |
|           @stream_id = args[:stream_id] if args.key?(:stream_id)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Message that groups a protocol type_id (as defined by MessageSet),
 | |
|       # with an encoded message of that type.  Its use is similar to
 | |
|       # MessageSet, except it represents a single (type, encoded message)
 | |
|       # instead of a set.
 | |
|       # To fill for known protocol type:
 | |
|       # MyProtocolMsg proto;
 | |
|       # TypedMessage typed_msg;
 | |
|       # typed_msg.set_type_id(MyProtocolMsg::MESSAGE_TYPE_ID);
 | |
|       # proto.AppendToCord(typed_msg.mutable_message());
 | |
|       # To fill for unknown protocol type:
 | |
|       # ProtocolMessage proto;
 | |
|       # TypedMessage typed_msg;
 | |
|       # typed_msg.set_type_id(proto.GetMapper()->type_id());
 | |
|       # proto.AppendToCord(typed_msg.mutable_message());
 | |
|       class TypedMessage
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # Message bytes.
 | |
|         # Corresponds to the JSON property `message`
 | |
|         # NOTE: Values are automatically base64 encoded/decoded in the client library.
 | |
|         # @return [String]
 | |
|         attr_accessor :message
 | |
|       
 | |
|         # Identifier for the type.
 | |
|         # Corresponds to the JSON property `typeId`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :type_id
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @message = args[:message] if args.key?(:message)
 | |
|           @type_id = args[:type_id] if args.key?(:type_id)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Details of a Firebase App for the web.
 | |
|       class WebApp
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # Immutable. The globally unique, Firebase-assigned identifier of the App.
 | |
|         # <br>
 | |
|         # <br>This identifier should be treated as an opaque token, as the data
 | |
|         # format is not specified.
 | |
|         # Corresponds to the JSON property `appId`
 | |
|         # @return [String]
 | |
|         attr_accessor :app_id
 | |
|       
 | |
|         # The fully qualified URLs where the App is hosted.
 | |
|         # Corresponds to the JSON property `appUrls`
 | |
|         # @return [Array<String>]
 | |
|         attr_accessor :app_urls
 | |
|       
 | |
|         # The user-assigned display name of the App.
 | |
|         # Corresponds to the JSON property `displayName`
 | |
|         # @return [String]
 | |
|         attr_accessor :display_name
 | |
|       
 | |
|         # The fully qualified resource name of the App, for example:
 | |
|         # <br><code>projects/<var>projectId</var>/webApps/<var>appId</var></code>
 | |
|         # Corresponds to the JSON property `name`
 | |
|         # @return [String]
 | |
|         attr_accessor :name
 | |
|       
 | |
|         # The globally unique, user-assigned ID of the parent Project for the App.
 | |
|         # Corresponds to the JSON property `projectId`
 | |
|         # @return [String]
 | |
|         attr_accessor :project_id
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @app_id = args[:app_id] if args.key?(:app_id)
 | |
|           @app_urls = args[:app_urls] if args.key?(:app_urls)
 | |
|           @display_name = args[:display_name] if args.key?(:display_name)
 | |
|           @name = args[:name] if args.key?(:name)
 | |
|           @project_id = args[:project_id] if args.key?(:project_id)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Configuration metadata of a single Firebase App for the web.
 | |
|       class WebAppConfig
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The API key associated with the web App.
 | |
|         # Corresponds to the JSON property `apiKey`
 | |
|         # @return [String]
 | |
|         attr_accessor :api_key
 | |
|       
 | |
|         # Immutable. The globally unique, Firebase-assigned identifier of the App.
 | |
|         # Corresponds to the JSON property `appId`
 | |
|         # @return [String]
 | |
|         attr_accessor :app_id
 | |
|       
 | |
|         # The domain Firebase Auth configures for OAuth redirects, in the format:
 | |
|         # <br><code><var>projectId</var>.firebaseapp.com</code>
 | |
|         # Corresponds to the JSON property `authDomain`
 | |
|         # @return [String]
 | |
|         attr_accessor :auth_domain
 | |
|       
 | |
|         # The default Firebase Realtime Database URL.
 | |
|         # Corresponds to the JSON property `databaseURL`
 | |
|         # @return [String]
 | |
|         attr_accessor :database_url
 | |
|       
 | |
|         # The ID of the project's default GCP resource location. The location is one
 | |
|         # of the available
 | |
|         # [GCP resource
 | |
|         # locations](https://firebase.google.com/docs/projects/locations). <br>
 | |
|         # <br>This field is omitted if the default GCP resource location has not been
 | |
|         # finalized yet. To set your project's default GCP resource location,
 | |
|         # call [`FinalizeDefaultLocation`](../projects.defaultLocation/finalize)
 | |
|         # after you add Firebase services to your project.
 | |
|         # Corresponds to the JSON property `locationId`
 | |
|         # @return [String]
 | |
|         attr_accessor :location_id
 | |
|       
 | |
|         # The unique Google-assigned identifier of the Google Analytics web stream
 | |
|         # associated with the Firebase Web App. Firebase SDKs use this ID to interact
 | |
|         # with Google Analytics APIs.
 | |
|         # <br>
 | |
|         # <br>This field is only present if the App is linked to a web stream in a
 | |
|         # Google Analytics App + Web property. Learn more about this ID and Google
 | |
|         # Analytics web streams in the [Analytics
 | |
|         # documentation](https://support.google.com/analytics/topic/9303475).
 | |
|         # <br>
 | |
|         # <br>To generate a `measurementId` and link the Web App with a Google
 | |
|         # Analytics web stream, call
 | |
|         # [`AddGoogleAnalytics`](../../v1beta1/projects/addGoogleAnalytics).
 | |
|         # Corresponds to the JSON property `measurementId`
 | |
|         # @return [String]
 | |
|         attr_accessor :measurement_id
 | |
|       
 | |
|         # The sender ID for use with Firebase Cloud Messaging.
 | |
|         # Corresponds to the JSON property `messagingSenderId`
 | |
|         # @return [String]
 | |
|         attr_accessor :messaging_sender_id
 | |
|       
 | |
|         # Immutable. The globally unique, user-assigned project ID of the parent
 | |
|         # Project for the App.
 | |
|         # Corresponds to the JSON property `projectId`
 | |
|         # @return [String]
 | |
|         attr_accessor :project_id
 | |
|       
 | |
|         # The default Cloud Storage for Firebase storage bucket name.
 | |
|         # Corresponds to the JSON property `storageBucket`
 | |
|         # @return [String]
 | |
|         attr_accessor :storage_bucket
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @api_key = args[:api_key] if args.key?(:api_key)
 | |
|           @app_id = args[:app_id] if args.key?(:app_id)
 | |
|           @auth_domain = args[:auth_domain] if args.key?(:auth_domain)
 | |
|           @database_url = args[:database_url] if args.key?(:database_url)
 | |
|           @location_id = args[:location_id] if args.key?(:location_id)
 | |
|           @measurement_id = args[:measurement_id] if args.key?(:measurement_id)
 | |
|           @messaging_sender_id = args[:messaging_sender_id] if args.key?(:messaging_sender_id)
 | |
|           @project_id = args[:project_id] if args.key?(:project_id)
 | |
|           @storage_bucket = args[:storage_bucket] if args.key?(:storage_bucket)
 | |
|         end
 | |
|       end
 | |
|     end
 | |
|   end
 | |
| end
 |