2670 lines
103 KiB
Ruby
2670 lines
103 KiB
Ruby
|
# Copyright 2020 Google LLC
|
||
|
#
|
||
|
# 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
|