2670 lines
		
	
	
		
			103 KiB
		
	
	
	
		
			Ruby
		
	
	
	
			
		
		
	
	
			2670 lines
		
	
	
		
			103 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 IdentitytoolkitV3
 | |
|       
 | |
|       # Response of creating the IDP authentication URL.
 | |
|       class CreateAuthUriResponse
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # all providers the user has once used to do federated login
 | |
|         # Corresponds to the JSON property `allProviders`
 | |
|         # @return [Array<String>]
 | |
|         attr_accessor :all_providers
 | |
|       
 | |
|         # The URI used by the IDP to authenticate the user.
 | |
|         # Corresponds to the JSON property `authUri`
 | |
|         # @return [String]
 | |
|         attr_accessor :auth_uri
 | |
|       
 | |
|         # True if captcha is required.
 | |
|         # Corresponds to the JSON property `captchaRequired`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :captcha_required
 | |
|         alias_method :captcha_required?, :captcha_required
 | |
|       
 | |
|         # True if the authUri is for user's existing provider.
 | |
|         # Corresponds to the JSON property `forExistingProvider`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :for_existing_provider
 | |
|         alias_method :for_existing_provider?, :for_existing_provider
 | |
|       
 | |
|         # The fixed string identitytoolkit#CreateAuthUriResponse".
 | |
|         # Corresponds to the JSON property `kind`
 | |
|         # @return [String]
 | |
|         attr_accessor :kind
 | |
|       
 | |
|         # The provider ID of the auth URI.
 | |
|         # Corresponds to the JSON property `providerId`
 | |
|         # @return [String]
 | |
|         attr_accessor :provider_id
 | |
|       
 | |
|         # Whether the user is registered if the identifier is an email.
 | |
|         # Corresponds to the JSON property `registered`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :registered
 | |
|         alias_method :registered?, :registered
 | |
|       
 | |
|         # Session ID which should be passed in the following verifyAssertion request.
 | |
|         # Corresponds to the JSON property `sessionId`
 | |
|         # @return [String]
 | |
|         attr_accessor :session_id
 | |
|       
 | |
|         # All sign-in methods this user has used.
 | |
|         # Corresponds to the JSON property `signinMethods`
 | |
|         # @return [Array<String>]
 | |
|         attr_accessor :signin_methods
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @all_providers = args[:all_providers] if args.key?(:all_providers)
 | |
|           @auth_uri = args[:auth_uri] if args.key?(:auth_uri)
 | |
|           @captcha_required = args[:captcha_required] if args.key?(:captcha_required)
 | |
|           @for_existing_provider = args[:for_existing_provider] if args.key?(:for_existing_provider)
 | |
|           @kind = args[:kind] if args.key?(:kind)
 | |
|           @provider_id = args[:provider_id] if args.key?(:provider_id)
 | |
|           @registered = args[:registered] if args.key?(:registered)
 | |
|           @session_id = args[:session_id] if args.key?(:session_id)
 | |
|           @signin_methods = args[:signin_methods] if args.key?(:signin_methods)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Respone of deleting account.
 | |
|       class DeleteAccountResponse
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The fixed string "identitytoolkit#DeleteAccountResponse".
 | |
|         # Corresponds to the JSON property `kind`
 | |
|         # @return [String]
 | |
|         attr_accessor :kind
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @kind = args[:kind] if args.key?(:kind)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Response of downloading accounts in batch.
 | |
|       class DownloadAccountResponse
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The fixed string "identitytoolkit#DownloadAccountResponse".
 | |
|         # Corresponds to the JSON property `kind`
 | |
|         # @return [String]
 | |
|         attr_accessor :kind
 | |
|       
 | |
|         # The next page token. To be used in a subsequent request to return the next
 | |
|         # page of results.
 | |
|         # Corresponds to the JSON property `nextPageToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :next_page_token
 | |
|       
 | |
|         # The user accounts data.
 | |
|         # Corresponds to the JSON property `users`
 | |
|         # @return [Array<Google::Apis::IdentitytoolkitV3::UserInfo>]
 | |
|         attr_accessor :users
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @kind = args[:kind] if args.key?(:kind)
 | |
|           @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
 | |
|           @users = args[:users] if args.key?(:users)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Response of email signIn.
 | |
|       class EmailLinkSigninResponse
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The user's email.
 | |
|         # Corresponds to the JSON property `email`
 | |
|         # @return [String]
 | |
|         attr_accessor :email
 | |
|       
 | |
|         # Expiration time of STS id token in seconds.
 | |
|         # Corresponds to the JSON property `expiresIn`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :expires_in
 | |
|       
 | |
|         # The STS id token to login the newly signed in user.
 | |
|         # Corresponds to the JSON property `idToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :id_token
 | |
|       
 | |
|         # Whether the user is new.
 | |
|         # Corresponds to the JSON property `isNewUser`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :is_new_user
 | |
|         alias_method :is_new_user?, :is_new_user
 | |
|       
 | |
|         # The fixed string "identitytoolkit#EmailLinkSigninResponse".
 | |
|         # Corresponds to the JSON property `kind`
 | |
|         # @return [String]
 | |
|         attr_accessor :kind
 | |
|       
 | |
|         # The RP local ID of the user.
 | |
|         # Corresponds to the JSON property `localId`
 | |
|         # @return [String]
 | |
|         attr_accessor :local_id
 | |
|       
 | |
|         # The refresh token for the signed in user.
 | |
|         # Corresponds to the JSON property `refreshToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :refresh_token
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @email = args[:email] if args.key?(:email)
 | |
|           @expires_in = args[:expires_in] if args.key?(:expires_in)
 | |
|           @id_token = args[:id_token] if args.key?(:id_token)
 | |
|           @is_new_user = args[:is_new_user] if args.key?(:is_new_user)
 | |
|           @kind = args[:kind] if args.key?(:kind)
 | |
|           @local_id = args[:local_id] if args.key?(:local_id)
 | |
|           @refresh_token = args[:refresh_token] if args.key?(:refresh_token)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Template for an email template.
 | |
|       class EmailTemplate
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # Email body.
 | |
|         # Corresponds to the JSON property `body`
 | |
|         # @return [String]
 | |
|         attr_accessor :body
 | |
|       
 | |
|         # Email body format.
 | |
|         # Corresponds to the JSON property `format`
 | |
|         # @return [String]
 | |
|         attr_accessor :format
 | |
|       
 | |
|         # From address of the email.
 | |
|         # Corresponds to the JSON property `from`
 | |
|         # @return [String]
 | |
|         attr_accessor :from
 | |
|       
 | |
|         # From display name.
 | |
|         # Corresponds to the JSON property `fromDisplayName`
 | |
|         # @return [String]
 | |
|         attr_accessor :from_display_name
 | |
|       
 | |
|         # Reply-to address.
 | |
|         # Corresponds to the JSON property `replyTo`
 | |
|         # @return [String]
 | |
|         attr_accessor :reply_to
 | |
|       
 | |
|         # Subject of the email.
 | |
|         # Corresponds to the JSON property `subject`
 | |
|         # @return [String]
 | |
|         attr_accessor :subject
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @body = args[:body] if args.key?(:body)
 | |
|           @format = args[:format] if args.key?(:format)
 | |
|           @from = args[:from] if args.key?(:from)
 | |
|           @from_display_name = args[:from_display_name] if args.key?(:from_display_name)
 | |
|           @reply_to = args[:reply_to] if args.key?(:reply_to)
 | |
|           @subject = args[:subject] if args.key?(:subject)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Response of getting account information.
 | |
|       class GetAccountInfoResponse
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The fixed string "identitytoolkit#GetAccountInfoResponse".
 | |
|         # Corresponds to the JSON property `kind`
 | |
|         # @return [String]
 | |
|         attr_accessor :kind
 | |
|       
 | |
|         # The info of the users.
 | |
|         # Corresponds to the JSON property `users`
 | |
|         # @return [Array<Google::Apis::IdentitytoolkitV3::UserInfo>]
 | |
|         attr_accessor :users
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @kind = args[:kind] if args.key?(:kind)
 | |
|           @users = args[:users] if args.key?(:users)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Response of getting a code for user confirmation (reset password, change email
 | |
|       # etc.).
 | |
|       class GetOobConfirmationCodeResponse
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The email address that the email is sent to.
 | |
|         # Corresponds to the JSON property `email`
 | |
|         # @return [String]
 | |
|         attr_accessor :email
 | |
|       
 | |
|         # The fixed string "identitytoolkit#GetOobConfirmationCodeResponse".
 | |
|         # Corresponds to the JSON property `kind`
 | |
|         # @return [String]
 | |
|         attr_accessor :kind
 | |
|       
 | |
|         # The code to be send to the user.
 | |
|         # Corresponds to the JSON property `oobCode`
 | |
|         # @return [String]
 | |
|         attr_accessor :oob_code
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @email = args[:email] if args.key?(:email)
 | |
|           @kind = args[:kind] if args.key?(:kind)
 | |
|           @oob_code = args[:oob_code] if args.key?(:oob_code)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Response of getting recaptcha param.
 | |
|       class GetRecaptchaParamResponse
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The fixed string "identitytoolkit#GetRecaptchaParamResponse".
 | |
|         # Corresponds to the JSON property `kind`
 | |
|         # @return [String]
 | |
|         attr_accessor :kind
 | |
|       
 | |
|         # Site key registered at recaptcha.
 | |
|         # Corresponds to the JSON property `recaptchaSiteKey`
 | |
|         # @return [String]
 | |
|         attr_accessor :recaptcha_site_key
 | |
|       
 | |
|         # The stoken field for the recaptcha widget, used to request captcha challenge.
 | |
|         # Corresponds to the JSON property `recaptchaStoken`
 | |
|         # @return [String]
 | |
|         attr_accessor :recaptcha_stoken
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @kind = args[:kind] if args.key?(:kind)
 | |
|           @recaptcha_site_key = args[:recaptcha_site_key] if args.key?(:recaptcha_site_key)
 | |
|           @recaptcha_stoken = args[:recaptcha_stoken] if args.key?(:recaptcha_stoken)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Request to get the IDP authentication URL.
 | |
|       class CreateAuthUriRequest
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The app ID of the mobile app, base64(CERT_SHA1):PACKAGE_NAME for Android,
 | |
|         # BUNDLE_ID for iOS.
 | |
|         # Corresponds to the JSON property `appId`
 | |
|         # @return [String]
 | |
|         attr_accessor :app_id
 | |
|       
 | |
|         # Explicitly specify the auth flow type. Currently only support "CODE_FLOW" type.
 | |
|         # The field is only used for Google provider.
 | |
|         # Corresponds to the JSON property `authFlowType`
 | |
|         # @return [String]
 | |
|         attr_accessor :auth_flow_type
 | |
|       
 | |
|         # The relying party OAuth client ID.
 | |
|         # Corresponds to the JSON property `clientId`
 | |
|         # @return [String]
 | |
|         attr_accessor :client_id
 | |
|       
 | |
|         # The opaque value used by the client to maintain context info between the
 | |
|         # authentication request and the IDP callback.
 | |
|         # Corresponds to the JSON property `context`
 | |
|         # @return [String]
 | |
|         attr_accessor :context
 | |
|       
 | |
|         # The URI to which the IDP redirects the user after the federated login flow.
 | |
|         # Corresponds to the JSON property `continueUri`
 | |
|         # @return [String]
 | |
|         attr_accessor :continue_uri
 | |
|       
 | |
|         # The query parameter that client can customize by themselves in auth url. The
 | |
|         # following parameters are reserved for server so that they cannot be customized
 | |
|         # by clients: client_id, response_type, scope, redirect_uri, state, oauth_token.
 | |
|         # Corresponds to the JSON property `customParameter`
 | |
|         # @return [Hash<String,String>]
 | |
|         attr_accessor :custom_parameter
 | |
|       
 | |
|         # The hosted domain to restrict sign-in to accounts at that domain for Google
 | |
|         # Apps hosted accounts.
 | |
|         # Corresponds to the JSON property `hostedDomain`
 | |
|         # @return [String]
 | |
|         attr_accessor :hosted_domain
 | |
|       
 | |
|         # The email or federated ID of the user.
 | |
|         # Corresponds to the JSON property `identifier`
 | |
|         # @return [String]
 | |
|         attr_accessor :identifier
 | |
|       
 | |
|         # The developer's consumer key for OpenId OAuth Extension
 | |
|         # Corresponds to the JSON property `oauthConsumerKey`
 | |
|         # @return [String]
 | |
|         attr_accessor :oauth_consumer_key
 | |
|       
 | |
|         # Additional oauth scopes, beyond the basid user profile, that the user would be
 | |
|         # prompted to grant
 | |
|         # Corresponds to the JSON property `oauthScope`
 | |
|         # @return [String]
 | |
|         attr_accessor :oauth_scope
 | |
|       
 | |
|         # Optional realm for OpenID protocol. The sub string "scheme://domain:port" of
 | |
|         # the param "continueUri" is used if this is not set.
 | |
|         # Corresponds to the JSON property `openidRealm`
 | |
|         # @return [String]
 | |
|         attr_accessor :openid_realm
 | |
|       
 | |
|         # The native app package for OTA installation.
 | |
|         # Corresponds to the JSON property `otaApp`
 | |
|         # @return [String]
 | |
|         attr_accessor :ota_app
 | |
|       
 | |
|         # The IdP ID. For white listed IdPs it's a short domain name e.g. google.com,
 | |
|         # aol.com, live.net and yahoo.com. For other OpenID IdPs it's the OP identifier.
 | |
|         # Corresponds to the JSON property `providerId`
 | |
|         # @return [String]
 | |
|         attr_accessor :provider_id
 | |
|       
 | |
|         # The session_id passed by client.
 | |
|         # Corresponds to the JSON property `sessionId`
 | |
|         # @return [String]
 | |
|         attr_accessor :session_id
 | |
|       
 | |
|         # For multi-tenant use cases, in order to construct sign-in URL with the correct
 | |
|         # IDP parameters, Firebear needs to know which Tenant to retrieve IDP configs
 | |
|         # from.
 | |
|         # Corresponds to the JSON property `tenantId`
 | |
|         # @return [String]
 | |
|         attr_accessor :tenant_id
 | |
|       
 | |
|         # Tenant project number to be used for idp discovery.
 | |
|         # Corresponds to the JSON property `tenantProjectNumber`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :tenant_project_number
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @app_id = args[:app_id] if args.key?(:app_id)
 | |
|           @auth_flow_type = args[:auth_flow_type] if args.key?(:auth_flow_type)
 | |
|           @client_id = args[:client_id] if args.key?(:client_id)
 | |
|           @context = args[:context] if args.key?(:context)
 | |
|           @continue_uri = args[:continue_uri] if args.key?(:continue_uri)
 | |
|           @custom_parameter = args[:custom_parameter] if args.key?(:custom_parameter)
 | |
|           @hosted_domain = args[:hosted_domain] if args.key?(:hosted_domain)
 | |
|           @identifier = args[:identifier] if args.key?(:identifier)
 | |
|           @oauth_consumer_key = args[:oauth_consumer_key] if args.key?(:oauth_consumer_key)
 | |
|           @oauth_scope = args[:oauth_scope] if args.key?(:oauth_scope)
 | |
|           @openid_realm = args[:openid_realm] if args.key?(:openid_realm)
 | |
|           @ota_app = args[:ota_app] if args.key?(:ota_app)
 | |
|           @provider_id = args[:provider_id] if args.key?(:provider_id)
 | |
|           @session_id = args[:session_id] if args.key?(:session_id)
 | |
|           @tenant_id = args[:tenant_id] if args.key?(:tenant_id)
 | |
|           @tenant_project_number = args[:tenant_project_number] if args.key?(:tenant_project_number)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Request to delete account.
 | |
|       class DeleteAccountRequest
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # GCP project number of the requesting delegated app. Currently only intended
 | |
|         # for Firebase V1 migration.
 | |
|         # Corresponds to the JSON property `delegatedProjectNumber`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :delegated_project_number
 | |
|       
 | |
|         # The GITKit token or STS id token of the authenticated user.
 | |
|         # Corresponds to the JSON property `idToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :id_token
 | |
|       
 | |
|         # The local ID of the user.
 | |
|         # Corresponds to the JSON property `localId`
 | |
|         # @return [String]
 | |
|         attr_accessor :local_id
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @delegated_project_number = args[:delegated_project_number] if args.key?(:delegated_project_number)
 | |
|           @id_token = args[:id_token] if args.key?(:id_token)
 | |
|           @local_id = args[:local_id] if args.key?(:local_id)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Request to download user account in batch.
 | |
|       class DownloadAccountRequest
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # GCP project number of the requesting delegated app. Currently only intended
 | |
|         # for Firebase V1 migration.
 | |
|         # Corresponds to the JSON property `delegatedProjectNumber`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :delegated_project_number
 | |
|       
 | |
|         # The max number of results to return in the response.
 | |
|         # Corresponds to the JSON property `maxResults`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :max_results
 | |
|       
 | |
|         # The token for the next page. This should be taken from the previous response.
 | |
|         # Corresponds to the JSON property `nextPageToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :next_page_token
 | |
|       
 | |
|         # Specify which project (field value is actually project id) to operate. Only
 | |
|         # used when provided credential.
 | |
|         # Corresponds to the JSON property `targetProjectId`
 | |
|         # @return [String]
 | |
|         attr_accessor :target_project_id
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @delegated_project_number = args[:delegated_project_number] if args.key?(:delegated_project_number)
 | |
|           @max_results = args[:max_results] if args.key?(:max_results)
 | |
|           @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
 | |
|           @target_project_id = args[:target_project_id] if args.key?(:target_project_id)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Request to sign in with email.
 | |
|       class IdentitytoolkitRelyingpartyEmailLinkSigninRequest
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The email address of the user.
 | |
|         # Corresponds to the JSON property `email`
 | |
|         # @return [String]
 | |
|         attr_accessor :email
 | |
|       
 | |
|         # Token for linking flow.
 | |
|         # Corresponds to the JSON property `idToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :id_token
 | |
|       
 | |
|         # The confirmation code.
 | |
|         # Corresponds to the JSON property `oobCode`
 | |
|         # @return [String]
 | |
|         attr_accessor :oob_code
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @email = args[:email] if args.key?(:email)
 | |
|           @id_token = args[:id_token] if args.key?(:id_token)
 | |
|           @oob_code = args[:oob_code] if args.key?(:oob_code)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Request to get the account information.
 | |
|       class GetAccountInfoRequest
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # GCP project number of the requesting delegated app. Currently only intended
 | |
|         # for Firebase V1 migration.
 | |
|         # Corresponds to the JSON property `delegatedProjectNumber`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :delegated_project_number
 | |
|       
 | |
|         # The list of emails of the users to inquiry.
 | |
|         # Corresponds to the JSON property `email`
 | |
|         # @return [Array<String>]
 | |
|         attr_accessor :email
 | |
|       
 | |
|         # The GITKit token of the authenticated user.
 | |
|         # Corresponds to the JSON property `idToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :id_token
 | |
|       
 | |
|         # The list of local ID's of the users to inquiry.
 | |
|         # Corresponds to the JSON property `localId`
 | |
|         # @return [Array<String>]
 | |
|         attr_accessor :local_id
 | |
|       
 | |
|         # Privileged caller can query users by specified phone number.
 | |
|         # Corresponds to the JSON property `phoneNumber`
 | |
|         # @return [Array<String>]
 | |
|         attr_accessor :phone_number
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @delegated_project_number = args[:delegated_project_number] if args.key?(:delegated_project_number)
 | |
|           @email = args[:email] if args.key?(:email)
 | |
|           @id_token = args[:id_token] if args.key?(:id_token)
 | |
|           @local_id = args[:local_id] if args.key?(:local_id)
 | |
|           @phone_number = args[:phone_number] if args.key?(:phone_number)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Response of getting the project configuration.
 | |
|       class GetProjectConfigResponse
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # Whether to allow password user sign in or sign up.
 | |
|         # Corresponds to the JSON property `allowPasswordUser`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :allow_password_user
 | |
|         alias_method :allow_password_user?, :allow_password_user
 | |
|       
 | |
|         # Browser API key, needed when making http request to Apiary.
 | |
|         # Corresponds to the JSON property `apiKey`
 | |
|         # @return [String]
 | |
|         attr_accessor :api_key
 | |
|       
 | |
|         # Authorized domains.
 | |
|         # Corresponds to the JSON property `authorizedDomains`
 | |
|         # @return [Array<String>]
 | |
|         attr_accessor :authorized_domains
 | |
|       
 | |
|         # Template for an email template.
 | |
|         # Corresponds to the JSON property `changeEmailTemplate`
 | |
|         # @return [Google::Apis::IdentitytoolkitV3::EmailTemplate]
 | |
|         attr_accessor :change_email_template
 | |
|       
 | |
|         # 
 | |
|         # Corresponds to the JSON property `dynamicLinksDomain`
 | |
|         # @return [String]
 | |
|         attr_accessor :dynamic_links_domain
 | |
|       
 | |
|         # Whether anonymous user is enabled.
 | |
|         # Corresponds to the JSON property `enableAnonymousUser`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :enable_anonymous_user
 | |
|         alias_method :enable_anonymous_user?, :enable_anonymous_user
 | |
|       
 | |
|         # OAuth2 provider configuration.
 | |
|         # Corresponds to the JSON property `idpConfig`
 | |
|         # @return [Array<Google::Apis::IdentitytoolkitV3::IdpConfig>]
 | |
|         attr_accessor :idp_config
 | |
|       
 | |
|         # Template for an email template.
 | |
|         # Corresponds to the JSON property `legacyResetPasswordTemplate`
 | |
|         # @return [Google::Apis::IdentitytoolkitV3::EmailTemplate]
 | |
|         attr_accessor :legacy_reset_password_template
 | |
|       
 | |
|         # Project ID of the relying party.
 | |
|         # Corresponds to the JSON property `projectId`
 | |
|         # @return [String]
 | |
|         attr_accessor :project_id
 | |
|       
 | |
|         # Template for an email template.
 | |
|         # Corresponds to the JSON property `resetPasswordTemplate`
 | |
|         # @return [Google::Apis::IdentitytoolkitV3::EmailTemplate]
 | |
|         attr_accessor :reset_password_template
 | |
|       
 | |
|         # Whether to use email sending provided by Firebear.
 | |
|         # Corresponds to the JSON property `useEmailSending`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :use_email_sending
 | |
|         alias_method :use_email_sending?, :use_email_sending
 | |
|       
 | |
|         # Template for an email template.
 | |
|         # Corresponds to the JSON property `verifyEmailTemplate`
 | |
|         # @return [Google::Apis::IdentitytoolkitV3::EmailTemplate]
 | |
|         attr_accessor :verify_email_template
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @allow_password_user = args[:allow_password_user] if args.key?(:allow_password_user)
 | |
|           @api_key = args[:api_key] if args.key?(:api_key)
 | |
|           @authorized_domains = args[:authorized_domains] if args.key?(:authorized_domains)
 | |
|           @change_email_template = args[:change_email_template] if args.key?(:change_email_template)
 | |
|           @dynamic_links_domain = args[:dynamic_links_domain] if args.key?(:dynamic_links_domain)
 | |
|           @enable_anonymous_user = args[:enable_anonymous_user] if args.key?(:enable_anonymous_user)
 | |
|           @idp_config = args[:idp_config] if args.key?(:idp_config)
 | |
|           @legacy_reset_password_template = args[:legacy_reset_password_template] if args.key?(:legacy_reset_password_template)
 | |
|           @project_id = args[:project_id] if args.key?(:project_id)
 | |
|           @reset_password_template = args[:reset_password_template] if args.key?(:reset_password_template)
 | |
|           @use_email_sending = args[:use_email_sending] if args.key?(:use_email_sending)
 | |
|           @verify_email_template = args[:verify_email_template] if args.key?(:verify_email_template)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Request to reset the password.
 | |
|       class ResetPasswordRequest
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The email address of the user.
 | |
|         # Corresponds to the JSON property `email`
 | |
|         # @return [String]
 | |
|         attr_accessor :email
 | |
|       
 | |
|         # The new password inputted by the user.
 | |
|         # Corresponds to the JSON property `newPassword`
 | |
|         # @return [String]
 | |
|         attr_accessor :new_password
 | |
|       
 | |
|         # The old password inputted by the user.
 | |
|         # Corresponds to the JSON property `oldPassword`
 | |
|         # @return [String]
 | |
|         attr_accessor :old_password
 | |
|       
 | |
|         # The confirmation code.
 | |
|         # Corresponds to the JSON property `oobCode`
 | |
|         # @return [String]
 | |
|         attr_accessor :oob_code
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @email = args[:email] if args.key?(:email)
 | |
|           @new_password = args[:new_password] if args.key?(:new_password)
 | |
|           @old_password = args[:old_password] if args.key?(:old_password)
 | |
|           @oob_code = args[:oob_code] if args.key?(:oob_code)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Request for Identitytoolkit-SendVerificationCode
 | |
|       class IdentitytoolkitRelyingpartySendVerificationCodeRequest
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # Receipt of successful app token validation with APNS.
 | |
|         # Corresponds to the JSON property `iosReceipt`
 | |
|         # @return [String]
 | |
|         attr_accessor :ios_receipt
 | |
|       
 | |
|         # Secret delivered to iOS app via APNS.
 | |
|         # Corresponds to the JSON property `iosSecret`
 | |
|         # @return [String]
 | |
|         attr_accessor :ios_secret
 | |
|       
 | |
|         # The phone number to send the verification code to in E.164 format.
 | |
|         # Corresponds to the JSON property `phoneNumber`
 | |
|         # @return [String]
 | |
|         attr_accessor :phone_number
 | |
|       
 | |
|         # Recaptcha solution.
 | |
|         # Corresponds to the JSON property `recaptchaToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :recaptcha_token
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @ios_receipt = args[:ios_receipt] if args.key?(:ios_receipt)
 | |
|           @ios_secret = args[:ios_secret] if args.key?(:ios_secret)
 | |
|           @phone_number = args[:phone_number] if args.key?(:phone_number)
 | |
|           @recaptcha_token = args[:recaptcha_token] if args.key?(:recaptcha_token)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Response for Identitytoolkit-SendVerificationCode
 | |
|       class IdentitytoolkitRelyingpartySendVerificationCodeResponse
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # Encrypted session information
 | |
|         # Corresponds to the JSON property `sessionInfo`
 | |
|         # @return [String]
 | |
|         attr_accessor :session_info
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @session_info = args[:session_info] if args.key?(:session_info)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Request to set the account information.
 | |
|       class SetAccountInfoRequest
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The captcha challenge.
 | |
|         # Corresponds to the JSON property `captchaChallenge`
 | |
|         # @return [String]
 | |
|         attr_accessor :captcha_challenge
 | |
|       
 | |
|         # Response to the captcha.
 | |
|         # Corresponds to the JSON property `captchaResponse`
 | |
|         # @return [String]
 | |
|         attr_accessor :captcha_response
 | |
|       
 | |
|         # The timestamp when the account is created.
 | |
|         # Corresponds to the JSON property `createdAt`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :created_at
 | |
|       
 | |
|         # The custom attributes to be set in the user's id token.
 | |
|         # Corresponds to the JSON property `customAttributes`
 | |
|         # @return [String]
 | |
|         attr_accessor :custom_attributes
 | |
|       
 | |
|         # GCP project number of the requesting delegated app. Currently only intended
 | |
|         # for Firebase V1 migration.
 | |
|         # Corresponds to the JSON property `delegatedProjectNumber`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :delegated_project_number
 | |
|       
 | |
|         # The attributes users request to delete.
 | |
|         # Corresponds to the JSON property `deleteAttribute`
 | |
|         # @return [Array<String>]
 | |
|         attr_accessor :delete_attribute
 | |
|       
 | |
|         # The IDPs the user request to delete.
 | |
|         # Corresponds to the JSON property `deleteProvider`
 | |
|         # @return [Array<String>]
 | |
|         attr_accessor :delete_provider
 | |
|       
 | |
|         # Whether to disable the user.
 | |
|         # Corresponds to the JSON property `disableUser`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :disable_user
 | |
|         alias_method :disable_user?, :disable_user
 | |
|       
 | |
|         # The name of the user.
 | |
|         # Corresponds to the JSON property `displayName`
 | |
|         # @return [String]
 | |
|         attr_accessor :display_name
 | |
|       
 | |
|         # The email of the user.
 | |
|         # Corresponds to the JSON property `email`
 | |
|         # @return [String]
 | |
|         attr_accessor :email
 | |
|       
 | |
|         # Mark the email as verified or not.
 | |
|         # Corresponds to the JSON property `emailVerified`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :email_verified
 | |
|         alias_method :email_verified?, :email_verified
 | |
|       
 | |
|         # The GITKit token of the authenticated user.
 | |
|         # Corresponds to the JSON property `idToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :id_token
 | |
|       
 | |
|         # Instance id token of the app.
 | |
|         # Corresponds to the JSON property `instanceId`
 | |
|         # @return [String]
 | |
|         attr_accessor :instance_id
 | |
|       
 | |
|         # Last login timestamp.
 | |
|         # Corresponds to the JSON property `lastLoginAt`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :last_login_at
 | |
|       
 | |
|         # The local ID of the user.
 | |
|         # Corresponds to the JSON property `localId`
 | |
|         # @return [String]
 | |
|         attr_accessor :local_id
 | |
|       
 | |
|         # The out-of-band code of the change email request.
 | |
|         # Corresponds to the JSON property `oobCode`
 | |
|         # @return [String]
 | |
|         attr_accessor :oob_code
 | |
|       
 | |
|         # The new password of the user.
 | |
|         # Corresponds to the JSON property `password`
 | |
|         # @return [String]
 | |
|         attr_accessor :password
 | |
|       
 | |
|         # Privileged caller can update user with specified phone number.
 | |
|         # Corresponds to the JSON property `phoneNumber`
 | |
|         # @return [String]
 | |
|         attr_accessor :phone_number
 | |
|       
 | |
|         # The photo url of the user.
 | |
|         # Corresponds to the JSON property `photoUrl`
 | |
|         # @return [String]
 | |
|         attr_accessor :photo_url
 | |
|       
 | |
|         # The associated IDPs of the user.
 | |
|         # Corresponds to the JSON property `provider`
 | |
|         # @return [Array<String>]
 | |
|         attr_accessor :provider
 | |
|       
 | |
|         # Whether return sts id token and refresh token instead of gitkit token.
 | |
|         # Corresponds to the JSON property `returnSecureToken`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :return_secure_token
 | |
|         alias_method :return_secure_token?, :return_secure_token
 | |
|       
 | |
|         # Mark the user to upgrade to federated login.
 | |
|         # Corresponds to the JSON property `upgradeToFederatedLogin`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :upgrade_to_federated_login
 | |
|         alias_method :upgrade_to_federated_login?, :upgrade_to_federated_login
 | |
|       
 | |
|         # Timestamp in seconds for valid login token.
 | |
|         # Corresponds to the JSON property `validSince`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :valid_since
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @captcha_challenge = args[:captcha_challenge] if args.key?(:captcha_challenge)
 | |
|           @captcha_response = args[:captcha_response] if args.key?(:captcha_response)
 | |
|           @created_at = args[:created_at] if args.key?(:created_at)
 | |
|           @custom_attributes = args[:custom_attributes] if args.key?(:custom_attributes)
 | |
|           @delegated_project_number = args[:delegated_project_number] if args.key?(:delegated_project_number)
 | |
|           @delete_attribute = args[:delete_attribute] if args.key?(:delete_attribute)
 | |
|           @delete_provider = args[:delete_provider] if args.key?(:delete_provider)
 | |
|           @disable_user = args[:disable_user] if args.key?(:disable_user)
 | |
|           @display_name = args[:display_name] if args.key?(:display_name)
 | |
|           @email = args[:email] if args.key?(:email)
 | |
|           @email_verified = args[:email_verified] if args.key?(:email_verified)
 | |
|           @id_token = args[:id_token] if args.key?(:id_token)
 | |
|           @instance_id = args[:instance_id] if args.key?(:instance_id)
 | |
|           @last_login_at = args[:last_login_at] if args.key?(:last_login_at)
 | |
|           @local_id = args[:local_id] if args.key?(:local_id)
 | |
|           @oob_code = args[:oob_code] if args.key?(:oob_code)
 | |
|           @password = args[:password] if args.key?(:password)
 | |
|           @phone_number = args[:phone_number] if args.key?(:phone_number)
 | |
|           @photo_url = args[:photo_url] if args.key?(:photo_url)
 | |
|           @provider = args[:provider] if args.key?(:provider)
 | |
|           @return_secure_token = args[:return_secure_token] if args.key?(:return_secure_token)
 | |
|           @upgrade_to_federated_login = args[:upgrade_to_federated_login] if args.key?(:upgrade_to_federated_login)
 | |
|           @valid_since = args[:valid_since] if args.key?(:valid_since)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Request to set the project configuration.
 | |
|       class SetProjectConfigRequest
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # Whether to allow password user sign in or sign up.
 | |
|         # Corresponds to the JSON property `allowPasswordUser`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :allow_password_user
 | |
|         alias_method :allow_password_user?, :allow_password_user
 | |
|       
 | |
|         # Browser API key, needed when making http request to Apiary.
 | |
|         # Corresponds to the JSON property `apiKey`
 | |
|         # @return [String]
 | |
|         attr_accessor :api_key
 | |
|       
 | |
|         # Authorized domains for widget redirect.
 | |
|         # Corresponds to the JSON property `authorizedDomains`
 | |
|         # @return [Array<String>]
 | |
|         attr_accessor :authorized_domains
 | |
|       
 | |
|         # Template for an email template.
 | |
|         # Corresponds to the JSON property `changeEmailTemplate`
 | |
|         # @return [Google::Apis::IdentitytoolkitV3::EmailTemplate]
 | |
|         attr_accessor :change_email_template
 | |
|       
 | |
|         # GCP project number of the requesting delegated app. Currently only intended
 | |
|         # for Firebase V1 migration.
 | |
|         # Corresponds to the JSON property `delegatedProjectNumber`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :delegated_project_number
 | |
|       
 | |
|         # Whether to enable anonymous user.
 | |
|         # Corresponds to the JSON property `enableAnonymousUser`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :enable_anonymous_user
 | |
|         alias_method :enable_anonymous_user?, :enable_anonymous_user
 | |
|       
 | |
|         # Oauth2 provider configuration.
 | |
|         # Corresponds to the JSON property `idpConfig`
 | |
|         # @return [Array<Google::Apis::IdentitytoolkitV3::IdpConfig>]
 | |
|         attr_accessor :idp_config
 | |
|       
 | |
|         # Template for an email template.
 | |
|         # Corresponds to the JSON property `legacyResetPasswordTemplate`
 | |
|         # @return [Google::Apis::IdentitytoolkitV3::EmailTemplate]
 | |
|         attr_accessor :legacy_reset_password_template
 | |
|       
 | |
|         # Template for an email template.
 | |
|         # Corresponds to the JSON property `resetPasswordTemplate`
 | |
|         # @return [Google::Apis::IdentitytoolkitV3::EmailTemplate]
 | |
|         attr_accessor :reset_password_template
 | |
|       
 | |
|         # Whether to use email sending provided by Firebear.
 | |
|         # Corresponds to the JSON property `useEmailSending`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :use_email_sending
 | |
|         alias_method :use_email_sending?, :use_email_sending
 | |
|       
 | |
|         # Template for an email template.
 | |
|         # Corresponds to the JSON property `verifyEmailTemplate`
 | |
|         # @return [Google::Apis::IdentitytoolkitV3::EmailTemplate]
 | |
|         attr_accessor :verify_email_template
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @allow_password_user = args[:allow_password_user] if args.key?(:allow_password_user)
 | |
|           @api_key = args[:api_key] if args.key?(:api_key)
 | |
|           @authorized_domains = args[:authorized_domains] if args.key?(:authorized_domains)
 | |
|           @change_email_template = args[:change_email_template] if args.key?(:change_email_template)
 | |
|           @delegated_project_number = args[:delegated_project_number] if args.key?(:delegated_project_number)
 | |
|           @enable_anonymous_user = args[:enable_anonymous_user] if args.key?(:enable_anonymous_user)
 | |
|           @idp_config = args[:idp_config] if args.key?(:idp_config)
 | |
|           @legacy_reset_password_template = args[:legacy_reset_password_template] if args.key?(:legacy_reset_password_template)
 | |
|           @reset_password_template = args[:reset_password_template] if args.key?(:reset_password_template)
 | |
|           @use_email_sending = args[:use_email_sending] if args.key?(:use_email_sending)
 | |
|           @verify_email_template = args[:verify_email_template] if args.key?(:verify_email_template)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Response of setting the project configuration.
 | |
|       class IdentitytoolkitRelyingpartySetProjectConfigResponse
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # Project ID of the relying party.
 | |
|         # 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)
 | |
|           @project_id = args[:project_id] if args.key?(:project_id)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Request to sign out user.
 | |
|       class SignOutUserRequest
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # Instance id token of the app.
 | |
|         # Corresponds to the JSON property `instanceId`
 | |
|         # @return [String]
 | |
|         attr_accessor :instance_id
 | |
|       
 | |
|         # The local ID of the user.
 | |
|         # Corresponds to the JSON property `localId`
 | |
|         # @return [String]
 | |
|         attr_accessor :local_id
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @instance_id = args[:instance_id] if args.key?(:instance_id)
 | |
|           @local_id = args[:local_id] if args.key?(:local_id)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Response of signing out user.
 | |
|       class SignOutUserResponse
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The local ID of the user.
 | |
|         # Corresponds to the JSON property `localId`
 | |
|         # @return [String]
 | |
|         attr_accessor :local_id
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @local_id = args[:local_id] if args.key?(:local_id)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Request to signup new user, create anonymous user or anonymous user reauth.
 | |
|       class SignupNewUserRequest
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The captcha challenge.
 | |
|         # Corresponds to the JSON property `captchaChallenge`
 | |
|         # @return [String]
 | |
|         attr_accessor :captcha_challenge
 | |
|       
 | |
|         # Response to the captcha.
 | |
|         # Corresponds to the JSON property `captchaResponse`
 | |
|         # @return [String]
 | |
|         attr_accessor :captcha_response
 | |
|       
 | |
|         # Whether to disable the user. Only can be used by service account.
 | |
|         # Corresponds to the JSON property `disabled`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :disabled
 | |
|         alias_method :disabled?, :disabled
 | |
|       
 | |
|         # The name of the user.
 | |
|         # Corresponds to the JSON property `displayName`
 | |
|         # @return [String]
 | |
|         attr_accessor :display_name
 | |
|       
 | |
|         # The email of the user.
 | |
|         # Corresponds to the JSON property `email`
 | |
|         # @return [String]
 | |
|         attr_accessor :email
 | |
|       
 | |
|         # Mark the email as verified or not. Only can be used by service account.
 | |
|         # Corresponds to the JSON property `emailVerified`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :email_verified
 | |
|         alias_method :email_verified?, :email_verified
 | |
|       
 | |
|         # The GITKit token of the authenticated user.
 | |
|         # Corresponds to the JSON property `idToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :id_token
 | |
|       
 | |
|         # Instance id token of the app.
 | |
|         # Corresponds to the JSON property `instanceId`
 | |
|         # @return [String]
 | |
|         attr_accessor :instance_id
 | |
|       
 | |
|         # Privileged caller can create user with specified user id.
 | |
|         # Corresponds to the JSON property `localId`
 | |
|         # @return [String]
 | |
|         attr_accessor :local_id
 | |
|       
 | |
|         # The new password of the user.
 | |
|         # Corresponds to the JSON property `password`
 | |
|         # @return [String]
 | |
|         attr_accessor :password
 | |
|       
 | |
|         # Privileged caller can create user with specified phone number.
 | |
|         # Corresponds to the JSON property `phoneNumber`
 | |
|         # @return [String]
 | |
|         attr_accessor :phone_number
 | |
|       
 | |
|         # The photo url of the user.
 | |
|         # Corresponds to the JSON property `photoUrl`
 | |
|         # @return [String]
 | |
|         attr_accessor :photo_url
 | |
|       
 | |
|         # For multi-tenant use cases, in order to construct sign-in URL with the correct
 | |
|         # IDP parameters, Firebear needs to know which Tenant to retrieve IDP configs
 | |
|         # from.
 | |
|         # Corresponds to the JSON property `tenantId`
 | |
|         # @return [String]
 | |
|         attr_accessor :tenant_id
 | |
|       
 | |
|         # Tenant project number to be used for idp discovery.
 | |
|         # Corresponds to the JSON property `tenantProjectNumber`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :tenant_project_number
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @captcha_challenge = args[:captcha_challenge] if args.key?(:captcha_challenge)
 | |
|           @captcha_response = args[:captcha_response] if args.key?(:captcha_response)
 | |
|           @disabled = args[:disabled] if args.key?(:disabled)
 | |
|           @display_name = args[:display_name] if args.key?(:display_name)
 | |
|           @email = args[:email] if args.key?(:email)
 | |
|           @email_verified = args[:email_verified] if args.key?(:email_verified)
 | |
|           @id_token = args[:id_token] if args.key?(:id_token)
 | |
|           @instance_id = args[:instance_id] if args.key?(:instance_id)
 | |
|           @local_id = args[:local_id] if args.key?(:local_id)
 | |
|           @password = args[:password] if args.key?(:password)
 | |
|           @phone_number = args[:phone_number] if args.key?(:phone_number)
 | |
|           @photo_url = args[:photo_url] if args.key?(:photo_url)
 | |
|           @tenant_id = args[:tenant_id] if args.key?(:tenant_id)
 | |
|           @tenant_project_number = args[:tenant_project_number] if args.key?(:tenant_project_number)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Request to upload user account in batch.
 | |
|       class UploadAccountRequest
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # Whether allow overwrite existing account when user local_id exists.
 | |
|         # Corresponds to the JSON property `allowOverwrite`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :allow_overwrite
 | |
|         alias_method :allow_overwrite?, :allow_overwrite
 | |
|       
 | |
|         # 
 | |
|         # Corresponds to the JSON property `blockSize`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :block_size
 | |
|       
 | |
|         # The following 4 fields are for standard scrypt algorithm.
 | |
|         # Corresponds to the JSON property `cpuMemCost`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :cpu_mem_cost
 | |
|       
 | |
|         # GCP project number of the requesting delegated app. Currently only intended
 | |
|         # for Firebase V1 migration.
 | |
|         # Corresponds to the JSON property `delegatedProjectNumber`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :delegated_project_number
 | |
|       
 | |
|         # 
 | |
|         # Corresponds to the JSON property `dkLen`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :dk_len
 | |
|       
 | |
|         # The password hash algorithm.
 | |
|         # Corresponds to the JSON property `hashAlgorithm`
 | |
|         # @return [String]
 | |
|         attr_accessor :hash_algorithm
 | |
|       
 | |
|         # Memory cost for hash calculation. Used by scrypt similar algorithms.
 | |
|         # Corresponds to the JSON property `memoryCost`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :memory_cost
 | |
|       
 | |
|         # 
 | |
|         # Corresponds to the JSON property `parallelization`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :parallelization
 | |
|       
 | |
|         # Rounds for hash calculation. Used by scrypt and similar algorithms.
 | |
|         # Corresponds to the JSON property `rounds`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :rounds
 | |
|       
 | |
|         # The salt separator.
 | |
|         # Corresponds to the JSON property `saltSeparator`
 | |
|         # NOTE: Values are automatically base64 encoded/decoded in the client library.
 | |
|         # @return [String]
 | |
|         attr_accessor :salt_separator
 | |
|       
 | |
|         # If true, backend will do sanity check(including duplicate email and federated
 | |
|         # id) when uploading account.
 | |
|         # Corresponds to the JSON property `sanityCheck`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :sanity_check
 | |
|         alias_method :sanity_check?, :sanity_check
 | |
|       
 | |
|         # The key for to hash the password.
 | |
|         # Corresponds to the JSON property `signerKey`
 | |
|         # NOTE: Values are automatically base64 encoded/decoded in the client library.
 | |
|         # @return [String]
 | |
|         attr_accessor :signer_key
 | |
|       
 | |
|         # Specify which project (field value is actually project id) to operate. Only
 | |
|         # used when provided credential.
 | |
|         # Corresponds to the JSON property `targetProjectId`
 | |
|         # @return [String]
 | |
|         attr_accessor :target_project_id
 | |
|       
 | |
|         # The account info to be stored.
 | |
|         # Corresponds to the JSON property `users`
 | |
|         # @return [Array<Google::Apis::IdentitytoolkitV3::UserInfo>]
 | |
|         attr_accessor :users
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @allow_overwrite = args[:allow_overwrite] if args.key?(:allow_overwrite)
 | |
|           @block_size = args[:block_size] if args.key?(:block_size)
 | |
|           @cpu_mem_cost = args[:cpu_mem_cost] if args.key?(:cpu_mem_cost)
 | |
|           @delegated_project_number = args[:delegated_project_number] if args.key?(:delegated_project_number)
 | |
|           @dk_len = args[:dk_len] if args.key?(:dk_len)
 | |
|           @hash_algorithm = args[:hash_algorithm] if args.key?(:hash_algorithm)
 | |
|           @memory_cost = args[:memory_cost] if args.key?(:memory_cost)
 | |
|           @parallelization = args[:parallelization] if args.key?(:parallelization)
 | |
|           @rounds = args[:rounds] if args.key?(:rounds)
 | |
|           @salt_separator = args[:salt_separator] if args.key?(:salt_separator)
 | |
|           @sanity_check = args[:sanity_check] if args.key?(:sanity_check)
 | |
|           @signer_key = args[:signer_key] if args.key?(:signer_key)
 | |
|           @target_project_id = args[:target_project_id] if args.key?(:target_project_id)
 | |
|           @users = args[:users] if args.key?(:users)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Request to verify the IDP assertion.
 | |
|       class VerifyAssertionRequest
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # When it's true, automatically creates a new account if the user doesn't exist.
 | |
|         # When it's false, allows existing user to sign in normally and throws exception
 | |
|         # if the user doesn't exist.
 | |
|         # Corresponds to the JSON property `autoCreate`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :auto_create
 | |
|         alias_method :auto_create?, :auto_create
 | |
|       
 | |
|         # GCP project number of the requesting delegated app. Currently only intended
 | |
|         # for Firebase V1 migration.
 | |
|         # Corresponds to the JSON property `delegatedProjectNumber`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :delegated_project_number
 | |
|       
 | |
|         # The GITKit token of the authenticated user.
 | |
|         # Corresponds to the JSON property `idToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :id_token
 | |
|       
 | |
|         # Instance id token of the app.
 | |
|         # Corresponds to the JSON property `instanceId`
 | |
|         # @return [String]
 | |
|         attr_accessor :instance_id
 | |
|       
 | |
|         # The GITKit token for the non-trusted IDP pending to be confirmed by the user.
 | |
|         # Corresponds to the JSON property `pendingIdToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :pending_id_token
 | |
|       
 | |
|         # The post body if the request is a HTTP POST.
 | |
|         # Corresponds to the JSON property `postBody`
 | |
|         # @return [String]
 | |
|         attr_accessor :post_body
 | |
|       
 | |
|         # The URI to which the IDP redirects the user back. It may contain federated
 | |
|         # login result params added by the IDP.
 | |
|         # Corresponds to the JSON property `requestUri`
 | |
|         # @return [String]
 | |
|         attr_accessor :request_uri
 | |
|       
 | |
|         # Whether return 200 and IDP credential rather than throw exception when
 | |
|         # federated id is already linked.
 | |
|         # Corresponds to the JSON property `returnIdpCredential`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :return_idp_credential
 | |
|         alias_method :return_idp_credential?, :return_idp_credential
 | |
|       
 | |
|         # Whether to return refresh tokens.
 | |
|         # Corresponds to the JSON property `returnRefreshToken`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :return_refresh_token
 | |
|         alias_method :return_refresh_token?, :return_refresh_token
 | |
|       
 | |
|         # Whether return sts id token and refresh token instead of gitkit token.
 | |
|         # Corresponds to the JSON property `returnSecureToken`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :return_secure_token
 | |
|         alias_method :return_secure_token?, :return_secure_token
 | |
|       
 | |
|         # Session ID, which should match the one in previous createAuthUri request.
 | |
|         # Corresponds to the JSON property `sessionId`
 | |
|         # @return [String]
 | |
|         attr_accessor :session_id
 | |
|       
 | |
|         # For multi-tenant use cases, in order to construct sign-in URL with the correct
 | |
|         # IDP parameters, Firebear needs to know which Tenant to retrieve IDP configs
 | |
|         # from.
 | |
|         # Corresponds to the JSON property `tenantId`
 | |
|         # @return [String]
 | |
|         attr_accessor :tenant_id
 | |
|       
 | |
|         # Tenant project number to be used for idp discovery.
 | |
|         # Corresponds to the JSON property `tenantProjectNumber`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :tenant_project_number
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @auto_create = args[:auto_create] if args.key?(:auto_create)
 | |
|           @delegated_project_number = args[:delegated_project_number] if args.key?(:delegated_project_number)
 | |
|           @id_token = args[:id_token] if args.key?(:id_token)
 | |
|           @instance_id = args[:instance_id] if args.key?(:instance_id)
 | |
|           @pending_id_token = args[:pending_id_token] if args.key?(:pending_id_token)
 | |
|           @post_body = args[:post_body] if args.key?(:post_body)
 | |
|           @request_uri = args[:request_uri] if args.key?(:request_uri)
 | |
|           @return_idp_credential = args[:return_idp_credential] if args.key?(:return_idp_credential)
 | |
|           @return_refresh_token = args[:return_refresh_token] if args.key?(:return_refresh_token)
 | |
|           @return_secure_token = args[:return_secure_token] if args.key?(:return_secure_token)
 | |
|           @session_id = args[:session_id] if args.key?(:session_id)
 | |
|           @tenant_id = args[:tenant_id] if args.key?(:tenant_id)
 | |
|           @tenant_project_number = args[:tenant_project_number] if args.key?(:tenant_project_number)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Request to verify a custom token
 | |
|       class VerifyCustomTokenRequest
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # GCP project number of the requesting delegated app. Currently only intended
 | |
|         # for Firebase V1 migration.
 | |
|         # Corresponds to the JSON property `delegatedProjectNumber`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :delegated_project_number
 | |
|       
 | |
|         # Instance id token of the app.
 | |
|         # Corresponds to the JSON property `instanceId`
 | |
|         # @return [String]
 | |
|         attr_accessor :instance_id
 | |
|       
 | |
|         # Whether return sts id token and refresh token instead of gitkit token.
 | |
|         # Corresponds to the JSON property `returnSecureToken`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :return_secure_token
 | |
|         alias_method :return_secure_token?, :return_secure_token
 | |
|       
 | |
|         # The custom token to verify
 | |
|         # Corresponds to the JSON property `token`
 | |
|         # @return [String]
 | |
|         attr_accessor :token
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @delegated_project_number = args[:delegated_project_number] if args.key?(:delegated_project_number)
 | |
|           @instance_id = args[:instance_id] if args.key?(:instance_id)
 | |
|           @return_secure_token = args[:return_secure_token] if args.key?(:return_secure_token)
 | |
|           @token = args[:token] if args.key?(:token)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Request to verify the password.
 | |
|       class VerifyPasswordRequest
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The captcha challenge.
 | |
|         # Corresponds to the JSON property `captchaChallenge`
 | |
|         # @return [String]
 | |
|         attr_accessor :captcha_challenge
 | |
|       
 | |
|         # Response to the captcha.
 | |
|         # Corresponds to the JSON property `captchaResponse`
 | |
|         # @return [String]
 | |
|         attr_accessor :captcha_response
 | |
|       
 | |
|         # GCP project number of the requesting delegated app. Currently only intended
 | |
|         # for Firebase V1 migration.
 | |
|         # Corresponds to the JSON property `delegatedProjectNumber`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :delegated_project_number
 | |
|       
 | |
|         # The email of the user.
 | |
|         # Corresponds to the JSON property `email`
 | |
|         # @return [String]
 | |
|         attr_accessor :email
 | |
|       
 | |
|         # The GITKit token of the authenticated user.
 | |
|         # Corresponds to the JSON property `idToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :id_token
 | |
|       
 | |
|         # Instance id token of the app.
 | |
|         # Corresponds to the JSON property `instanceId`
 | |
|         # @return [String]
 | |
|         attr_accessor :instance_id
 | |
|       
 | |
|         # The password inputed by the user.
 | |
|         # Corresponds to the JSON property `password`
 | |
|         # @return [String]
 | |
|         attr_accessor :password
 | |
|       
 | |
|         # The GITKit token for the non-trusted IDP, which is to be confirmed by the user.
 | |
|         # Corresponds to the JSON property `pendingIdToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :pending_id_token
 | |
|       
 | |
|         # Whether return sts id token and refresh token instead of gitkit token.
 | |
|         # Corresponds to the JSON property `returnSecureToken`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :return_secure_token
 | |
|         alias_method :return_secure_token?, :return_secure_token
 | |
|       
 | |
|         # For multi-tenant use cases, in order to construct sign-in URL with the correct
 | |
|         # IDP parameters, Firebear needs to know which Tenant to retrieve IDP configs
 | |
|         # from.
 | |
|         # Corresponds to the JSON property `tenantId`
 | |
|         # @return [String]
 | |
|         attr_accessor :tenant_id
 | |
|       
 | |
|         # Tenant project number to be used for idp discovery.
 | |
|         # Corresponds to the JSON property `tenantProjectNumber`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :tenant_project_number
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @captcha_challenge = args[:captcha_challenge] if args.key?(:captcha_challenge)
 | |
|           @captcha_response = args[:captcha_response] if args.key?(:captcha_response)
 | |
|           @delegated_project_number = args[:delegated_project_number] if args.key?(:delegated_project_number)
 | |
|           @email = args[:email] if args.key?(:email)
 | |
|           @id_token = args[:id_token] if args.key?(:id_token)
 | |
|           @instance_id = args[:instance_id] if args.key?(:instance_id)
 | |
|           @password = args[:password] if args.key?(:password)
 | |
|           @pending_id_token = args[:pending_id_token] if args.key?(:pending_id_token)
 | |
|           @return_secure_token = args[:return_secure_token] if args.key?(:return_secure_token)
 | |
|           @tenant_id = args[:tenant_id] if args.key?(:tenant_id)
 | |
|           @tenant_project_number = args[:tenant_project_number] if args.key?(:tenant_project_number)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Request for Identitytoolkit-VerifyPhoneNumber
 | |
|       class IdentitytoolkitRelyingpartyVerifyPhoneNumberRequest
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # 
 | |
|         # Corresponds to the JSON property `code`
 | |
|         # @return [String]
 | |
|         attr_accessor :code
 | |
|       
 | |
|         # 
 | |
|         # Corresponds to the JSON property `idToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :id_token
 | |
|       
 | |
|         # 
 | |
|         # Corresponds to the JSON property `operation`
 | |
|         # @return [String]
 | |
|         attr_accessor :operation
 | |
|       
 | |
|         # 
 | |
|         # Corresponds to the JSON property `phoneNumber`
 | |
|         # @return [String]
 | |
|         attr_accessor :phone_number
 | |
|       
 | |
|         # The session info previously returned by IdentityToolkit-SendVerificationCode.
 | |
|         # Corresponds to the JSON property `sessionInfo`
 | |
|         # @return [String]
 | |
|         attr_accessor :session_info
 | |
|       
 | |
|         # 
 | |
|         # Corresponds to the JSON property `temporaryProof`
 | |
|         # @return [String]
 | |
|         attr_accessor :temporary_proof
 | |
|       
 | |
|         # 
 | |
|         # Corresponds to the JSON property `verificationProof`
 | |
|         # @return [String]
 | |
|         attr_accessor :verification_proof
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @code = args[:code] if args.key?(:code)
 | |
|           @id_token = args[:id_token] if args.key?(:id_token)
 | |
|           @operation = args[:operation] if args.key?(:operation)
 | |
|           @phone_number = args[:phone_number] if args.key?(:phone_number)
 | |
|           @session_info = args[:session_info] if args.key?(:session_info)
 | |
|           @temporary_proof = args[:temporary_proof] if args.key?(:temporary_proof)
 | |
|           @verification_proof = args[:verification_proof] if args.key?(:verification_proof)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Response for Identitytoolkit-VerifyPhoneNumber
 | |
|       class IdentitytoolkitRelyingpartyVerifyPhoneNumberResponse
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # 
 | |
|         # Corresponds to the JSON property `expiresIn`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :expires_in
 | |
|       
 | |
|         # 
 | |
|         # Corresponds to the JSON property `idToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :id_token
 | |
|       
 | |
|         # 
 | |
|         # Corresponds to the JSON property `isNewUser`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :is_new_user
 | |
|         alias_method :is_new_user?, :is_new_user
 | |
|       
 | |
|         # 
 | |
|         # Corresponds to the JSON property `localId`
 | |
|         # @return [String]
 | |
|         attr_accessor :local_id
 | |
|       
 | |
|         # 
 | |
|         # Corresponds to the JSON property `phoneNumber`
 | |
|         # @return [String]
 | |
|         attr_accessor :phone_number
 | |
|       
 | |
|         # 
 | |
|         # Corresponds to the JSON property `refreshToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :refresh_token
 | |
|       
 | |
|         # 
 | |
|         # Corresponds to the JSON property `temporaryProof`
 | |
|         # @return [String]
 | |
|         attr_accessor :temporary_proof
 | |
|       
 | |
|         # 
 | |
|         # Corresponds to the JSON property `temporaryProofExpiresIn`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :temporary_proof_expires_in
 | |
|       
 | |
|         # 
 | |
|         # Corresponds to the JSON property `verificationProof`
 | |
|         # @return [String]
 | |
|         attr_accessor :verification_proof
 | |
|       
 | |
|         # 
 | |
|         # Corresponds to the JSON property `verificationProofExpiresIn`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :verification_proof_expires_in
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @expires_in = args[:expires_in] if args.key?(:expires_in)
 | |
|           @id_token = args[:id_token] if args.key?(:id_token)
 | |
|           @is_new_user = args[:is_new_user] if args.key?(:is_new_user)
 | |
|           @local_id = args[:local_id] if args.key?(:local_id)
 | |
|           @phone_number = args[:phone_number] if args.key?(:phone_number)
 | |
|           @refresh_token = args[:refresh_token] if args.key?(:refresh_token)
 | |
|           @temporary_proof = args[:temporary_proof] if args.key?(:temporary_proof)
 | |
|           @temporary_proof_expires_in = args[:temporary_proof_expires_in] if args.key?(:temporary_proof_expires_in)
 | |
|           @verification_proof = args[:verification_proof] if args.key?(:verification_proof)
 | |
|           @verification_proof_expires_in = args[:verification_proof_expires_in] if args.key?(:verification_proof_expires_in)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Template for a single idp configuration.
 | |
|       class IdpConfig
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # OAuth2 client ID.
 | |
|         # Corresponds to the JSON property `clientId`
 | |
|         # @return [String]
 | |
|         attr_accessor :client_id
 | |
|       
 | |
|         # Whether this IDP is enabled.
 | |
|         # Corresponds to the JSON property `enabled`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :enabled
 | |
|         alias_method :enabled?, :enabled
 | |
|       
 | |
|         # Percent of users who will be prompted/redirected federated login for this IDP.
 | |
|         # Corresponds to the JSON property `experimentPercent`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :experiment_percent
 | |
|       
 | |
|         # OAuth2 provider.
 | |
|         # Corresponds to the JSON property `provider`
 | |
|         # @return [String]
 | |
|         attr_accessor :provider
 | |
|       
 | |
|         # OAuth2 client secret.
 | |
|         # Corresponds to the JSON property `secret`
 | |
|         # @return [String]
 | |
|         attr_accessor :secret
 | |
|       
 | |
|         # Whitelisted client IDs for audience check.
 | |
|         # Corresponds to the JSON property `whitelistedAudiences`
 | |
|         # @return [Array<String>]
 | |
|         attr_accessor :whitelisted_audiences
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @client_id = args[:client_id] if args.key?(:client_id)
 | |
|           @enabled = args[:enabled] if args.key?(:enabled)
 | |
|           @experiment_percent = args[:experiment_percent] if args.key?(:experiment_percent)
 | |
|           @provider = args[:provider] if args.key?(:provider)
 | |
|           @secret = args[:secret] if args.key?(:secret)
 | |
|           @whitelisted_audiences = args[:whitelisted_audiences] if args.key?(:whitelisted_audiences)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Request of getting a code for user confirmation (reset password, change email
 | |
|       # etc.)
 | |
|       class Relyingparty
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # whether or not to install the android app on the device where the link is
 | |
|         # opened
 | |
|         # Corresponds to the JSON property `androidInstallApp`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :android_install_app
 | |
|         alias_method :android_install_app?, :android_install_app
 | |
|       
 | |
|         # minimum version of the app. if the version on the device is lower than this
 | |
|         # version then the user is taken to the play store to upgrade the app
 | |
|         # Corresponds to the JSON property `androidMinimumVersion`
 | |
|         # @return [String]
 | |
|         attr_accessor :android_minimum_version
 | |
|       
 | |
|         # android package name of the android app to handle the action code
 | |
|         # Corresponds to the JSON property `androidPackageName`
 | |
|         # @return [String]
 | |
|         attr_accessor :android_package_name
 | |
|       
 | |
|         # whether or not the app can handle the oob code without first going to web
 | |
|         # Corresponds to the JSON property `canHandleCodeInApp`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :can_handle_code_in_app
 | |
|         alias_method :can_handle_code_in_app?, :can_handle_code_in_app
 | |
|       
 | |
|         # The recaptcha response from the user.
 | |
|         # Corresponds to the JSON property `captchaResp`
 | |
|         # @return [String]
 | |
|         attr_accessor :captcha_resp
 | |
|       
 | |
|         # The recaptcha challenge presented to the user.
 | |
|         # Corresponds to the JSON property `challenge`
 | |
|         # @return [String]
 | |
|         attr_accessor :challenge
 | |
|       
 | |
|         # The url to continue to the Gitkit app
 | |
|         # Corresponds to the JSON property `continueUrl`
 | |
|         # @return [String]
 | |
|         attr_accessor :continue_url
 | |
|       
 | |
|         # The email of the user.
 | |
|         # Corresponds to the JSON property `email`
 | |
|         # @return [String]
 | |
|         attr_accessor :email
 | |
|       
 | |
|         # iOS app store id to download the app if it's not already installed
 | |
|         # Corresponds to the JSON property `iOSAppStoreId`
 | |
|         # @return [String]
 | |
|         attr_accessor :i_os_app_store_id
 | |
|       
 | |
|         # the iOS bundle id of iOS app to handle the action code
 | |
|         # Corresponds to the JSON property `iOSBundleId`
 | |
|         # @return [String]
 | |
|         attr_accessor :i_os_bundle_id
 | |
|       
 | |
|         # The user's Gitkit login token for email change.
 | |
|         # Corresponds to the JSON property `idToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :id_token
 | |
|       
 | |
|         # The fixed string "identitytoolkit#relyingparty".
 | |
|         # Corresponds to the JSON property `kind`
 | |
|         # @return [String]
 | |
|         attr_accessor :kind
 | |
|       
 | |
|         # The new email if the code is for email change.
 | |
|         # Corresponds to the JSON property `newEmail`
 | |
|         # @return [String]
 | |
|         attr_accessor :new_email
 | |
|       
 | |
|         # The request type.
 | |
|         # Corresponds to the JSON property `requestType`
 | |
|         # @return [String]
 | |
|         attr_accessor :request_type
 | |
|       
 | |
|         # The IP address of the user.
 | |
|         # Corresponds to the JSON property `userIp`
 | |
|         # @return [String]
 | |
|         attr_accessor :user_ip
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @android_install_app = args[:android_install_app] if args.key?(:android_install_app)
 | |
|           @android_minimum_version = args[:android_minimum_version] if args.key?(:android_minimum_version)
 | |
|           @android_package_name = args[:android_package_name] if args.key?(:android_package_name)
 | |
|           @can_handle_code_in_app = args[:can_handle_code_in_app] if args.key?(:can_handle_code_in_app)
 | |
|           @captcha_resp = args[:captcha_resp] if args.key?(:captcha_resp)
 | |
|           @challenge = args[:challenge] if args.key?(:challenge)
 | |
|           @continue_url = args[:continue_url] if args.key?(:continue_url)
 | |
|           @email = args[:email] if args.key?(:email)
 | |
|           @i_os_app_store_id = args[:i_os_app_store_id] if args.key?(:i_os_app_store_id)
 | |
|           @i_os_bundle_id = args[:i_os_bundle_id] if args.key?(:i_os_bundle_id)
 | |
|           @id_token = args[:id_token] if args.key?(:id_token)
 | |
|           @kind = args[:kind] if args.key?(:kind)
 | |
|           @new_email = args[:new_email] if args.key?(:new_email)
 | |
|           @request_type = args[:request_type] if args.key?(:request_type)
 | |
|           @user_ip = args[:user_ip] if args.key?(:user_ip)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Response of resetting the password.
 | |
|       class ResetPasswordResponse
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The user's email. If the out-of-band code is for email recovery, the user's
 | |
|         # original email.
 | |
|         # Corresponds to the JSON property `email`
 | |
|         # @return [String]
 | |
|         attr_accessor :email
 | |
|       
 | |
|         # The fixed string "identitytoolkit#ResetPasswordResponse".
 | |
|         # Corresponds to the JSON property `kind`
 | |
|         # @return [String]
 | |
|         attr_accessor :kind
 | |
|       
 | |
|         # If the out-of-band code is for email recovery, the user's new email.
 | |
|         # Corresponds to the JSON property `newEmail`
 | |
|         # @return [String]
 | |
|         attr_accessor :new_email
 | |
|       
 | |
|         # The request type.
 | |
|         # Corresponds to the JSON property `requestType`
 | |
|         # @return [String]
 | |
|         attr_accessor :request_type
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @email = args[:email] if args.key?(:email)
 | |
|           @kind = args[:kind] if args.key?(:kind)
 | |
|           @new_email = args[:new_email] if args.key?(:new_email)
 | |
|           @request_type = args[:request_type] if args.key?(:request_type)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Respone of setting the account information.
 | |
|       class SetAccountInfoResponse
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The name of the user.
 | |
|         # Corresponds to the JSON property `displayName`
 | |
|         # @return [String]
 | |
|         attr_accessor :display_name
 | |
|       
 | |
|         # The email of the user.
 | |
|         # Corresponds to the JSON property `email`
 | |
|         # @return [String]
 | |
|         attr_accessor :email
 | |
|       
 | |
|         # If email has been verified.
 | |
|         # Corresponds to the JSON property `emailVerified`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :email_verified
 | |
|         alias_method :email_verified?, :email_verified
 | |
|       
 | |
|         # If idToken is STS id token, then this field will be expiration time of STS id
 | |
|         # token in seconds.
 | |
|         # Corresponds to the JSON property `expiresIn`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :expires_in
 | |
|       
 | |
|         # The Gitkit id token to login the newly sign up user.
 | |
|         # Corresponds to the JSON property `idToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :id_token
 | |
|       
 | |
|         # The fixed string "identitytoolkit#SetAccountInfoResponse".
 | |
|         # Corresponds to the JSON property `kind`
 | |
|         # @return [String]
 | |
|         attr_accessor :kind
 | |
|       
 | |
|         # The local ID of the user.
 | |
|         # Corresponds to the JSON property `localId`
 | |
|         # @return [String]
 | |
|         attr_accessor :local_id
 | |
|       
 | |
|         # The new email the user attempts to change to.
 | |
|         # Corresponds to the JSON property `newEmail`
 | |
|         # @return [String]
 | |
|         attr_accessor :new_email
 | |
|       
 | |
|         # The user's hashed password.
 | |
|         # Corresponds to the JSON property `passwordHash`
 | |
|         # NOTE: Values are automatically base64 encoded/decoded in the client library.
 | |
|         # @return [String]
 | |
|         attr_accessor :password_hash
 | |
|       
 | |
|         # The photo url of the user.
 | |
|         # Corresponds to the JSON property `photoUrl`
 | |
|         # @return [String]
 | |
|         attr_accessor :photo_url
 | |
|       
 | |
|         # The user's profiles at the associated IdPs.
 | |
|         # Corresponds to the JSON property `providerUserInfo`
 | |
|         # @return [Array<Google::Apis::IdentitytoolkitV3::SetAccountInfoResponse::ProviderUserInfo>]
 | |
|         attr_accessor :provider_user_info
 | |
|       
 | |
|         # If idToken is STS id token, then this field will be refresh token.
 | |
|         # Corresponds to the JSON property `refreshToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :refresh_token
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @display_name = args[:display_name] if args.key?(:display_name)
 | |
|           @email = args[:email] if args.key?(:email)
 | |
|           @email_verified = args[:email_verified] if args.key?(:email_verified)
 | |
|           @expires_in = args[:expires_in] if args.key?(:expires_in)
 | |
|           @id_token = args[:id_token] if args.key?(:id_token)
 | |
|           @kind = args[:kind] if args.key?(:kind)
 | |
|           @local_id = args[:local_id] if args.key?(:local_id)
 | |
|           @new_email = args[:new_email] if args.key?(:new_email)
 | |
|           @password_hash = args[:password_hash] if args.key?(:password_hash)
 | |
|           @photo_url = args[:photo_url] if args.key?(:photo_url)
 | |
|           @provider_user_info = args[:provider_user_info] if args.key?(:provider_user_info)
 | |
|           @refresh_token = args[:refresh_token] if args.key?(:refresh_token)
 | |
|         end
 | |
|         
 | |
|         # 
 | |
|         class ProviderUserInfo
 | |
|           include Google::Apis::Core::Hashable
 | |
|         
 | |
|           # The user's display name at the IDP.
 | |
|           # Corresponds to the JSON property `displayName`
 | |
|           # @return [String]
 | |
|           attr_accessor :display_name
 | |
|         
 | |
|           # User's identifier at IDP.
 | |
|           # Corresponds to the JSON property `federatedId`
 | |
|           # @return [String]
 | |
|           attr_accessor :federated_id
 | |
|         
 | |
|           # The user's photo url at the IDP.
 | |
|           # Corresponds to the JSON property `photoUrl`
 | |
|           # @return [String]
 | |
|           attr_accessor :photo_url
 | |
|         
 | |
|           # The IdP ID. For whitelisted IdPs it's a short domain name, e.g., google.com,
 | |
|           # aol.com, live.net and yahoo.com. For other OpenID IdPs it's the OP identifier.
 | |
|           # Corresponds to the JSON property `providerId`
 | |
|           # @return [String]
 | |
|           attr_accessor :provider_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)
 | |
|             @federated_id = args[:federated_id] if args.key?(:federated_id)
 | |
|             @photo_url = args[:photo_url] if args.key?(:photo_url)
 | |
|             @provider_id = args[:provider_id] if args.key?(:provider_id)
 | |
|           end
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Response of signing up new user, creating anonymous user or anonymous user
 | |
|       # reauth.
 | |
|       class SignupNewUserResponse
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The name of the user.
 | |
|         # Corresponds to the JSON property `displayName`
 | |
|         # @return [String]
 | |
|         attr_accessor :display_name
 | |
|       
 | |
|         # The email of the user.
 | |
|         # Corresponds to the JSON property `email`
 | |
|         # @return [String]
 | |
|         attr_accessor :email
 | |
|       
 | |
|         # If idToken is STS id token, then this field will be expiration time of STS id
 | |
|         # token in seconds.
 | |
|         # Corresponds to the JSON property `expiresIn`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :expires_in
 | |
|       
 | |
|         # The Gitkit id token to login the newly sign up user.
 | |
|         # Corresponds to the JSON property `idToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :id_token
 | |
|       
 | |
|         # The fixed string "identitytoolkit#SignupNewUserResponse".
 | |
|         # Corresponds to the JSON property `kind`
 | |
|         # @return [String]
 | |
|         attr_accessor :kind
 | |
|       
 | |
|         # The RP local ID of the user.
 | |
|         # Corresponds to the JSON property `localId`
 | |
|         # @return [String]
 | |
|         attr_accessor :local_id
 | |
|       
 | |
|         # If idToken is STS id token, then this field will be refresh token.
 | |
|         # Corresponds to the JSON property `refreshToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :refresh_token
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @display_name = args[:display_name] if args.key?(:display_name)
 | |
|           @email = args[:email] if args.key?(:email)
 | |
|           @expires_in = args[:expires_in] if args.key?(:expires_in)
 | |
|           @id_token = args[:id_token] if args.key?(:id_token)
 | |
|           @kind = args[:kind] if args.key?(:kind)
 | |
|           @local_id = args[:local_id] if args.key?(:local_id)
 | |
|           @refresh_token = args[:refresh_token] if args.key?(:refresh_token)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Respone of uploading accounts in batch.
 | |
|       class UploadAccountResponse
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The error encountered while processing the account info.
 | |
|         # Corresponds to the JSON property `error`
 | |
|         # @return [Array<Google::Apis::IdentitytoolkitV3::UploadAccountResponse::Error>]
 | |
|         attr_accessor :error
 | |
|       
 | |
|         # The fixed string "identitytoolkit#UploadAccountResponse".
 | |
|         # Corresponds to the JSON property `kind`
 | |
|         # @return [String]
 | |
|         attr_accessor :kind
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @error = args[:error] if args.key?(:error)
 | |
|           @kind = args[:kind] if args.key?(:kind)
 | |
|         end
 | |
|         
 | |
|         # 
 | |
|         class Error
 | |
|           include Google::Apis::Core::Hashable
 | |
|         
 | |
|           # The index of the malformed account, starting from 0.
 | |
|           # Corresponds to the JSON property `index`
 | |
|           # @return [Fixnum]
 | |
|           attr_accessor :index
 | |
|         
 | |
|           # Detailed error message for the account info.
 | |
|           # 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)
 | |
|             @index = args[:index] if args.key?(:index)
 | |
|             @message = args[:message] if args.key?(:message)
 | |
|           end
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Template for an individual account info.
 | |
|       class UserInfo
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # User creation timestamp.
 | |
|         # Corresponds to the JSON property `createdAt`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :created_at
 | |
|       
 | |
|         # The custom attributes to be set in the user's id token.
 | |
|         # Corresponds to the JSON property `customAttributes`
 | |
|         # @return [String]
 | |
|         attr_accessor :custom_attributes
 | |
|       
 | |
|         # Whether the user is authenticated by the developer.
 | |
|         # Corresponds to the JSON property `customAuth`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :custom_auth
 | |
|         alias_method :custom_auth?, :custom_auth
 | |
|       
 | |
|         # Whether the user is disabled.
 | |
|         # Corresponds to the JSON property `disabled`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :disabled
 | |
|         alias_method :disabled?, :disabled
 | |
|       
 | |
|         # The name of the user.
 | |
|         # Corresponds to the JSON property `displayName`
 | |
|         # @return [String]
 | |
|         attr_accessor :display_name
 | |
|       
 | |
|         # The email of the user.
 | |
|         # Corresponds to the JSON property `email`
 | |
|         # @return [String]
 | |
|         attr_accessor :email
 | |
|       
 | |
|         # Whether the email has been verified.
 | |
|         # Corresponds to the JSON property `emailVerified`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :email_verified
 | |
|         alias_method :email_verified?, :email_verified
 | |
|       
 | |
|         # last login timestamp.
 | |
|         # Corresponds to the JSON property `lastLoginAt`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :last_login_at
 | |
|       
 | |
|         # The local ID of the user.
 | |
|         # Corresponds to the JSON property `localId`
 | |
|         # @return [String]
 | |
|         attr_accessor :local_id
 | |
|       
 | |
|         # The user's hashed password.
 | |
|         # Corresponds to the JSON property `passwordHash`
 | |
|         # NOTE: Values are automatically base64 encoded/decoded in the client library.
 | |
|         # @return [String]
 | |
|         attr_accessor :password_hash
 | |
|       
 | |
|         # The timestamp when the password was last updated.
 | |
|         # Corresponds to the JSON property `passwordUpdatedAt`
 | |
|         # @return [Float]
 | |
|         attr_accessor :password_updated_at
 | |
|       
 | |
|         # User's phone number.
 | |
|         # Corresponds to the JSON property `phoneNumber`
 | |
|         # @return [String]
 | |
|         attr_accessor :phone_number
 | |
|       
 | |
|         # The URL of the user profile photo.
 | |
|         # Corresponds to the JSON property `photoUrl`
 | |
|         # @return [String]
 | |
|         attr_accessor :photo_url
 | |
|       
 | |
|         # The IDP of the user.
 | |
|         # Corresponds to the JSON property `providerUserInfo`
 | |
|         # @return [Array<Google::Apis::IdentitytoolkitV3::UserInfo::ProviderUserInfo>]
 | |
|         attr_accessor :provider_user_info
 | |
|       
 | |
|         # The user's plain text password.
 | |
|         # Corresponds to the JSON property `rawPassword`
 | |
|         # @return [String]
 | |
|         attr_accessor :raw_password
 | |
|       
 | |
|         # The user's password salt.
 | |
|         # Corresponds to the JSON property `salt`
 | |
|         # NOTE: Values are automatically base64 encoded/decoded in the client library.
 | |
|         # @return [String]
 | |
|         attr_accessor :salt
 | |
|       
 | |
|         # User's screen name at Twitter or login name at Github.
 | |
|         # Corresponds to the JSON property `screenName`
 | |
|         # @return [String]
 | |
|         attr_accessor :screen_name
 | |
|       
 | |
|         # Timestamp in seconds for valid login token.
 | |
|         # Corresponds to the JSON property `validSince`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :valid_since
 | |
|       
 | |
|         # Version of the user's password.
 | |
|         # Corresponds to the JSON property `version`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :version
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @created_at = args[:created_at] if args.key?(:created_at)
 | |
|           @custom_attributes = args[:custom_attributes] if args.key?(:custom_attributes)
 | |
|           @custom_auth = args[:custom_auth] if args.key?(:custom_auth)
 | |
|           @disabled = args[:disabled] if args.key?(:disabled)
 | |
|           @display_name = args[:display_name] if args.key?(:display_name)
 | |
|           @email = args[:email] if args.key?(:email)
 | |
|           @email_verified = args[:email_verified] if args.key?(:email_verified)
 | |
|           @last_login_at = args[:last_login_at] if args.key?(:last_login_at)
 | |
|           @local_id = args[:local_id] if args.key?(:local_id)
 | |
|           @password_hash = args[:password_hash] if args.key?(:password_hash)
 | |
|           @password_updated_at = args[:password_updated_at] if args.key?(:password_updated_at)
 | |
|           @phone_number = args[:phone_number] if args.key?(:phone_number)
 | |
|           @photo_url = args[:photo_url] if args.key?(:photo_url)
 | |
|           @provider_user_info = args[:provider_user_info] if args.key?(:provider_user_info)
 | |
|           @raw_password = args[:raw_password] if args.key?(:raw_password)
 | |
|           @salt = args[:salt] if args.key?(:salt)
 | |
|           @screen_name = args[:screen_name] if args.key?(:screen_name)
 | |
|           @valid_since = args[:valid_since] if args.key?(:valid_since)
 | |
|           @version = args[:version] if args.key?(:version)
 | |
|         end
 | |
|         
 | |
|         # 
 | |
|         class ProviderUserInfo
 | |
|           include Google::Apis::Core::Hashable
 | |
|         
 | |
|           # The user's display name at the IDP.
 | |
|           # Corresponds to the JSON property `displayName`
 | |
|           # @return [String]
 | |
|           attr_accessor :display_name
 | |
|         
 | |
|           # User's email at IDP.
 | |
|           # Corresponds to the JSON property `email`
 | |
|           # @return [String]
 | |
|           attr_accessor :email
 | |
|         
 | |
|           # User's identifier at IDP.
 | |
|           # Corresponds to the JSON property `federatedId`
 | |
|           # @return [String]
 | |
|           attr_accessor :federated_id
 | |
|         
 | |
|           # User's phone number.
 | |
|           # Corresponds to the JSON property `phoneNumber`
 | |
|           # @return [String]
 | |
|           attr_accessor :phone_number
 | |
|         
 | |
|           # The user's photo url at the IDP.
 | |
|           # Corresponds to the JSON property `photoUrl`
 | |
|           # @return [String]
 | |
|           attr_accessor :photo_url
 | |
|         
 | |
|           # The IdP ID. For white listed IdPs it's a short domain name, e.g., google.com,
 | |
|           # aol.com, live.net and yahoo.com. For other OpenID IdPs it's the OP identifier.
 | |
|           # Corresponds to the JSON property `providerId`
 | |
|           # @return [String]
 | |
|           attr_accessor :provider_id
 | |
|         
 | |
|           # User's raw identifier directly returned from IDP.
 | |
|           # Corresponds to the JSON property `rawId`
 | |
|           # @return [String]
 | |
|           attr_accessor :raw_id
 | |
|         
 | |
|           # User's screen name at Twitter or login name at Github.
 | |
|           # Corresponds to the JSON property `screenName`
 | |
|           # @return [String]
 | |
|           attr_accessor :screen_name
 | |
|         
 | |
|           def initialize(**args)
 | |
|              update!(**args)
 | |
|           end
 | |
|         
 | |
|           # Update properties of this object
 | |
|           def update!(**args)
 | |
|             @display_name = args[:display_name] if args.key?(:display_name)
 | |
|             @email = args[:email] if args.key?(:email)
 | |
|             @federated_id = args[:federated_id] if args.key?(:federated_id)
 | |
|             @phone_number = args[:phone_number] if args.key?(:phone_number)
 | |
|             @photo_url = args[:photo_url] if args.key?(:photo_url)
 | |
|             @provider_id = args[:provider_id] if args.key?(:provider_id)
 | |
|             @raw_id = args[:raw_id] if args.key?(:raw_id)
 | |
|             @screen_name = args[:screen_name] if args.key?(:screen_name)
 | |
|           end
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Response of verifying the IDP assertion.
 | |
|       class VerifyAssertionResponse
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The action code.
 | |
|         # Corresponds to the JSON property `action`
 | |
|         # @return [String]
 | |
|         attr_accessor :action
 | |
|       
 | |
|         # URL for OTA app installation.
 | |
|         # Corresponds to the JSON property `appInstallationUrl`
 | |
|         # @return [String]
 | |
|         attr_accessor :app_installation_url
 | |
|       
 | |
|         # The custom scheme used by mobile app.
 | |
|         # Corresponds to the JSON property `appScheme`
 | |
|         # @return [String]
 | |
|         attr_accessor :app_scheme
 | |
|       
 | |
|         # The opaque value used by the client to maintain context info between the
 | |
|         # authentication request and the IDP callback.
 | |
|         # Corresponds to the JSON property `context`
 | |
|         # @return [String]
 | |
|         attr_accessor :context
 | |
|       
 | |
|         # The birth date of the IdP account.
 | |
|         # Corresponds to the JSON property `dateOfBirth`
 | |
|         # @return [String]
 | |
|         attr_accessor :date_of_birth
 | |
|       
 | |
|         # The display name of the user.
 | |
|         # Corresponds to the JSON property `displayName`
 | |
|         # @return [String]
 | |
|         attr_accessor :display_name
 | |
|       
 | |
|         # The email returned by the IdP. NOTE: The federated login user may not own the
 | |
|         # email.
 | |
|         # Corresponds to the JSON property `email`
 | |
|         # @return [String]
 | |
|         attr_accessor :email
 | |
|       
 | |
|         # It's true if the email is recycled.
 | |
|         # Corresponds to the JSON property `emailRecycled`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :email_recycled
 | |
|         alias_method :email_recycled?, :email_recycled
 | |
|       
 | |
|         # The value is true if the IDP is also the email provider. It means the user
 | |
|         # owns the email.
 | |
|         # Corresponds to the JSON property `emailVerified`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :email_verified
 | |
|         alias_method :email_verified?, :email_verified
 | |
|       
 | |
|         # Client error code.
 | |
|         # Corresponds to the JSON property `errorMessage`
 | |
|         # @return [String]
 | |
|         attr_accessor :error_message
 | |
|       
 | |
|         # If idToken is STS id token, then this field will be expiration time of STS id
 | |
|         # token in seconds.
 | |
|         # Corresponds to the JSON property `expiresIn`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :expires_in
 | |
|       
 | |
|         # The unique ID identifies the IdP account.
 | |
|         # Corresponds to the JSON property `federatedId`
 | |
|         # @return [String]
 | |
|         attr_accessor :federated_id
 | |
|       
 | |
|         # The first name of the user.
 | |
|         # Corresponds to the JSON property `firstName`
 | |
|         # @return [String]
 | |
|         attr_accessor :first_name
 | |
|       
 | |
|         # The full name of the user.
 | |
|         # Corresponds to the JSON property `fullName`
 | |
|         # @return [String]
 | |
|         attr_accessor :full_name
 | |
|       
 | |
|         # The ID token.
 | |
|         # Corresponds to the JSON property `idToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :id_token
 | |
|       
 | |
|         # It's the identifier param in the createAuthUri request if the identifier is an
 | |
|         # email. It can be used to check whether the user input email is different from
 | |
|         # the asserted email.
 | |
|         # Corresponds to the JSON property `inputEmail`
 | |
|         # @return [String]
 | |
|         attr_accessor :input_email
 | |
|       
 | |
|         # True if it's a new user sign-in, false if it's a returning user.
 | |
|         # Corresponds to the JSON property `isNewUser`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :is_new_user
 | |
|         alias_method :is_new_user?, :is_new_user
 | |
|       
 | |
|         # The fixed string "identitytoolkit#VerifyAssertionResponse".
 | |
|         # Corresponds to the JSON property `kind`
 | |
|         # @return [String]
 | |
|         attr_accessor :kind
 | |
|       
 | |
|         # The language preference of the user.
 | |
|         # Corresponds to the JSON property `language`
 | |
|         # @return [String]
 | |
|         attr_accessor :language
 | |
|       
 | |
|         # The last name of the user.
 | |
|         # Corresponds to the JSON property `lastName`
 | |
|         # @return [String]
 | |
|         attr_accessor :last_name
 | |
|       
 | |
|         # The RP local ID if it's already been mapped to the IdP account identified by
 | |
|         # the federated ID.
 | |
|         # Corresponds to the JSON property `localId`
 | |
|         # @return [String]
 | |
|         attr_accessor :local_id
 | |
|       
 | |
|         # Whether the assertion is from a non-trusted IDP and need account linking
 | |
|         # confirmation.
 | |
|         # Corresponds to the JSON property `needConfirmation`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :need_confirmation
 | |
|         alias_method :need_confirmation?, :need_confirmation
 | |
|       
 | |
|         # Whether need client to supply email to complete the federated login flow.
 | |
|         # Corresponds to the JSON property `needEmail`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :need_email
 | |
|         alias_method :need_email?, :need_email
 | |
|       
 | |
|         # The nick name of the user.
 | |
|         # Corresponds to the JSON property `nickName`
 | |
|         # @return [String]
 | |
|         attr_accessor :nick_name
 | |
|       
 | |
|         # The OAuth2 access token.
 | |
|         # Corresponds to the JSON property `oauthAccessToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :oauth_access_token
 | |
|       
 | |
|         # The OAuth2 authorization code.
 | |
|         # Corresponds to the JSON property `oauthAuthorizationCode`
 | |
|         # @return [String]
 | |
|         attr_accessor :oauth_authorization_code
 | |
|       
 | |
|         # The lifetime in seconds of the OAuth2 access token.
 | |
|         # Corresponds to the JSON property `oauthExpireIn`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :oauth_expire_in
 | |
|       
 | |
|         # The OIDC id token.
 | |
|         # Corresponds to the JSON property `oauthIdToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :oauth_id_token
 | |
|       
 | |
|         # The user approved request token for the OpenID OAuth extension.
 | |
|         # Corresponds to the JSON property `oauthRequestToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :oauth_request_token
 | |
|       
 | |
|         # The scope for the OpenID OAuth extension.
 | |
|         # Corresponds to the JSON property `oauthScope`
 | |
|         # @return [String]
 | |
|         attr_accessor :oauth_scope
 | |
|       
 | |
|         # The OAuth1 access token secret.
 | |
|         # Corresponds to the JSON property `oauthTokenSecret`
 | |
|         # @return [String]
 | |
|         attr_accessor :oauth_token_secret
 | |
|       
 | |
|         # The original email stored in the mapping storage. It's returned when the
 | |
|         # federated ID is associated to a different email.
 | |
|         # Corresponds to the JSON property `originalEmail`
 | |
|         # @return [String]
 | |
|         attr_accessor :original_email
 | |
|       
 | |
|         # The URI of the public accessible profiel picture.
 | |
|         # Corresponds to the JSON property `photoUrl`
 | |
|         # @return [String]
 | |
|         attr_accessor :photo_url
 | |
|       
 | |
|         # The IdP ID. For white listed IdPs it's a short domain name e.g. google.com,
 | |
|         # aol.com, live.net and yahoo.com. If the "providerId" param is set to OpenID OP
 | |
|         # identifer other than the whilte listed IdPs the OP identifier is returned. If
 | |
|         # the "identifier" param is federated ID in the createAuthUri request. The
 | |
|         # domain part of the federated ID is returned.
 | |
|         # Corresponds to the JSON property `providerId`
 | |
|         # @return [String]
 | |
|         attr_accessor :provider_id
 | |
|       
 | |
|         # Raw IDP-returned user info.
 | |
|         # Corresponds to the JSON property `rawUserInfo`
 | |
|         # @return [String]
 | |
|         attr_accessor :raw_user_info
 | |
|       
 | |
|         # If idToken is STS id token, then this field will be refresh token.
 | |
|         # Corresponds to the JSON property `refreshToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :refresh_token
 | |
|       
 | |
|         # The screen_name of a Twitter user or the login name at Github.
 | |
|         # Corresponds to the JSON property `screenName`
 | |
|         # @return [String]
 | |
|         attr_accessor :screen_name
 | |
|       
 | |
|         # The timezone of the user.
 | |
|         # Corresponds to the JSON property `timeZone`
 | |
|         # @return [String]
 | |
|         attr_accessor :time_zone
 | |
|       
 | |
|         # When action is 'map', contains the idps which can be used for confirmation.
 | |
|         # Corresponds to the JSON property `verifiedProvider`
 | |
|         # @return [Array<String>]
 | |
|         attr_accessor :verified_provider
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @action = args[:action] if args.key?(:action)
 | |
|           @app_installation_url = args[:app_installation_url] if args.key?(:app_installation_url)
 | |
|           @app_scheme = args[:app_scheme] if args.key?(:app_scheme)
 | |
|           @context = args[:context] if args.key?(:context)
 | |
|           @date_of_birth = args[:date_of_birth] if args.key?(:date_of_birth)
 | |
|           @display_name = args[:display_name] if args.key?(:display_name)
 | |
|           @email = args[:email] if args.key?(:email)
 | |
|           @email_recycled = args[:email_recycled] if args.key?(:email_recycled)
 | |
|           @email_verified = args[:email_verified] if args.key?(:email_verified)
 | |
|           @error_message = args[:error_message] if args.key?(:error_message)
 | |
|           @expires_in = args[:expires_in] if args.key?(:expires_in)
 | |
|           @federated_id = args[:federated_id] if args.key?(:federated_id)
 | |
|           @first_name = args[:first_name] if args.key?(:first_name)
 | |
|           @full_name = args[:full_name] if args.key?(:full_name)
 | |
|           @id_token = args[:id_token] if args.key?(:id_token)
 | |
|           @input_email = args[:input_email] if args.key?(:input_email)
 | |
|           @is_new_user = args[:is_new_user] if args.key?(:is_new_user)
 | |
|           @kind = args[:kind] if args.key?(:kind)
 | |
|           @language = args[:language] if args.key?(:language)
 | |
|           @last_name = args[:last_name] if args.key?(:last_name)
 | |
|           @local_id = args[:local_id] if args.key?(:local_id)
 | |
|           @need_confirmation = args[:need_confirmation] if args.key?(:need_confirmation)
 | |
|           @need_email = args[:need_email] if args.key?(:need_email)
 | |
|           @nick_name = args[:nick_name] if args.key?(:nick_name)
 | |
|           @oauth_access_token = args[:oauth_access_token] if args.key?(:oauth_access_token)
 | |
|           @oauth_authorization_code = args[:oauth_authorization_code] if args.key?(:oauth_authorization_code)
 | |
|           @oauth_expire_in = args[:oauth_expire_in] if args.key?(:oauth_expire_in)
 | |
|           @oauth_id_token = args[:oauth_id_token] if args.key?(:oauth_id_token)
 | |
|           @oauth_request_token = args[:oauth_request_token] if args.key?(:oauth_request_token)
 | |
|           @oauth_scope = args[:oauth_scope] if args.key?(:oauth_scope)
 | |
|           @oauth_token_secret = args[:oauth_token_secret] if args.key?(:oauth_token_secret)
 | |
|           @original_email = args[:original_email] if args.key?(:original_email)
 | |
|           @photo_url = args[:photo_url] if args.key?(:photo_url)
 | |
|           @provider_id = args[:provider_id] if args.key?(:provider_id)
 | |
|           @raw_user_info = args[:raw_user_info] if args.key?(:raw_user_info)
 | |
|           @refresh_token = args[:refresh_token] if args.key?(:refresh_token)
 | |
|           @screen_name = args[:screen_name] if args.key?(:screen_name)
 | |
|           @time_zone = args[:time_zone] if args.key?(:time_zone)
 | |
|           @verified_provider = args[:verified_provider] if args.key?(:verified_provider)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Response from verifying a custom token
 | |
|       class VerifyCustomTokenResponse
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # If idToken is STS id token, then this field will be expiration time of STS id
 | |
|         # token in seconds.
 | |
|         # Corresponds to the JSON property `expiresIn`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :expires_in
 | |
|       
 | |
|         # The GITKit token for authenticated user.
 | |
|         # Corresponds to the JSON property `idToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :id_token
 | |
|       
 | |
|         # True if it's a new user sign-in, false if it's a returning user.
 | |
|         # Corresponds to the JSON property `isNewUser`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :is_new_user
 | |
|         alias_method :is_new_user?, :is_new_user
 | |
|       
 | |
|         # The fixed string "identitytoolkit#VerifyCustomTokenResponse".
 | |
|         # Corresponds to the JSON property `kind`
 | |
|         # @return [String]
 | |
|         attr_accessor :kind
 | |
|       
 | |
|         # If idToken is STS id token, then this field will be refresh token.
 | |
|         # Corresponds to the JSON property `refreshToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :refresh_token
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @expires_in = args[:expires_in] if args.key?(:expires_in)
 | |
|           @id_token = args[:id_token] if args.key?(:id_token)
 | |
|           @is_new_user = args[:is_new_user] if args.key?(:is_new_user)
 | |
|           @kind = args[:kind] if args.key?(:kind)
 | |
|           @refresh_token = args[:refresh_token] if args.key?(:refresh_token)
 | |
|         end
 | |
|       end
 | |
|       
 | |
|       # Request of verifying the password.
 | |
|       class VerifyPasswordResponse
 | |
|         include Google::Apis::Core::Hashable
 | |
|       
 | |
|         # The name of the user.
 | |
|         # Corresponds to the JSON property `displayName`
 | |
|         # @return [String]
 | |
|         attr_accessor :display_name
 | |
|       
 | |
|         # The email returned by the IdP. NOTE: The federated login user may not own the
 | |
|         # email.
 | |
|         # Corresponds to the JSON property `email`
 | |
|         # @return [String]
 | |
|         attr_accessor :email
 | |
|       
 | |
|         # If idToken is STS id token, then this field will be expiration time of STS id
 | |
|         # token in seconds.
 | |
|         # Corresponds to the JSON property `expiresIn`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :expires_in
 | |
|       
 | |
|         # The GITKit token for authenticated user.
 | |
|         # Corresponds to the JSON property `idToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :id_token
 | |
|       
 | |
|         # The fixed string "identitytoolkit#VerifyPasswordResponse".
 | |
|         # Corresponds to the JSON property `kind`
 | |
|         # @return [String]
 | |
|         attr_accessor :kind
 | |
|       
 | |
|         # The RP local ID if it's already been mapped to the IdP account identified by
 | |
|         # the federated ID.
 | |
|         # Corresponds to the JSON property `localId`
 | |
|         # @return [String]
 | |
|         attr_accessor :local_id
 | |
|       
 | |
|         # The OAuth2 access token.
 | |
|         # Corresponds to the JSON property `oauthAccessToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :oauth_access_token
 | |
|       
 | |
|         # The OAuth2 authorization code.
 | |
|         # Corresponds to the JSON property `oauthAuthorizationCode`
 | |
|         # @return [String]
 | |
|         attr_accessor :oauth_authorization_code
 | |
|       
 | |
|         # The lifetime in seconds of the OAuth2 access token.
 | |
|         # Corresponds to the JSON property `oauthExpireIn`
 | |
|         # @return [Fixnum]
 | |
|         attr_accessor :oauth_expire_in
 | |
|       
 | |
|         # The URI of the user's photo at IdP
 | |
|         # Corresponds to the JSON property `photoUrl`
 | |
|         # @return [String]
 | |
|         attr_accessor :photo_url
 | |
|       
 | |
|         # If idToken is STS id token, then this field will be refresh token.
 | |
|         # Corresponds to the JSON property `refreshToken`
 | |
|         # @return [String]
 | |
|         attr_accessor :refresh_token
 | |
|       
 | |
|         # Whether the email is registered.
 | |
|         # Corresponds to the JSON property `registered`
 | |
|         # @return [Boolean]
 | |
|         attr_accessor :registered
 | |
|         alias_method :registered?, :registered
 | |
|       
 | |
|         def initialize(**args)
 | |
|            update!(**args)
 | |
|         end
 | |
|       
 | |
|         # Update properties of this object
 | |
|         def update!(**args)
 | |
|           @display_name = args[:display_name] if args.key?(:display_name)
 | |
|           @email = args[:email] if args.key?(:email)
 | |
|           @expires_in = args[:expires_in] if args.key?(:expires_in)
 | |
|           @id_token = args[:id_token] if args.key?(:id_token)
 | |
|           @kind = args[:kind] if args.key?(:kind)
 | |
|           @local_id = args[:local_id] if args.key?(:local_id)
 | |
|           @oauth_access_token = args[:oauth_access_token] if args.key?(:oauth_access_token)
 | |
|           @oauth_authorization_code = args[:oauth_authorization_code] if args.key?(:oauth_authorization_code)
 | |
|           @oauth_expire_in = args[:oauth_expire_in] if args.key?(:oauth_expire_in)
 | |
|           @photo_url = args[:photo_url] if args.key?(:photo_url)
 | |
|           @refresh_token = args[:refresh_token] if args.key?(:refresh_token)
 | |
|           @registered = args[:registered] if args.key?(:registered)
 | |
|         end
 | |
|       end
 | |
|     end
 | |
|   end
 | |
| end
 |