google-apis-identitytoolkit_v3 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: f327a076a416b5321cbde45bbc238372b0725c544a64c7cf0de44727eaeec23f
4
+ data.tar.gz: ac0d1f418464350f6f4b963bdf259cc3b5940abf9598df2e3ecbacfc248d1d95
5
+ SHA512:
6
+ metadata.gz: 67055e7049a34f3a016c1a75b3842133ad217298513119f6d8dd1023d3a666f74a5cc2b752aa6bfdca89e0b005462b285bfce3f8d9056f2c1799535238ddca37
7
+ data.tar.gz: fdfcdf7bf4baf8df9ebcc04b9ae91308fda18e90987ea05f6c0b2ac024ce21250058004c6f8b2dac1ff89d619bcc859aac23f2e7538f1e44adc53e40d2f00952
@@ -0,0 +1,13 @@
1
+ --hide-void-return
2
+ --no-private
3
+ --verbose
4
+ --title=google-apis-identitytoolkit_v3
5
+ --markup-provider=redcarpet
6
+ --markup=markdown
7
+ --main OVERVIEW.md
8
+ lib/google/apis/identitytoolkit_v3/*.rb
9
+ lib/google/apis/identitytoolkit_v3.rb
10
+ -
11
+ OVERVIEW.md
12
+ CHANGELOG.md
13
+ LICENSE.md
@@ -0,0 +1,7 @@
1
+ # Release history for google-apis-identitytoolkit_v3
2
+
3
+ ### v0.1.0 (2021-01-07)
4
+
5
+ * Regenerated using generator version 0.1.1
6
+ * Regenerated from discovery document revision 20180723
7
+
@@ -0,0 +1,202 @@
1
+
2
+ Apache License
3
+ Version 2.0, January 2004
4
+ http://www.apache.org/licenses/
5
+
6
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
7
+
8
+ 1. Definitions.
9
+
10
+ "License" shall mean the terms and conditions for use, reproduction,
11
+ and distribution as defined by Sections 1 through 9 of this document.
12
+
13
+ "Licensor" shall mean the copyright owner or entity authorized by
14
+ the copyright owner that is granting the License.
15
+
16
+ "Legal Entity" shall mean the union of the acting entity and all
17
+ other entities that control, are controlled by, or are under common
18
+ control with that entity. For the purposes of this definition,
19
+ "control" means (i) the power, direct or indirect, to cause the
20
+ direction or management of such entity, whether by contract or
21
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
22
+ outstanding shares, or (iii) beneficial ownership of such entity.
23
+
24
+ "You" (or "Your") shall mean an individual or Legal Entity
25
+ exercising permissions granted by this License.
26
+
27
+ "Source" form shall mean the preferred form for making modifications,
28
+ including but not limited to software source code, documentation
29
+ source, and configuration files.
30
+
31
+ "Object" form shall mean any form resulting from mechanical
32
+ transformation or translation of a Source form, including but
33
+ not limited to compiled object code, generated documentation,
34
+ and conversions to other media types.
35
+
36
+ "Work" shall mean the work of authorship, whether in Source or
37
+ Object form, made available under the License, as indicated by a
38
+ copyright notice that is included in or attached to the work
39
+ (an example is provided in the Appendix below).
40
+
41
+ "Derivative Works" shall mean any work, whether in Source or Object
42
+ form, that is based on (or derived from) the Work and for which the
43
+ editorial revisions, annotations, elaborations, or other modifications
44
+ represent, as a whole, an original work of authorship. For the purposes
45
+ of this License, Derivative Works shall not include works that remain
46
+ separable from, or merely link (or bind by name) to the interfaces of,
47
+ the Work and Derivative Works thereof.
48
+
49
+ "Contribution" shall mean any work of authorship, including
50
+ the original version of the Work and any modifications or additions
51
+ to that Work or Derivative Works thereof, that is intentionally
52
+ submitted to Licensor for inclusion in the Work by the copyright owner
53
+ or by an individual or Legal Entity authorized to submit on behalf of
54
+ the copyright owner. For the purposes of this definition, "submitted"
55
+ means any form of electronic, verbal, or written communication sent
56
+ to the Licensor or its representatives, including but not limited to
57
+ communication on electronic mailing lists, source code control systems,
58
+ and issue tracking systems that are managed by, or on behalf of, the
59
+ Licensor for the purpose of discussing and improving the Work, but
60
+ excluding communication that is conspicuously marked or otherwise
61
+ designated in writing by the copyright owner as "Not a Contribution."
62
+
63
+ "Contributor" shall mean Licensor and any individual or Legal Entity
64
+ on behalf of whom a Contribution has been received by Licensor and
65
+ subsequently incorporated within the Work.
66
+
67
+ 2. Grant of Copyright License. Subject to the terms and conditions of
68
+ this License, each Contributor hereby grants to You a perpetual,
69
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
70
+ copyright license to reproduce, prepare Derivative Works of,
71
+ publicly display, publicly perform, sublicense, and distribute the
72
+ Work and such Derivative Works in Source or Object form.
73
+
74
+ 3. Grant of Patent License. Subject to the terms and conditions of
75
+ this License, each Contributor hereby grants to You a perpetual,
76
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
77
+ (except as stated in this section) patent license to make, have made,
78
+ use, offer to sell, sell, import, and otherwise transfer the Work,
79
+ where such license applies only to those patent claims licensable
80
+ by such Contributor that are necessarily infringed by their
81
+ Contribution(s) alone or by combination of their Contribution(s)
82
+ with the Work to which such Contribution(s) was submitted. If You
83
+ institute patent litigation against any entity (including a
84
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
85
+ or a Contribution incorporated within the Work constitutes direct
86
+ or contributory patent infringement, then any patent licenses
87
+ granted to You under this License for that Work shall terminate
88
+ as of the date such litigation is filed.
89
+
90
+ 4. Redistribution. You may reproduce and distribute copies of the
91
+ Work or Derivative Works thereof in any medium, with or without
92
+ modifications, and in Source or Object form, provided that You
93
+ meet the following conditions:
94
+
95
+ (a) You must give any other recipients of the Work or
96
+ Derivative Works a copy of this License; and
97
+
98
+ (b) You must cause any modified files to carry prominent notices
99
+ stating that You changed the files; and
100
+
101
+ (c) You must retain, in the Source form of any Derivative Works
102
+ that You distribute, all copyright, patent, trademark, and
103
+ attribution notices from the Source form of the Work,
104
+ excluding those notices that do not pertain to any part of
105
+ the Derivative Works; and
106
+
107
+ (d) If the Work includes a "NOTICE" text file as part of its
108
+ distribution, then any Derivative Works that You distribute must
109
+ include a readable copy of the attribution notices contained
110
+ within such NOTICE file, excluding those notices that do not
111
+ pertain to any part of the Derivative Works, in at least one
112
+ of the following places: within a NOTICE text file distributed
113
+ as part of the Derivative Works; within the Source form or
114
+ documentation, if provided along with the Derivative Works; or,
115
+ within a display generated by the Derivative Works, if and
116
+ wherever such third-party notices normally appear. The contents
117
+ of the NOTICE file are for informational purposes only and
118
+ do not modify the License. You may add Your own attribution
119
+ notices within Derivative Works that You distribute, alongside
120
+ or as an addendum to the NOTICE text from the Work, provided
121
+ that such additional attribution notices cannot be construed
122
+ as modifying the License.
123
+
124
+ You may add Your own copyright statement to Your modifications and
125
+ may provide additional or different license terms and conditions
126
+ for use, reproduction, or distribution of Your modifications, or
127
+ for any such Derivative Works as a whole, provided Your use,
128
+ reproduction, and distribution of the Work otherwise complies with
129
+ the conditions stated in this License.
130
+
131
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
132
+ any Contribution intentionally submitted for inclusion in the Work
133
+ by You to the Licensor shall be under the terms and conditions of
134
+ this License, without any additional terms or conditions.
135
+ Notwithstanding the above, nothing herein shall supersede or modify
136
+ the terms of any separate license agreement you may have executed
137
+ with Licensor regarding such Contributions.
138
+
139
+ 6. Trademarks. This License does not grant permission to use the trade
140
+ names, trademarks, service marks, or product names of the Licensor,
141
+ except as required for reasonable and customary use in describing the
142
+ origin of the Work and reproducing the content of the NOTICE file.
143
+
144
+ 7. Disclaimer of Warranty. Unless required by applicable law or
145
+ agreed to in writing, Licensor provides the Work (and each
146
+ Contributor provides its Contributions) on an "AS IS" BASIS,
147
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
148
+ implied, including, without limitation, any warranties or conditions
149
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
150
+ PARTICULAR PURPOSE. You are solely responsible for determining the
151
+ appropriateness of using or redistributing the Work and assume any
152
+ risks associated with Your exercise of permissions under this License.
153
+
154
+ 8. Limitation of Liability. In no event and under no legal theory,
155
+ whether in tort (including negligence), contract, or otherwise,
156
+ unless required by applicable law (such as deliberate and grossly
157
+ negligent acts) or agreed to in writing, shall any Contributor be
158
+ liable to You for damages, including any direct, indirect, special,
159
+ incidental, or consequential damages of any character arising as a
160
+ result of this License or out of the use or inability to use the
161
+ Work (including but not limited to damages for loss of goodwill,
162
+ work stoppage, computer failure or malfunction, or any and all
163
+ other commercial damages or losses), even if such Contributor
164
+ has been advised of the possibility of such damages.
165
+
166
+ 9. Accepting Warranty or Additional Liability. While redistributing
167
+ the Work or Derivative Works thereof, You may choose to offer,
168
+ and charge a fee for, acceptance of support, warranty, indemnity,
169
+ or other liability obligations and/or rights consistent with this
170
+ License. However, in accepting such obligations, You may act only
171
+ on Your own behalf and on Your sole responsibility, not on behalf
172
+ of any other Contributor, and only if You agree to indemnify,
173
+ defend, and hold each Contributor harmless for any liability
174
+ incurred by, or claims asserted against, such Contributor by reason
175
+ of your accepting any such warranty or additional liability.
176
+
177
+ END OF TERMS AND CONDITIONS
178
+
179
+ APPENDIX: How to apply the Apache License to your work.
180
+
181
+ To apply the Apache License to your work, attach the following
182
+ boilerplate notice, with the fields enclosed by brackets "[]"
183
+ replaced with your own identifying information. (Don't include
184
+ the brackets!) The text should be enclosed in the appropriate
185
+ comment syntax for the file format. We also recommend that a
186
+ file or class name and description of purpose be included on the
187
+ same "printed page" as the copyright notice for easier
188
+ identification within third-party archives.
189
+
190
+ Copyright [yyyy] [name of copyright owner]
191
+
192
+ Licensed under the Apache License, Version 2.0 (the "License");
193
+ you may not use this file except in compliance with the License.
194
+ You may obtain a copy of the License at
195
+
196
+ http://www.apache.org/licenses/LICENSE-2.0
197
+
198
+ Unless required by applicable law or agreed to in writing, software
199
+ distributed under the License is distributed on an "AS IS" BASIS,
200
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
201
+ See the License for the specific language governing permissions and
202
+ limitations under the License.
@@ -0,0 +1,96 @@
1
+ # Simple REST client for version V3 of the Google Identity Toolkit API
2
+
3
+ This is a simple client library for version V3 of the Google Identity Toolkit API. It provides:
4
+
5
+ * A client object that connects to the HTTP/JSON REST endpoint for the service.
6
+ * Ruby objects for data structures related to the service.
7
+ * Integration with the googleauth gem for authentication using OAuth, API keys, and service accounts.
8
+ * Control of retry, pagination, and timeouts.
9
+
10
+ Note that although this client library is supported and will continue to be updated to track changes to the service, it is otherwise considered complete and not under active development. Many Google services, especially Google Cloud Platform services, may provide a more modern client that is under more active development and improvement. See the section below titled *Which client should I use?* for more information.
11
+
12
+ ## Getting started
13
+
14
+ ### Before you begin
15
+
16
+ There are a few setup steps you need to complete before you can use this library:
17
+
18
+ 1. If you don't already have a Google account, [sign up](https://www.google.com/accounts).
19
+ 2. If you have never created a Google APIs Console project, read about [Managing Projects](https://cloud.google.com/resource-manager/docs/creating-managing-projects) and create a project in the [Google API Console](https://console.cloud.google.com/).
20
+ 3. Most APIs need to be enabled for your project. [Enable it](https://console.cloud.google.com/apis/library/identitytoolkit.googleapis.com) in the console.
21
+
22
+ ### Installation
23
+
24
+ Add this line to your application's Gemfile:
25
+
26
+ ```ruby
27
+ gem 'google-apis-identitytoolkit_v3', '~> 0.1'
28
+ ```
29
+
30
+ And then execute:
31
+
32
+ ```
33
+ $ bundle
34
+ ```
35
+
36
+ Or install it yourself as:
37
+
38
+ ```
39
+ $ gem install google-apis-identitytoolkit_v3
40
+ ```
41
+
42
+ ### Creating a client object
43
+
44
+ Once the gem is installed, you can load the client code and instantiate a client.
45
+
46
+ ```ruby
47
+ # Load the client
48
+ require "google/apis/identitytoolkit_v3"
49
+
50
+ # Create a client object
51
+ client = Google::Apis::IdentitytoolkitV3::IdentityToolkitService.new
52
+
53
+ # Authenticate calls
54
+ client.authentication = # ... use the googleauth gem to create credentials
55
+ ```
56
+
57
+ See the class reference docs for information on the methods you can call from a client.
58
+
59
+ ## Documentation
60
+
61
+ More detailed descriptions of the Google simple REST clients are available in two documents.
62
+
63
+ * The [Usage Guide](https://github.com/googleapis/google-api-ruby-client/blob/master/docs/usage-guide.md) discusses how to make API calls, how to use the provided data structures, and how to work the various features of the client library, including media upload and download, error handling, retries, pagination, and logging.
64
+ * The [Auth Guide](https://github.com/googleapis/google-api-ruby-client/blob/master/docs/auth-guide.md) discusses authentication in the client libraries, including API keys, OAuth 2.0, service accounts, and environment variables.
65
+
66
+ (Note: the above documents are written for the simple REST clients in general, and their examples may not reflect the Identitytoolkit service in particular.)
67
+
68
+ For reference information on specific calls in the Google Identity Toolkit API, see the {Google::Apis::IdentitytoolkitV3::IdentityToolkitService class reference docs}.
69
+
70
+ ## Which client should I use?
71
+
72
+ Google provides two types of Ruby API client libraries: **simple REST clients** and **modern clients**.
73
+
74
+ This library, `google-apis-identitytoolkit_v3`, is a simple REST client. You can identify these clients by their gem names, which are always in the form `google-apis-<servicename>_<serviceversion>`. The simple REST clients connect to HTTP/JSON REST endpoints and are automatically generated from service discovery documents. They support most API functionality, but their class interfaces are sometimes awkward.
75
+
76
+ Modern clients are produced by a modern code generator, sometimes combined with hand-crafted functionality. Most modern clients connect to high-performance gRPC endpoints, although a few are backed by REST services. Modern clients are available for many Google services, especially Google Cloud Platform services, but do not yet support all the services covered by the simple clients.
77
+
78
+ Gem names for modern clients are often of the form `google-cloud-<service_name>`. (For example, [google-cloud-pubsub](https://rubygems.org/gems/google-cloud-pubsub).) Note that most modern clients also have corresponding "versioned" gems with names like `google-cloud-<service_name>-<version>`. (For example, [google-cloud-pubsub-v1](https://rubygems.org/gems/google-cloud-pubsub-v1).) The "versioned" gems can be used directly, but often provide lower-level interfaces. In most cases, the main gem is recommended.
79
+
80
+ **For most users, we recommend the modern client, if one is available.** Compared with simple clients, modern clients are generally much easier to use and more Ruby-like, support more advanced features such as streaming and long-running operations, and often provide much better performance. You may consider using a simple client instead, if a modern client is not yet available for the service you want to use, or if you are not able to use gRPC on your infrastructure.
81
+
82
+ The [product documentation](https://developers.google.com/identity-toolkit/v3/) may provide guidance regarding the preferred client library to use.
83
+
84
+ ## Supported Ruby versions
85
+
86
+ This library is supported on Ruby 2.5+.
87
+
88
+ Google provides official support for Ruby versions that are actively supported by Ruby Core -- that is, Ruby versions that are either in normal maintenance or in security maintenance, and not end of life. Currently, this means Ruby 2.5 and later. Older versions of Ruby _may_ still work, but are unsupported and not recommended. See https://www.ruby-lang.org/en/downloads/branches/ for details about the Ruby support schedule.
89
+
90
+ ## License
91
+
92
+ This library is licensed under Apache 2.0. Full license text is available in the {file:LICENSE.md LICENSE}.
93
+
94
+ ## Support
95
+
96
+ Please [report bugs at the project on Github](https://github.com/google/google-api-ruby-client/issues). Don't hesitate to [ask questions](http://stackoverflow.com/questions/tagged/google-api-ruby-client) about the client or APIs on [StackOverflow](http://stackoverflow.com).
@@ -0,0 +1,15 @@
1
+ # Copyright 2020 Google LLC
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require "google/apis/identitytoolkit_v3"
@@ -0,0 +1,39 @@
1
+ # Copyright 2020 Google LLC
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'google/apis/identitytoolkit_v3/service.rb'
16
+ require 'google/apis/identitytoolkit_v3/classes.rb'
17
+ require 'google/apis/identitytoolkit_v3/representations.rb'
18
+ require 'google/apis/identitytoolkit_v3/gem_version.rb'
19
+
20
+ module Google
21
+ module Apis
22
+ # Google Identity Toolkit API
23
+ #
24
+ # Help the third party sites to implement federated login.
25
+ #
26
+ # @see https://developers.google.com/identity-toolkit/v3/
27
+ module IdentitytoolkitV3
28
+ # Version of the Google Identity Toolkit API this client connects to.
29
+ # This is NOT the gem version.
30
+ VERSION = 'V3'
31
+
32
+ # View and manage your data across Google Cloud Platform services
33
+ AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
34
+
35
+ # View and administer all your Firebase data and settings
36
+ AUTH_FIREBASE = 'https://www.googleapis.com/auth/firebase'
37
+ end
38
+ end
39
+ end
@@ -0,0 +1,2669 @@
1
+ # Copyright 2020 Google LLC
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'date'
16
+ require 'google/apis/core/base_service'
17
+ require 'google/apis/core/json_representation'
18
+ require 'google/apis/core/hashable'
19
+ require 'google/apis/errors'
20
+
21
+ module Google
22
+ module Apis
23
+ module IdentitytoolkitV3
24
+
25
+ # Response of creating the IDP authentication URL.
26
+ class CreateAuthUriResponse
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # all providers the user has once used to do federated login
30
+ # Corresponds to the JSON property `allProviders`
31
+ # @return [Array<String>]
32
+ attr_accessor :all_providers
33
+
34
+ # The URI used by the IDP to authenticate the user.
35
+ # Corresponds to the JSON property `authUri`
36
+ # @return [String]
37
+ attr_accessor :auth_uri
38
+
39
+ # True if captcha is required.
40
+ # Corresponds to the JSON property `captchaRequired`
41
+ # @return [Boolean]
42
+ attr_accessor :captcha_required
43
+ alias_method :captcha_required?, :captcha_required
44
+
45
+ # True if the authUri is for user's existing provider.
46
+ # Corresponds to the JSON property `forExistingProvider`
47
+ # @return [Boolean]
48
+ attr_accessor :for_existing_provider
49
+ alias_method :for_existing_provider?, :for_existing_provider
50
+
51
+ # The fixed string identitytoolkit#CreateAuthUriResponse".
52
+ # Corresponds to the JSON property `kind`
53
+ # @return [String]
54
+ attr_accessor :kind
55
+
56
+ # The provider ID of the auth URI.
57
+ # Corresponds to the JSON property `providerId`
58
+ # @return [String]
59
+ attr_accessor :provider_id
60
+
61
+ # Whether the user is registered if the identifier is an email.
62
+ # Corresponds to the JSON property `registered`
63
+ # @return [Boolean]
64
+ attr_accessor :registered
65
+ alias_method :registered?, :registered
66
+
67
+ # Session ID which should be passed in the following verifyAssertion request.
68
+ # Corresponds to the JSON property `sessionId`
69
+ # @return [String]
70
+ attr_accessor :session_id
71
+
72
+ # All sign-in methods this user has used.
73
+ # Corresponds to the JSON property `signinMethods`
74
+ # @return [Array<String>]
75
+ attr_accessor :signin_methods
76
+
77
+ def initialize(**args)
78
+ update!(**args)
79
+ end
80
+
81
+ # Update properties of this object
82
+ def update!(**args)
83
+ @all_providers = args[:all_providers] if args.key?(:all_providers)
84
+ @auth_uri = args[:auth_uri] if args.key?(:auth_uri)
85
+ @captcha_required = args[:captcha_required] if args.key?(:captcha_required)
86
+ @for_existing_provider = args[:for_existing_provider] if args.key?(:for_existing_provider)
87
+ @kind = args[:kind] if args.key?(:kind)
88
+ @provider_id = args[:provider_id] if args.key?(:provider_id)
89
+ @registered = args[:registered] if args.key?(:registered)
90
+ @session_id = args[:session_id] if args.key?(:session_id)
91
+ @signin_methods = args[:signin_methods] if args.key?(:signin_methods)
92
+ end
93
+ end
94
+
95
+ # Respone of deleting account.
96
+ class DeleteAccountResponse
97
+ include Google::Apis::Core::Hashable
98
+
99
+ # The fixed string "identitytoolkit#DeleteAccountResponse".
100
+ # Corresponds to the JSON property `kind`
101
+ # @return [String]
102
+ attr_accessor :kind
103
+
104
+ def initialize(**args)
105
+ update!(**args)
106
+ end
107
+
108
+ # Update properties of this object
109
+ def update!(**args)
110
+ @kind = args[:kind] if args.key?(:kind)
111
+ end
112
+ end
113
+
114
+ # Response of downloading accounts in batch.
115
+ class DownloadAccountResponse
116
+ include Google::Apis::Core::Hashable
117
+
118
+ # The fixed string "identitytoolkit#DownloadAccountResponse".
119
+ # Corresponds to the JSON property `kind`
120
+ # @return [String]
121
+ attr_accessor :kind
122
+
123
+ # The next page token. To be used in a subsequent request to return the next
124
+ # page of results.
125
+ # Corresponds to the JSON property `nextPageToken`
126
+ # @return [String]
127
+ attr_accessor :next_page_token
128
+
129
+ # The user accounts data.
130
+ # Corresponds to the JSON property `users`
131
+ # @return [Array<Google::Apis::IdentitytoolkitV3::UserInfo>]
132
+ attr_accessor :users
133
+
134
+ def initialize(**args)
135
+ update!(**args)
136
+ end
137
+
138
+ # Update properties of this object
139
+ def update!(**args)
140
+ @kind = args[:kind] if args.key?(:kind)
141
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
142
+ @users = args[:users] if args.key?(:users)
143
+ end
144
+ end
145
+
146
+ # Response of email signIn.
147
+ class EmailLinkSigninResponse
148
+ include Google::Apis::Core::Hashable
149
+
150
+ # The user's email.
151
+ # Corresponds to the JSON property `email`
152
+ # @return [String]
153
+ attr_accessor :email
154
+
155
+ # Expiration time of STS id token in seconds.
156
+ # Corresponds to the JSON property `expiresIn`
157
+ # @return [Fixnum]
158
+ attr_accessor :expires_in
159
+
160
+ # The STS id token to login the newly signed in user.
161
+ # Corresponds to the JSON property `idToken`
162
+ # @return [String]
163
+ attr_accessor :id_token
164
+
165
+ # Whether the user is new.
166
+ # Corresponds to the JSON property `isNewUser`
167
+ # @return [Boolean]
168
+ attr_accessor :is_new_user
169
+ alias_method :is_new_user?, :is_new_user
170
+
171
+ # The fixed string "identitytoolkit#EmailLinkSigninResponse".
172
+ # Corresponds to the JSON property `kind`
173
+ # @return [String]
174
+ attr_accessor :kind
175
+
176
+ # The RP local ID of the user.
177
+ # Corresponds to the JSON property `localId`
178
+ # @return [String]
179
+ attr_accessor :local_id
180
+
181
+ # The refresh token for the signed in user.
182
+ # Corresponds to the JSON property `refreshToken`
183
+ # @return [String]
184
+ attr_accessor :refresh_token
185
+
186
+ def initialize(**args)
187
+ update!(**args)
188
+ end
189
+
190
+ # Update properties of this object
191
+ def update!(**args)
192
+ @email = args[:email] if args.key?(:email)
193
+ @expires_in = args[:expires_in] if args.key?(:expires_in)
194
+ @id_token = args[:id_token] if args.key?(:id_token)
195
+ @is_new_user = args[:is_new_user] if args.key?(:is_new_user)
196
+ @kind = args[:kind] if args.key?(:kind)
197
+ @local_id = args[:local_id] if args.key?(:local_id)
198
+ @refresh_token = args[:refresh_token] if args.key?(:refresh_token)
199
+ end
200
+ end
201
+
202
+ # Template for an email template.
203
+ class EmailTemplate
204
+ include Google::Apis::Core::Hashable
205
+
206
+ # Email body.
207
+ # Corresponds to the JSON property `body`
208
+ # @return [String]
209
+ attr_accessor :body
210
+
211
+ # Email body format.
212
+ # Corresponds to the JSON property `format`
213
+ # @return [String]
214
+ attr_accessor :format
215
+
216
+ # From address of the email.
217
+ # Corresponds to the JSON property `from`
218
+ # @return [String]
219
+ attr_accessor :from
220
+
221
+ # From display name.
222
+ # Corresponds to the JSON property `fromDisplayName`
223
+ # @return [String]
224
+ attr_accessor :from_display_name
225
+
226
+ # Reply-to address.
227
+ # Corresponds to the JSON property `replyTo`
228
+ # @return [String]
229
+ attr_accessor :reply_to
230
+
231
+ # Subject of the email.
232
+ # Corresponds to the JSON property `subject`
233
+ # @return [String]
234
+ attr_accessor :subject
235
+
236
+ def initialize(**args)
237
+ update!(**args)
238
+ end
239
+
240
+ # Update properties of this object
241
+ def update!(**args)
242
+ @body = args[:body] if args.key?(:body)
243
+ @format = args[:format] if args.key?(:format)
244
+ @from = args[:from] if args.key?(:from)
245
+ @from_display_name = args[:from_display_name] if args.key?(:from_display_name)
246
+ @reply_to = args[:reply_to] if args.key?(:reply_to)
247
+ @subject = args[:subject] if args.key?(:subject)
248
+ end
249
+ end
250
+
251
+ # Response of getting account information.
252
+ class GetAccountInfoResponse
253
+ include Google::Apis::Core::Hashable
254
+
255
+ # The fixed string "identitytoolkit#GetAccountInfoResponse".
256
+ # Corresponds to the JSON property `kind`
257
+ # @return [String]
258
+ attr_accessor :kind
259
+
260
+ # The info of the users.
261
+ # Corresponds to the JSON property `users`
262
+ # @return [Array<Google::Apis::IdentitytoolkitV3::UserInfo>]
263
+ attr_accessor :users
264
+
265
+ def initialize(**args)
266
+ update!(**args)
267
+ end
268
+
269
+ # Update properties of this object
270
+ def update!(**args)
271
+ @kind = args[:kind] if args.key?(:kind)
272
+ @users = args[:users] if args.key?(:users)
273
+ end
274
+ end
275
+
276
+ # Response of getting a code for user confirmation (reset password, change email
277
+ # etc.).
278
+ class GetOobConfirmationCodeResponse
279
+ include Google::Apis::Core::Hashable
280
+
281
+ # The email address that the email is sent to.
282
+ # Corresponds to the JSON property `email`
283
+ # @return [String]
284
+ attr_accessor :email
285
+
286
+ # The fixed string "identitytoolkit#GetOobConfirmationCodeResponse".
287
+ # Corresponds to the JSON property `kind`
288
+ # @return [String]
289
+ attr_accessor :kind
290
+
291
+ # The code to be send to the user.
292
+ # Corresponds to the JSON property `oobCode`
293
+ # @return [String]
294
+ attr_accessor :oob_code
295
+
296
+ def initialize(**args)
297
+ update!(**args)
298
+ end
299
+
300
+ # Update properties of this object
301
+ def update!(**args)
302
+ @email = args[:email] if args.key?(:email)
303
+ @kind = args[:kind] if args.key?(:kind)
304
+ @oob_code = args[:oob_code] if args.key?(:oob_code)
305
+ end
306
+ end
307
+
308
+ # Response of getting recaptcha param.
309
+ class GetRecaptchaParamResponse
310
+ include Google::Apis::Core::Hashable
311
+
312
+ # The fixed string "identitytoolkit#GetRecaptchaParamResponse".
313
+ # Corresponds to the JSON property `kind`
314
+ # @return [String]
315
+ attr_accessor :kind
316
+
317
+ # Site key registered at recaptcha.
318
+ # Corresponds to the JSON property `recaptchaSiteKey`
319
+ # @return [String]
320
+ attr_accessor :recaptcha_site_key
321
+
322
+ # The stoken field for the recaptcha widget, used to request captcha challenge.
323
+ # Corresponds to the JSON property `recaptchaStoken`
324
+ # @return [String]
325
+ attr_accessor :recaptcha_stoken
326
+
327
+ def initialize(**args)
328
+ update!(**args)
329
+ end
330
+
331
+ # Update properties of this object
332
+ def update!(**args)
333
+ @kind = args[:kind] if args.key?(:kind)
334
+ @recaptcha_site_key = args[:recaptcha_site_key] if args.key?(:recaptcha_site_key)
335
+ @recaptcha_stoken = args[:recaptcha_stoken] if args.key?(:recaptcha_stoken)
336
+ end
337
+ end
338
+
339
+ # Request to get the IDP authentication URL.
340
+ class CreateAuthUriRequest
341
+ include Google::Apis::Core::Hashable
342
+
343
+ # The app ID of the mobile app, base64(CERT_SHA1):PACKAGE_NAME for Android,
344
+ # BUNDLE_ID for iOS.
345
+ # Corresponds to the JSON property `appId`
346
+ # @return [String]
347
+ attr_accessor :app_id
348
+
349
+ # Explicitly specify the auth flow type. Currently only support "CODE_FLOW" type.
350
+ # The field is only used for Google provider.
351
+ # Corresponds to the JSON property `authFlowType`
352
+ # @return [String]
353
+ attr_accessor :auth_flow_type
354
+
355
+ # The relying party OAuth client ID.
356
+ # Corresponds to the JSON property `clientId`
357
+ # @return [String]
358
+ attr_accessor :client_id
359
+
360
+ # The opaque value used by the client to maintain context info between the
361
+ # authentication request and the IDP callback.
362
+ # Corresponds to the JSON property `context`
363
+ # @return [String]
364
+ attr_accessor :context
365
+
366
+ # The URI to which the IDP redirects the user after the federated login flow.
367
+ # Corresponds to the JSON property `continueUri`
368
+ # @return [String]
369
+ attr_accessor :continue_uri
370
+
371
+ # The query parameter that client can customize by themselves in auth url. The
372
+ # following parameters are reserved for server so that they cannot be customized
373
+ # by clients: client_id, response_type, scope, redirect_uri, state, oauth_token.
374
+ # Corresponds to the JSON property `customParameter`
375
+ # @return [Hash<String,String>]
376
+ attr_accessor :custom_parameter
377
+
378
+ # The hosted domain to restrict sign-in to accounts at that domain for Google
379
+ # Apps hosted accounts.
380
+ # Corresponds to the JSON property `hostedDomain`
381
+ # @return [String]
382
+ attr_accessor :hosted_domain
383
+
384
+ # The email or federated ID of the user.
385
+ # Corresponds to the JSON property `identifier`
386
+ # @return [String]
387
+ attr_accessor :identifier
388
+
389
+ # The developer's consumer key for OpenId OAuth Extension
390
+ # Corresponds to the JSON property `oauthConsumerKey`
391
+ # @return [String]
392
+ attr_accessor :oauth_consumer_key
393
+
394
+ # Additional oauth scopes, beyond the basid user profile, that the user would be
395
+ # prompted to grant
396
+ # Corresponds to the JSON property `oauthScope`
397
+ # @return [String]
398
+ attr_accessor :oauth_scope
399
+
400
+ # Optional realm for OpenID protocol. The sub string "scheme://domain:port" of
401
+ # the param "continueUri" is used if this is not set.
402
+ # Corresponds to the JSON property `openidRealm`
403
+ # @return [String]
404
+ attr_accessor :openid_realm
405
+
406
+ # The native app package for OTA installation.
407
+ # Corresponds to the JSON property `otaApp`
408
+ # @return [String]
409
+ attr_accessor :ota_app
410
+
411
+ # The IdP ID. For white listed IdPs it's a short domain name e.g. google.com,
412
+ # aol.com, live.net and yahoo.com. For other OpenID IdPs it's the OP identifier.
413
+ # Corresponds to the JSON property `providerId`
414
+ # @return [String]
415
+ attr_accessor :provider_id
416
+
417
+ # The session_id passed by client.
418
+ # Corresponds to the JSON property `sessionId`
419
+ # @return [String]
420
+ attr_accessor :session_id
421
+
422
+ # For multi-tenant use cases, in order to construct sign-in URL with the correct
423
+ # IDP parameters, Firebear needs to know which Tenant to retrieve IDP configs
424
+ # from.
425
+ # Corresponds to the JSON property `tenantId`
426
+ # @return [String]
427
+ attr_accessor :tenant_id
428
+
429
+ # Tenant project number to be used for idp discovery.
430
+ # Corresponds to the JSON property `tenantProjectNumber`
431
+ # @return [Fixnum]
432
+ attr_accessor :tenant_project_number
433
+
434
+ def initialize(**args)
435
+ update!(**args)
436
+ end
437
+
438
+ # Update properties of this object
439
+ def update!(**args)
440
+ @app_id = args[:app_id] if args.key?(:app_id)
441
+ @auth_flow_type = args[:auth_flow_type] if args.key?(:auth_flow_type)
442
+ @client_id = args[:client_id] if args.key?(:client_id)
443
+ @context = args[:context] if args.key?(:context)
444
+ @continue_uri = args[:continue_uri] if args.key?(:continue_uri)
445
+ @custom_parameter = args[:custom_parameter] if args.key?(:custom_parameter)
446
+ @hosted_domain = args[:hosted_domain] if args.key?(:hosted_domain)
447
+ @identifier = args[:identifier] if args.key?(:identifier)
448
+ @oauth_consumer_key = args[:oauth_consumer_key] if args.key?(:oauth_consumer_key)
449
+ @oauth_scope = args[:oauth_scope] if args.key?(:oauth_scope)
450
+ @openid_realm = args[:openid_realm] if args.key?(:openid_realm)
451
+ @ota_app = args[:ota_app] if args.key?(:ota_app)
452
+ @provider_id = args[:provider_id] if args.key?(:provider_id)
453
+ @session_id = args[:session_id] if args.key?(:session_id)
454
+ @tenant_id = args[:tenant_id] if args.key?(:tenant_id)
455
+ @tenant_project_number = args[:tenant_project_number] if args.key?(:tenant_project_number)
456
+ end
457
+ end
458
+
459
+ # Request to delete account.
460
+ class DeleteAccountRequest
461
+ include Google::Apis::Core::Hashable
462
+
463
+ # GCP project number of the requesting delegated app. Currently only intended
464
+ # for Firebase V1 migration.
465
+ # Corresponds to the JSON property `delegatedProjectNumber`
466
+ # @return [Fixnum]
467
+ attr_accessor :delegated_project_number
468
+
469
+ # The GITKit token or STS id token of the authenticated user.
470
+ # Corresponds to the JSON property `idToken`
471
+ # @return [String]
472
+ attr_accessor :id_token
473
+
474
+ # The local ID of the user.
475
+ # Corresponds to the JSON property `localId`
476
+ # @return [String]
477
+ attr_accessor :local_id
478
+
479
+ def initialize(**args)
480
+ update!(**args)
481
+ end
482
+
483
+ # Update properties of this object
484
+ def update!(**args)
485
+ @delegated_project_number = args[:delegated_project_number] if args.key?(:delegated_project_number)
486
+ @id_token = args[:id_token] if args.key?(:id_token)
487
+ @local_id = args[:local_id] if args.key?(:local_id)
488
+ end
489
+ end
490
+
491
+ # Request to download user account in batch.
492
+ class DownloadAccountRequest
493
+ include Google::Apis::Core::Hashable
494
+
495
+ # GCP project number of the requesting delegated app. Currently only intended
496
+ # for Firebase V1 migration.
497
+ # Corresponds to the JSON property `delegatedProjectNumber`
498
+ # @return [Fixnum]
499
+ attr_accessor :delegated_project_number
500
+
501
+ # The max number of results to return in the response.
502
+ # Corresponds to the JSON property `maxResults`
503
+ # @return [Fixnum]
504
+ attr_accessor :max_results
505
+
506
+ # The token for the next page. This should be taken from the previous response.
507
+ # Corresponds to the JSON property `nextPageToken`
508
+ # @return [String]
509
+ attr_accessor :next_page_token
510
+
511
+ # Specify which project (field value is actually project id) to operate. Only
512
+ # used when provided credential.
513
+ # Corresponds to the JSON property `targetProjectId`
514
+ # @return [String]
515
+ attr_accessor :target_project_id
516
+
517
+ def initialize(**args)
518
+ update!(**args)
519
+ end
520
+
521
+ # Update properties of this object
522
+ def update!(**args)
523
+ @delegated_project_number = args[:delegated_project_number] if args.key?(:delegated_project_number)
524
+ @max_results = args[:max_results] if args.key?(:max_results)
525
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
526
+ @target_project_id = args[:target_project_id] if args.key?(:target_project_id)
527
+ end
528
+ end
529
+
530
+ # Request to sign in with email.
531
+ class IdentitytoolkitRelyingpartyEmailLinkSigninRequest
532
+ include Google::Apis::Core::Hashable
533
+
534
+ # The email address of the user.
535
+ # Corresponds to the JSON property `email`
536
+ # @return [String]
537
+ attr_accessor :email
538
+
539
+ # Token for linking flow.
540
+ # Corresponds to the JSON property `idToken`
541
+ # @return [String]
542
+ attr_accessor :id_token
543
+
544
+ # The confirmation code.
545
+ # Corresponds to the JSON property `oobCode`
546
+ # @return [String]
547
+ attr_accessor :oob_code
548
+
549
+ def initialize(**args)
550
+ update!(**args)
551
+ end
552
+
553
+ # Update properties of this object
554
+ def update!(**args)
555
+ @email = args[:email] if args.key?(:email)
556
+ @id_token = args[:id_token] if args.key?(:id_token)
557
+ @oob_code = args[:oob_code] if args.key?(:oob_code)
558
+ end
559
+ end
560
+
561
+ # Request to get the account information.
562
+ class GetAccountInfoRequest
563
+ include Google::Apis::Core::Hashable
564
+
565
+ # GCP project number of the requesting delegated app. Currently only intended
566
+ # for Firebase V1 migration.
567
+ # Corresponds to the JSON property `delegatedProjectNumber`
568
+ # @return [Fixnum]
569
+ attr_accessor :delegated_project_number
570
+
571
+ # The list of emails of the users to inquiry.
572
+ # Corresponds to the JSON property `email`
573
+ # @return [Array<String>]
574
+ attr_accessor :email
575
+
576
+ # The GITKit token of the authenticated user.
577
+ # Corresponds to the JSON property `idToken`
578
+ # @return [String]
579
+ attr_accessor :id_token
580
+
581
+ # The list of local ID's of the users to inquiry.
582
+ # Corresponds to the JSON property `localId`
583
+ # @return [Array<String>]
584
+ attr_accessor :local_id
585
+
586
+ # Privileged caller can query users by specified phone number.
587
+ # Corresponds to the JSON property `phoneNumber`
588
+ # @return [Array<String>]
589
+ attr_accessor :phone_number
590
+
591
+ def initialize(**args)
592
+ update!(**args)
593
+ end
594
+
595
+ # Update properties of this object
596
+ def update!(**args)
597
+ @delegated_project_number = args[:delegated_project_number] if args.key?(:delegated_project_number)
598
+ @email = args[:email] if args.key?(:email)
599
+ @id_token = args[:id_token] if args.key?(:id_token)
600
+ @local_id = args[:local_id] if args.key?(:local_id)
601
+ @phone_number = args[:phone_number] if args.key?(:phone_number)
602
+ end
603
+ end
604
+
605
+ # Response of getting the project configuration.
606
+ class GetProjectConfigResponse
607
+ include Google::Apis::Core::Hashable
608
+
609
+ # Whether to allow password user sign in or sign up.
610
+ # Corresponds to the JSON property `allowPasswordUser`
611
+ # @return [Boolean]
612
+ attr_accessor :allow_password_user
613
+ alias_method :allow_password_user?, :allow_password_user
614
+
615
+ # Browser API key, needed when making http request to Apiary.
616
+ # Corresponds to the JSON property `apiKey`
617
+ # @return [String]
618
+ attr_accessor :api_key
619
+
620
+ # Authorized domains.
621
+ # Corresponds to the JSON property `authorizedDomains`
622
+ # @return [Array<String>]
623
+ attr_accessor :authorized_domains
624
+
625
+ # Template for an email template.
626
+ # Corresponds to the JSON property `changeEmailTemplate`
627
+ # @return [Google::Apis::IdentitytoolkitV3::EmailTemplate]
628
+ attr_accessor :change_email_template
629
+
630
+ #
631
+ # Corresponds to the JSON property `dynamicLinksDomain`
632
+ # @return [String]
633
+ attr_accessor :dynamic_links_domain
634
+
635
+ # Whether anonymous user is enabled.
636
+ # Corresponds to the JSON property `enableAnonymousUser`
637
+ # @return [Boolean]
638
+ attr_accessor :enable_anonymous_user
639
+ alias_method :enable_anonymous_user?, :enable_anonymous_user
640
+
641
+ # OAuth2 provider configuration.
642
+ # Corresponds to the JSON property `idpConfig`
643
+ # @return [Array<Google::Apis::IdentitytoolkitV3::IdpConfig>]
644
+ attr_accessor :idp_config
645
+
646
+ # Template for an email template.
647
+ # Corresponds to the JSON property `legacyResetPasswordTemplate`
648
+ # @return [Google::Apis::IdentitytoolkitV3::EmailTemplate]
649
+ attr_accessor :legacy_reset_password_template
650
+
651
+ # Project ID of the relying party.
652
+ # Corresponds to the JSON property `projectId`
653
+ # @return [String]
654
+ attr_accessor :project_id
655
+
656
+ # Template for an email template.
657
+ # Corresponds to the JSON property `resetPasswordTemplate`
658
+ # @return [Google::Apis::IdentitytoolkitV3::EmailTemplate]
659
+ attr_accessor :reset_password_template
660
+
661
+ # Whether to use email sending provided by Firebear.
662
+ # Corresponds to the JSON property `useEmailSending`
663
+ # @return [Boolean]
664
+ attr_accessor :use_email_sending
665
+ alias_method :use_email_sending?, :use_email_sending
666
+
667
+ # Template for an email template.
668
+ # Corresponds to the JSON property `verifyEmailTemplate`
669
+ # @return [Google::Apis::IdentitytoolkitV3::EmailTemplate]
670
+ attr_accessor :verify_email_template
671
+
672
+ def initialize(**args)
673
+ update!(**args)
674
+ end
675
+
676
+ # Update properties of this object
677
+ def update!(**args)
678
+ @allow_password_user = args[:allow_password_user] if args.key?(:allow_password_user)
679
+ @api_key = args[:api_key] if args.key?(:api_key)
680
+ @authorized_domains = args[:authorized_domains] if args.key?(:authorized_domains)
681
+ @change_email_template = args[:change_email_template] if args.key?(:change_email_template)
682
+ @dynamic_links_domain = args[:dynamic_links_domain] if args.key?(:dynamic_links_domain)
683
+ @enable_anonymous_user = args[:enable_anonymous_user] if args.key?(:enable_anonymous_user)
684
+ @idp_config = args[:idp_config] if args.key?(:idp_config)
685
+ @legacy_reset_password_template = args[:legacy_reset_password_template] if args.key?(:legacy_reset_password_template)
686
+ @project_id = args[:project_id] if args.key?(:project_id)
687
+ @reset_password_template = args[:reset_password_template] if args.key?(:reset_password_template)
688
+ @use_email_sending = args[:use_email_sending] if args.key?(:use_email_sending)
689
+ @verify_email_template = args[:verify_email_template] if args.key?(:verify_email_template)
690
+ end
691
+ end
692
+
693
+ # Request to reset the password.
694
+ class ResetPasswordRequest
695
+ include Google::Apis::Core::Hashable
696
+
697
+ # The email address of the user.
698
+ # Corresponds to the JSON property `email`
699
+ # @return [String]
700
+ attr_accessor :email
701
+
702
+ # The new password inputted by the user.
703
+ # Corresponds to the JSON property `newPassword`
704
+ # @return [String]
705
+ attr_accessor :new_password
706
+
707
+ # The old password inputted by the user.
708
+ # Corresponds to the JSON property `oldPassword`
709
+ # @return [String]
710
+ attr_accessor :old_password
711
+
712
+ # The confirmation code.
713
+ # Corresponds to the JSON property `oobCode`
714
+ # @return [String]
715
+ attr_accessor :oob_code
716
+
717
+ def initialize(**args)
718
+ update!(**args)
719
+ end
720
+
721
+ # Update properties of this object
722
+ def update!(**args)
723
+ @email = args[:email] if args.key?(:email)
724
+ @new_password = args[:new_password] if args.key?(:new_password)
725
+ @old_password = args[:old_password] if args.key?(:old_password)
726
+ @oob_code = args[:oob_code] if args.key?(:oob_code)
727
+ end
728
+ end
729
+
730
+ # Request for Identitytoolkit-SendVerificationCode
731
+ class IdentitytoolkitRelyingpartySendVerificationCodeRequest
732
+ include Google::Apis::Core::Hashable
733
+
734
+ # Receipt of successful app token validation with APNS.
735
+ # Corresponds to the JSON property `iosReceipt`
736
+ # @return [String]
737
+ attr_accessor :ios_receipt
738
+
739
+ # Secret delivered to iOS app via APNS.
740
+ # Corresponds to the JSON property `iosSecret`
741
+ # @return [String]
742
+ attr_accessor :ios_secret
743
+
744
+ # The phone number to send the verification code to in E.164 format.
745
+ # Corresponds to the JSON property `phoneNumber`
746
+ # @return [String]
747
+ attr_accessor :phone_number
748
+
749
+ # Recaptcha solution.
750
+ # Corresponds to the JSON property `recaptchaToken`
751
+ # @return [String]
752
+ attr_accessor :recaptcha_token
753
+
754
+ def initialize(**args)
755
+ update!(**args)
756
+ end
757
+
758
+ # Update properties of this object
759
+ def update!(**args)
760
+ @ios_receipt = args[:ios_receipt] if args.key?(:ios_receipt)
761
+ @ios_secret = args[:ios_secret] if args.key?(:ios_secret)
762
+ @phone_number = args[:phone_number] if args.key?(:phone_number)
763
+ @recaptcha_token = args[:recaptcha_token] if args.key?(:recaptcha_token)
764
+ end
765
+ end
766
+
767
+ # Response for Identitytoolkit-SendVerificationCode
768
+ class IdentitytoolkitRelyingpartySendVerificationCodeResponse
769
+ include Google::Apis::Core::Hashable
770
+
771
+ # Encrypted session information
772
+ # Corresponds to the JSON property `sessionInfo`
773
+ # @return [String]
774
+ attr_accessor :session_info
775
+
776
+ def initialize(**args)
777
+ update!(**args)
778
+ end
779
+
780
+ # Update properties of this object
781
+ def update!(**args)
782
+ @session_info = args[:session_info] if args.key?(:session_info)
783
+ end
784
+ end
785
+
786
+ # Request to set the account information.
787
+ class SetAccountInfoRequest
788
+ include Google::Apis::Core::Hashable
789
+
790
+ # The captcha challenge.
791
+ # Corresponds to the JSON property `captchaChallenge`
792
+ # @return [String]
793
+ attr_accessor :captcha_challenge
794
+
795
+ # Response to the captcha.
796
+ # Corresponds to the JSON property `captchaResponse`
797
+ # @return [String]
798
+ attr_accessor :captcha_response
799
+
800
+ # The timestamp when the account is created.
801
+ # Corresponds to the JSON property `createdAt`
802
+ # @return [Fixnum]
803
+ attr_accessor :created_at
804
+
805
+ # The custom attributes to be set in the user's id token.
806
+ # Corresponds to the JSON property `customAttributes`
807
+ # @return [String]
808
+ attr_accessor :custom_attributes
809
+
810
+ # GCP project number of the requesting delegated app. Currently only intended
811
+ # for Firebase V1 migration.
812
+ # Corresponds to the JSON property `delegatedProjectNumber`
813
+ # @return [Fixnum]
814
+ attr_accessor :delegated_project_number
815
+
816
+ # The attributes users request to delete.
817
+ # Corresponds to the JSON property `deleteAttribute`
818
+ # @return [Array<String>]
819
+ attr_accessor :delete_attribute
820
+
821
+ # The IDPs the user request to delete.
822
+ # Corresponds to the JSON property `deleteProvider`
823
+ # @return [Array<String>]
824
+ attr_accessor :delete_provider
825
+
826
+ # Whether to disable the user.
827
+ # Corresponds to the JSON property `disableUser`
828
+ # @return [Boolean]
829
+ attr_accessor :disable_user
830
+ alias_method :disable_user?, :disable_user
831
+
832
+ # The name of the user.
833
+ # Corresponds to the JSON property `displayName`
834
+ # @return [String]
835
+ attr_accessor :display_name
836
+
837
+ # The email of the user.
838
+ # Corresponds to the JSON property `email`
839
+ # @return [String]
840
+ attr_accessor :email
841
+
842
+ # Mark the email as verified or not.
843
+ # Corresponds to the JSON property `emailVerified`
844
+ # @return [Boolean]
845
+ attr_accessor :email_verified
846
+ alias_method :email_verified?, :email_verified
847
+
848
+ # The GITKit token of the authenticated user.
849
+ # Corresponds to the JSON property `idToken`
850
+ # @return [String]
851
+ attr_accessor :id_token
852
+
853
+ # Instance id token of the app.
854
+ # Corresponds to the JSON property `instanceId`
855
+ # @return [String]
856
+ attr_accessor :instance_id
857
+
858
+ # Last login timestamp.
859
+ # Corresponds to the JSON property `lastLoginAt`
860
+ # @return [Fixnum]
861
+ attr_accessor :last_login_at
862
+
863
+ # The local ID of the user.
864
+ # Corresponds to the JSON property `localId`
865
+ # @return [String]
866
+ attr_accessor :local_id
867
+
868
+ # The out-of-band code of the change email request.
869
+ # Corresponds to the JSON property `oobCode`
870
+ # @return [String]
871
+ attr_accessor :oob_code
872
+
873
+ # The new password of the user.
874
+ # Corresponds to the JSON property `password`
875
+ # @return [String]
876
+ attr_accessor :password
877
+
878
+ # Privileged caller can update user with specified phone number.
879
+ # Corresponds to the JSON property `phoneNumber`
880
+ # @return [String]
881
+ attr_accessor :phone_number
882
+
883
+ # The photo url of the user.
884
+ # Corresponds to the JSON property `photoUrl`
885
+ # @return [String]
886
+ attr_accessor :photo_url
887
+
888
+ # The associated IDPs of the user.
889
+ # Corresponds to the JSON property `provider`
890
+ # @return [Array<String>]
891
+ attr_accessor :provider
892
+
893
+ # Whether return sts id token and refresh token instead of gitkit token.
894
+ # Corresponds to the JSON property `returnSecureToken`
895
+ # @return [Boolean]
896
+ attr_accessor :return_secure_token
897
+ alias_method :return_secure_token?, :return_secure_token
898
+
899
+ # Mark the user to upgrade to federated login.
900
+ # Corresponds to the JSON property `upgradeToFederatedLogin`
901
+ # @return [Boolean]
902
+ attr_accessor :upgrade_to_federated_login
903
+ alias_method :upgrade_to_federated_login?, :upgrade_to_federated_login
904
+
905
+ # Timestamp in seconds for valid login token.
906
+ # Corresponds to the JSON property `validSince`
907
+ # @return [Fixnum]
908
+ attr_accessor :valid_since
909
+
910
+ def initialize(**args)
911
+ update!(**args)
912
+ end
913
+
914
+ # Update properties of this object
915
+ def update!(**args)
916
+ @captcha_challenge = args[:captcha_challenge] if args.key?(:captcha_challenge)
917
+ @captcha_response = args[:captcha_response] if args.key?(:captcha_response)
918
+ @created_at = args[:created_at] if args.key?(:created_at)
919
+ @custom_attributes = args[:custom_attributes] if args.key?(:custom_attributes)
920
+ @delegated_project_number = args[:delegated_project_number] if args.key?(:delegated_project_number)
921
+ @delete_attribute = args[:delete_attribute] if args.key?(:delete_attribute)
922
+ @delete_provider = args[:delete_provider] if args.key?(:delete_provider)
923
+ @disable_user = args[:disable_user] if args.key?(:disable_user)
924
+ @display_name = args[:display_name] if args.key?(:display_name)
925
+ @email = args[:email] if args.key?(:email)
926
+ @email_verified = args[:email_verified] if args.key?(:email_verified)
927
+ @id_token = args[:id_token] if args.key?(:id_token)
928
+ @instance_id = args[:instance_id] if args.key?(:instance_id)
929
+ @last_login_at = args[:last_login_at] if args.key?(:last_login_at)
930
+ @local_id = args[:local_id] if args.key?(:local_id)
931
+ @oob_code = args[:oob_code] if args.key?(:oob_code)
932
+ @password = args[:password] if args.key?(:password)
933
+ @phone_number = args[:phone_number] if args.key?(:phone_number)
934
+ @photo_url = args[:photo_url] if args.key?(:photo_url)
935
+ @provider = args[:provider] if args.key?(:provider)
936
+ @return_secure_token = args[:return_secure_token] if args.key?(:return_secure_token)
937
+ @upgrade_to_federated_login = args[:upgrade_to_federated_login] if args.key?(:upgrade_to_federated_login)
938
+ @valid_since = args[:valid_since] if args.key?(:valid_since)
939
+ end
940
+ end
941
+
942
+ # Request to set the project configuration.
943
+ class SetProjectConfigRequest
944
+ include Google::Apis::Core::Hashable
945
+
946
+ # Whether to allow password user sign in or sign up.
947
+ # Corresponds to the JSON property `allowPasswordUser`
948
+ # @return [Boolean]
949
+ attr_accessor :allow_password_user
950
+ alias_method :allow_password_user?, :allow_password_user
951
+
952
+ # Browser API key, needed when making http request to Apiary.
953
+ # Corresponds to the JSON property `apiKey`
954
+ # @return [String]
955
+ attr_accessor :api_key
956
+
957
+ # Authorized domains for widget redirect.
958
+ # Corresponds to the JSON property `authorizedDomains`
959
+ # @return [Array<String>]
960
+ attr_accessor :authorized_domains
961
+
962
+ # Template for an email template.
963
+ # Corresponds to the JSON property `changeEmailTemplate`
964
+ # @return [Google::Apis::IdentitytoolkitV3::EmailTemplate]
965
+ attr_accessor :change_email_template
966
+
967
+ # GCP project number of the requesting delegated app. Currently only intended
968
+ # for Firebase V1 migration.
969
+ # Corresponds to the JSON property `delegatedProjectNumber`
970
+ # @return [Fixnum]
971
+ attr_accessor :delegated_project_number
972
+
973
+ # Whether to enable anonymous user.
974
+ # Corresponds to the JSON property `enableAnonymousUser`
975
+ # @return [Boolean]
976
+ attr_accessor :enable_anonymous_user
977
+ alias_method :enable_anonymous_user?, :enable_anonymous_user
978
+
979
+ # Oauth2 provider configuration.
980
+ # Corresponds to the JSON property `idpConfig`
981
+ # @return [Array<Google::Apis::IdentitytoolkitV3::IdpConfig>]
982
+ attr_accessor :idp_config
983
+
984
+ # Template for an email template.
985
+ # Corresponds to the JSON property `legacyResetPasswordTemplate`
986
+ # @return [Google::Apis::IdentitytoolkitV3::EmailTemplate]
987
+ attr_accessor :legacy_reset_password_template
988
+
989
+ # Template for an email template.
990
+ # Corresponds to the JSON property `resetPasswordTemplate`
991
+ # @return [Google::Apis::IdentitytoolkitV3::EmailTemplate]
992
+ attr_accessor :reset_password_template
993
+
994
+ # Whether to use email sending provided by Firebear.
995
+ # Corresponds to the JSON property `useEmailSending`
996
+ # @return [Boolean]
997
+ attr_accessor :use_email_sending
998
+ alias_method :use_email_sending?, :use_email_sending
999
+
1000
+ # Template for an email template.
1001
+ # Corresponds to the JSON property `verifyEmailTemplate`
1002
+ # @return [Google::Apis::IdentitytoolkitV3::EmailTemplate]
1003
+ attr_accessor :verify_email_template
1004
+
1005
+ def initialize(**args)
1006
+ update!(**args)
1007
+ end
1008
+
1009
+ # Update properties of this object
1010
+ def update!(**args)
1011
+ @allow_password_user = args[:allow_password_user] if args.key?(:allow_password_user)
1012
+ @api_key = args[:api_key] if args.key?(:api_key)
1013
+ @authorized_domains = args[:authorized_domains] if args.key?(:authorized_domains)
1014
+ @change_email_template = args[:change_email_template] if args.key?(:change_email_template)
1015
+ @delegated_project_number = args[:delegated_project_number] if args.key?(:delegated_project_number)
1016
+ @enable_anonymous_user = args[:enable_anonymous_user] if args.key?(:enable_anonymous_user)
1017
+ @idp_config = args[:idp_config] if args.key?(:idp_config)
1018
+ @legacy_reset_password_template = args[:legacy_reset_password_template] if args.key?(:legacy_reset_password_template)
1019
+ @reset_password_template = args[:reset_password_template] if args.key?(:reset_password_template)
1020
+ @use_email_sending = args[:use_email_sending] if args.key?(:use_email_sending)
1021
+ @verify_email_template = args[:verify_email_template] if args.key?(:verify_email_template)
1022
+ end
1023
+ end
1024
+
1025
+ # Response of setting the project configuration.
1026
+ class IdentitytoolkitRelyingpartySetProjectConfigResponse
1027
+ include Google::Apis::Core::Hashable
1028
+
1029
+ # Project ID of the relying party.
1030
+ # Corresponds to the JSON property `projectId`
1031
+ # @return [String]
1032
+ attr_accessor :project_id
1033
+
1034
+ def initialize(**args)
1035
+ update!(**args)
1036
+ end
1037
+
1038
+ # Update properties of this object
1039
+ def update!(**args)
1040
+ @project_id = args[:project_id] if args.key?(:project_id)
1041
+ end
1042
+ end
1043
+
1044
+ # Request to sign out user.
1045
+ class SignOutUserRequest
1046
+ include Google::Apis::Core::Hashable
1047
+
1048
+ # Instance id token of the app.
1049
+ # Corresponds to the JSON property `instanceId`
1050
+ # @return [String]
1051
+ attr_accessor :instance_id
1052
+
1053
+ # The local ID of the user.
1054
+ # Corresponds to the JSON property `localId`
1055
+ # @return [String]
1056
+ attr_accessor :local_id
1057
+
1058
+ def initialize(**args)
1059
+ update!(**args)
1060
+ end
1061
+
1062
+ # Update properties of this object
1063
+ def update!(**args)
1064
+ @instance_id = args[:instance_id] if args.key?(:instance_id)
1065
+ @local_id = args[:local_id] if args.key?(:local_id)
1066
+ end
1067
+ end
1068
+
1069
+ # Response of signing out user.
1070
+ class SignOutUserResponse
1071
+ include Google::Apis::Core::Hashable
1072
+
1073
+ # The local ID of the user.
1074
+ # Corresponds to the JSON property `localId`
1075
+ # @return [String]
1076
+ attr_accessor :local_id
1077
+
1078
+ def initialize(**args)
1079
+ update!(**args)
1080
+ end
1081
+
1082
+ # Update properties of this object
1083
+ def update!(**args)
1084
+ @local_id = args[:local_id] if args.key?(:local_id)
1085
+ end
1086
+ end
1087
+
1088
+ # Request to signup new user, create anonymous user or anonymous user reauth.
1089
+ class SignupNewUserRequest
1090
+ include Google::Apis::Core::Hashable
1091
+
1092
+ # The captcha challenge.
1093
+ # Corresponds to the JSON property `captchaChallenge`
1094
+ # @return [String]
1095
+ attr_accessor :captcha_challenge
1096
+
1097
+ # Response to the captcha.
1098
+ # Corresponds to the JSON property `captchaResponse`
1099
+ # @return [String]
1100
+ attr_accessor :captcha_response
1101
+
1102
+ # Whether to disable the user. Only can be used by service account.
1103
+ # Corresponds to the JSON property `disabled`
1104
+ # @return [Boolean]
1105
+ attr_accessor :disabled
1106
+ alias_method :disabled?, :disabled
1107
+
1108
+ # The name of the user.
1109
+ # Corresponds to the JSON property `displayName`
1110
+ # @return [String]
1111
+ attr_accessor :display_name
1112
+
1113
+ # The email of the user.
1114
+ # Corresponds to the JSON property `email`
1115
+ # @return [String]
1116
+ attr_accessor :email
1117
+
1118
+ # Mark the email as verified or not. Only can be used by service account.
1119
+ # Corresponds to the JSON property `emailVerified`
1120
+ # @return [Boolean]
1121
+ attr_accessor :email_verified
1122
+ alias_method :email_verified?, :email_verified
1123
+
1124
+ # The GITKit token of the authenticated user.
1125
+ # Corresponds to the JSON property `idToken`
1126
+ # @return [String]
1127
+ attr_accessor :id_token
1128
+
1129
+ # Instance id token of the app.
1130
+ # Corresponds to the JSON property `instanceId`
1131
+ # @return [String]
1132
+ attr_accessor :instance_id
1133
+
1134
+ # Privileged caller can create user with specified user id.
1135
+ # Corresponds to the JSON property `localId`
1136
+ # @return [String]
1137
+ attr_accessor :local_id
1138
+
1139
+ # The new password of the user.
1140
+ # Corresponds to the JSON property `password`
1141
+ # @return [String]
1142
+ attr_accessor :password
1143
+
1144
+ # Privileged caller can create user with specified phone number.
1145
+ # Corresponds to the JSON property `phoneNumber`
1146
+ # @return [String]
1147
+ attr_accessor :phone_number
1148
+
1149
+ # The photo url of the user.
1150
+ # Corresponds to the JSON property `photoUrl`
1151
+ # @return [String]
1152
+ attr_accessor :photo_url
1153
+
1154
+ # For multi-tenant use cases, in order to construct sign-in URL with the correct
1155
+ # IDP parameters, Firebear needs to know which Tenant to retrieve IDP configs
1156
+ # from.
1157
+ # Corresponds to the JSON property `tenantId`
1158
+ # @return [String]
1159
+ attr_accessor :tenant_id
1160
+
1161
+ # Tenant project number to be used for idp discovery.
1162
+ # Corresponds to the JSON property `tenantProjectNumber`
1163
+ # @return [Fixnum]
1164
+ attr_accessor :tenant_project_number
1165
+
1166
+ def initialize(**args)
1167
+ update!(**args)
1168
+ end
1169
+
1170
+ # Update properties of this object
1171
+ def update!(**args)
1172
+ @captcha_challenge = args[:captcha_challenge] if args.key?(:captcha_challenge)
1173
+ @captcha_response = args[:captcha_response] if args.key?(:captcha_response)
1174
+ @disabled = args[:disabled] if args.key?(:disabled)
1175
+ @display_name = args[:display_name] if args.key?(:display_name)
1176
+ @email = args[:email] if args.key?(:email)
1177
+ @email_verified = args[:email_verified] if args.key?(:email_verified)
1178
+ @id_token = args[:id_token] if args.key?(:id_token)
1179
+ @instance_id = args[:instance_id] if args.key?(:instance_id)
1180
+ @local_id = args[:local_id] if args.key?(:local_id)
1181
+ @password = args[:password] if args.key?(:password)
1182
+ @phone_number = args[:phone_number] if args.key?(:phone_number)
1183
+ @photo_url = args[:photo_url] if args.key?(:photo_url)
1184
+ @tenant_id = args[:tenant_id] if args.key?(:tenant_id)
1185
+ @tenant_project_number = args[:tenant_project_number] if args.key?(:tenant_project_number)
1186
+ end
1187
+ end
1188
+
1189
+ # Request to upload user account in batch.
1190
+ class UploadAccountRequest
1191
+ include Google::Apis::Core::Hashable
1192
+
1193
+ # Whether allow overwrite existing account when user local_id exists.
1194
+ # Corresponds to the JSON property `allowOverwrite`
1195
+ # @return [Boolean]
1196
+ attr_accessor :allow_overwrite
1197
+ alias_method :allow_overwrite?, :allow_overwrite
1198
+
1199
+ #
1200
+ # Corresponds to the JSON property `blockSize`
1201
+ # @return [Fixnum]
1202
+ attr_accessor :block_size
1203
+
1204
+ # The following 4 fields are for standard scrypt algorithm.
1205
+ # Corresponds to the JSON property `cpuMemCost`
1206
+ # @return [Fixnum]
1207
+ attr_accessor :cpu_mem_cost
1208
+
1209
+ # GCP project number of the requesting delegated app. Currently only intended
1210
+ # for Firebase V1 migration.
1211
+ # Corresponds to the JSON property `delegatedProjectNumber`
1212
+ # @return [Fixnum]
1213
+ attr_accessor :delegated_project_number
1214
+
1215
+ #
1216
+ # Corresponds to the JSON property `dkLen`
1217
+ # @return [Fixnum]
1218
+ attr_accessor :dk_len
1219
+
1220
+ # The password hash algorithm.
1221
+ # Corresponds to the JSON property `hashAlgorithm`
1222
+ # @return [String]
1223
+ attr_accessor :hash_algorithm
1224
+
1225
+ # Memory cost for hash calculation. Used by scrypt similar algorithms.
1226
+ # Corresponds to the JSON property `memoryCost`
1227
+ # @return [Fixnum]
1228
+ attr_accessor :memory_cost
1229
+
1230
+ #
1231
+ # Corresponds to the JSON property `parallelization`
1232
+ # @return [Fixnum]
1233
+ attr_accessor :parallelization
1234
+
1235
+ # Rounds for hash calculation. Used by scrypt and similar algorithms.
1236
+ # Corresponds to the JSON property `rounds`
1237
+ # @return [Fixnum]
1238
+ attr_accessor :rounds
1239
+
1240
+ # The salt separator.
1241
+ # Corresponds to the JSON property `saltSeparator`
1242
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
1243
+ # @return [String]
1244
+ attr_accessor :salt_separator
1245
+
1246
+ # If true, backend will do sanity check(including duplicate email and federated
1247
+ # id) when uploading account.
1248
+ # Corresponds to the JSON property `sanityCheck`
1249
+ # @return [Boolean]
1250
+ attr_accessor :sanity_check
1251
+ alias_method :sanity_check?, :sanity_check
1252
+
1253
+ # The key for to hash the password.
1254
+ # Corresponds to the JSON property `signerKey`
1255
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
1256
+ # @return [String]
1257
+ attr_accessor :signer_key
1258
+
1259
+ # Specify which project (field value is actually project id) to operate. Only
1260
+ # used when provided credential.
1261
+ # Corresponds to the JSON property `targetProjectId`
1262
+ # @return [String]
1263
+ attr_accessor :target_project_id
1264
+
1265
+ # The account info to be stored.
1266
+ # Corresponds to the JSON property `users`
1267
+ # @return [Array<Google::Apis::IdentitytoolkitV3::UserInfo>]
1268
+ attr_accessor :users
1269
+
1270
+ def initialize(**args)
1271
+ update!(**args)
1272
+ end
1273
+
1274
+ # Update properties of this object
1275
+ def update!(**args)
1276
+ @allow_overwrite = args[:allow_overwrite] if args.key?(:allow_overwrite)
1277
+ @block_size = args[:block_size] if args.key?(:block_size)
1278
+ @cpu_mem_cost = args[:cpu_mem_cost] if args.key?(:cpu_mem_cost)
1279
+ @delegated_project_number = args[:delegated_project_number] if args.key?(:delegated_project_number)
1280
+ @dk_len = args[:dk_len] if args.key?(:dk_len)
1281
+ @hash_algorithm = args[:hash_algorithm] if args.key?(:hash_algorithm)
1282
+ @memory_cost = args[:memory_cost] if args.key?(:memory_cost)
1283
+ @parallelization = args[:parallelization] if args.key?(:parallelization)
1284
+ @rounds = args[:rounds] if args.key?(:rounds)
1285
+ @salt_separator = args[:salt_separator] if args.key?(:salt_separator)
1286
+ @sanity_check = args[:sanity_check] if args.key?(:sanity_check)
1287
+ @signer_key = args[:signer_key] if args.key?(:signer_key)
1288
+ @target_project_id = args[:target_project_id] if args.key?(:target_project_id)
1289
+ @users = args[:users] if args.key?(:users)
1290
+ end
1291
+ end
1292
+
1293
+ # Request to verify the IDP assertion.
1294
+ class VerifyAssertionRequest
1295
+ include Google::Apis::Core::Hashable
1296
+
1297
+ # When it's true, automatically creates a new account if the user doesn't exist.
1298
+ # When it's false, allows existing user to sign in normally and throws exception
1299
+ # if the user doesn't exist.
1300
+ # Corresponds to the JSON property `autoCreate`
1301
+ # @return [Boolean]
1302
+ attr_accessor :auto_create
1303
+ alias_method :auto_create?, :auto_create
1304
+
1305
+ # GCP project number of the requesting delegated app. Currently only intended
1306
+ # for Firebase V1 migration.
1307
+ # Corresponds to the JSON property `delegatedProjectNumber`
1308
+ # @return [Fixnum]
1309
+ attr_accessor :delegated_project_number
1310
+
1311
+ # The GITKit token of the authenticated user.
1312
+ # Corresponds to the JSON property `idToken`
1313
+ # @return [String]
1314
+ attr_accessor :id_token
1315
+
1316
+ # Instance id token of the app.
1317
+ # Corresponds to the JSON property `instanceId`
1318
+ # @return [String]
1319
+ attr_accessor :instance_id
1320
+
1321
+ # The GITKit token for the non-trusted IDP pending to be confirmed by the user.
1322
+ # Corresponds to the JSON property `pendingIdToken`
1323
+ # @return [String]
1324
+ attr_accessor :pending_id_token
1325
+
1326
+ # The post body if the request is a HTTP POST.
1327
+ # Corresponds to the JSON property `postBody`
1328
+ # @return [String]
1329
+ attr_accessor :post_body
1330
+
1331
+ # The URI to which the IDP redirects the user back. It may contain federated
1332
+ # login result params added by the IDP.
1333
+ # Corresponds to the JSON property `requestUri`
1334
+ # @return [String]
1335
+ attr_accessor :request_uri
1336
+
1337
+ # Whether return 200 and IDP credential rather than throw exception when
1338
+ # federated id is already linked.
1339
+ # Corresponds to the JSON property `returnIdpCredential`
1340
+ # @return [Boolean]
1341
+ attr_accessor :return_idp_credential
1342
+ alias_method :return_idp_credential?, :return_idp_credential
1343
+
1344
+ # Whether to return refresh tokens.
1345
+ # Corresponds to the JSON property `returnRefreshToken`
1346
+ # @return [Boolean]
1347
+ attr_accessor :return_refresh_token
1348
+ alias_method :return_refresh_token?, :return_refresh_token
1349
+
1350
+ # Whether return sts id token and refresh token instead of gitkit token.
1351
+ # Corresponds to the JSON property `returnSecureToken`
1352
+ # @return [Boolean]
1353
+ attr_accessor :return_secure_token
1354
+ alias_method :return_secure_token?, :return_secure_token
1355
+
1356
+ # Session ID, which should match the one in previous createAuthUri request.
1357
+ # Corresponds to the JSON property `sessionId`
1358
+ # @return [String]
1359
+ attr_accessor :session_id
1360
+
1361
+ # For multi-tenant use cases, in order to construct sign-in URL with the correct
1362
+ # IDP parameters, Firebear needs to know which Tenant to retrieve IDP configs
1363
+ # from.
1364
+ # Corresponds to the JSON property `tenantId`
1365
+ # @return [String]
1366
+ attr_accessor :tenant_id
1367
+
1368
+ # Tenant project number to be used for idp discovery.
1369
+ # Corresponds to the JSON property `tenantProjectNumber`
1370
+ # @return [Fixnum]
1371
+ attr_accessor :tenant_project_number
1372
+
1373
+ def initialize(**args)
1374
+ update!(**args)
1375
+ end
1376
+
1377
+ # Update properties of this object
1378
+ def update!(**args)
1379
+ @auto_create = args[:auto_create] if args.key?(:auto_create)
1380
+ @delegated_project_number = args[:delegated_project_number] if args.key?(:delegated_project_number)
1381
+ @id_token = args[:id_token] if args.key?(:id_token)
1382
+ @instance_id = args[:instance_id] if args.key?(:instance_id)
1383
+ @pending_id_token = args[:pending_id_token] if args.key?(:pending_id_token)
1384
+ @post_body = args[:post_body] if args.key?(:post_body)
1385
+ @request_uri = args[:request_uri] if args.key?(:request_uri)
1386
+ @return_idp_credential = args[:return_idp_credential] if args.key?(:return_idp_credential)
1387
+ @return_refresh_token = args[:return_refresh_token] if args.key?(:return_refresh_token)
1388
+ @return_secure_token = args[:return_secure_token] if args.key?(:return_secure_token)
1389
+ @session_id = args[:session_id] if args.key?(:session_id)
1390
+ @tenant_id = args[:tenant_id] if args.key?(:tenant_id)
1391
+ @tenant_project_number = args[:tenant_project_number] if args.key?(:tenant_project_number)
1392
+ end
1393
+ end
1394
+
1395
+ # Request to verify a custom token
1396
+ class VerifyCustomTokenRequest
1397
+ include Google::Apis::Core::Hashable
1398
+
1399
+ # GCP project number of the requesting delegated app. Currently only intended
1400
+ # for Firebase V1 migration.
1401
+ # Corresponds to the JSON property `delegatedProjectNumber`
1402
+ # @return [Fixnum]
1403
+ attr_accessor :delegated_project_number
1404
+
1405
+ # Instance id token of the app.
1406
+ # Corresponds to the JSON property `instanceId`
1407
+ # @return [String]
1408
+ attr_accessor :instance_id
1409
+
1410
+ # Whether return sts id token and refresh token instead of gitkit token.
1411
+ # Corresponds to the JSON property `returnSecureToken`
1412
+ # @return [Boolean]
1413
+ attr_accessor :return_secure_token
1414
+ alias_method :return_secure_token?, :return_secure_token
1415
+
1416
+ # The custom token to verify
1417
+ # Corresponds to the JSON property `token`
1418
+ # @return [String]
1419
+ attr_accessor :token
1420
+
1421
+ def initialize(**args)
1422
+ update!(**args)
1423
+ end
1424
+
1425
+ # Update properties of this object
1426
+ def update!(**args)
1427
+ @delegated_project_number = args[:delegated_project_number] if args.key?(:delegated_project_number)
1428
+ @instance_id = args[:instance_id] if args.key?(:instance_id)
1429
+ @return_secure_token = args[:return_secure_token] if args.key?(:return_secure_token)
1430
+ @token = args[:token] if args.key?(:token)
1431
+ end
1432
+ end
1433
+
1434
+ # Request to verify the password.
1435
+ class VerifyPasswordRequest
1436
+ include Google::Apis::Core::Hashable
1437
+
1438
+ # The captcha challenge.
1439
+ # Corresponds to the JSON property `captchaChallenge`
1440
+ # @return [String]
1441
+ attr_accessor :captcha_challenge
1442
+
1443
+ # Response to the captcha.
1444
+ # Corresponds to the JSON property `captchaResponse`
1445
+ # @return [String]
1446
+ attr_accessor :captcha_response
1447
+
1448
+ # GCP project number of the requesting delegated app. Currently only intended
1449
+ # for Firebase V1 migration.
1450
+ # Corresponds to the JSON property `delegatedProjectNumber`
1451
+ # @return [Fixnum]
1452
+ attr_accessor :delegated_project_number
1453
+
1454
+ # The email of the user.
1455
+ # Corresponds to the JSON property `email`
1456
+ # @return [String]
1457
+ attr_accessor :email
1458
+
1459
+ # The GITKit token of the authenticated user.
1460
+ # Corresponds to the JSON property `idToken`
1461
+ # @return [String]
1462
+ attr_accessor :id_token
1463
+
1464
+ # Instance id token of the app.
1465
+ # Corresponds to the JSON property `instanceId`
1466
+ # @return [String]
1467
+ attr_accessor :instance_id
1468
+
1469
+ # The password inputed by the user.
1470
+ # Corresponds to the JSON property `password`
1471
+ # @return [String]
1472
+ attr_accessor :password
1473
+
1474
+ # The GITKit token for the non-trusted IDP, which is to be confirmed by the user.
1475
+ # Corresponds to the JSON property `pendingIdToken`
1476
+ # @return [String]
1477
+ attr_accessor :pending_id_token
1478
+
1479
+ # Whether return sts id token and refresh token instead of gitkit token.
1480
+ # Corresponds to the JSON property `returnSecureToken`
1481
+ # @return [Boolean]
1482
+ attr_accessor :return_secure_token
1483
+ alias_method :return_secure_token?, :return_secure_token
1484
+
1485
+ # For multi-tenant use cases, in order to construct sign-in URL with the correct
1486
+ # IDP parameters, Firebear needs to know which Tenant to retrieve IDP configs
1487
+ # from.
1488
+ # Corresponds to the JSON property `tenantId`
1489
+ # @return [String]
1490
+ attr_accessor :tenant_id
1491
+
1492
+ # Tenant project number to be used for idp discovery.
1493
+ # Corresponds to the JSON property `tenantProjectNumber`
1494
+ # @return [Fixnum]
1495
+ attr_accessor :tenant_project_number
1496
+
1497
+ def initialize(**args)
1498
+ update!(**args)
1499
+ end
1500
+
1501
+ # Update properties of this object
1502
+ def update!(**args)
1503
+ @captcha_challenge = args[:captcha_challenge] if args.key?(:captcha_challenge)
1504
+ @captcha_response = args[:captcha_response] if args.key?(:captcha_response)
1505
+ @delegated_project_number = args[:delegated_project_number] if args.key?(:delegated_project_number)
1506
+ @email = args[:email] if args.key?(:email)
1507
+ @id_token = args[:id_token] if args.key?(:id_token)
1508
+ @instance_id = args[:instance_id] if args.key?(:instance_id)
1509
+ @password = args[:password] if args.key?(:password)
1510
+ @pending_id_token = args[:pending_id_token] if args.key?(:pending_id_token)
1511
+ @return_secure_token = args[:return_secure_token] if args.key?(:return_secure_token)
1512
+ @tenant_id = args[:tenant_id] if args.key?(:tenant_id)
1513
+ @tenant_project_number = args[:tenant_project_number] if args.key?(:tenant_project_number)
1514
+ end
1515
+ end
1516
+
1517
+ # Request for Identitytoolkit-VerifyPhoneNumber
1518
+ class IdentitytoolkitRelyingpartyVerifyPhoneNumberRequest
1519
+ include Google::Apis::Core::Hashable
1520
+
1521
+ #
1522
+ # Corresponds to the JSON property `code`
1523
+ # @return [String]
1524
+ attr_accessor :code
1525
+
1526
+ #
1527
+ # Corresponds to the JSON property `idToken`
1528
+ # @return [String]
1529
+ attr_accessor :id_token
1530
+
1531
+ #
1532
+ # Corresponds to the JSON property `operation`
1533
+ # @return [String]
1534
+ attr_accessor :operation
1535
+
1536
+ #
1537
+ # Corresponds to the JSON property `phoneNumber`
1538
+ # @return [String]
1539
+ attr_accessor :phone_number
1540
+
1541
+ # The session info previously returned by IdentityToolkit-SendVerificationCode.
1542
+ # Corresponds to the JSON property `sessionInfo`
1543
+ # @return [String]
1544
+ attr_accessor :session_info
1545
+
1546
+ #
1547
+ # Corresponds to the JSON property `temporaryProof`
1548
+ # @return [String]
1549
+ attr_accessor :temporary_proof
1550
+
1551
+ #
1552
+ # Corresponds to the JSON property `verificationProof`
1553
+ # @return [String]
1554
+ attr_accessor :verification_proof
1555
+
1556
+ def initialize(**args)
1557
+ update!(**args)
1558
+ end
1559
+
1560
+ # Update properties of this object
1561
+ def update!(**args)
1562
+ @code = args[:code] if args.key?(:code)
1563
+ @id_token = args[:id_token] if args.key?(:id_token)
1564
+ @operation = args[:operation] if args.key?(:operation)
1565
+ @phone_number = args[:phone_number] if args.key?(:phone_number)
1566
+ @session_info = args[:session_info] if args.key?(:session_info)
1567
+ @temporary_proof = args[:temporary_proof] if args.key?(:temporary_proof)
1568
+ @verification_proof = args[:verification_proof] if args.key?(:verification_proof)
1569
+ end
1570
+ end
1571
+
1572
+ # Response for Identitytoolkit-VerifyPhoneNumber
1573
+ class IdentitytoolkitRelyingpartyVerifyPhoneNumberResponse
1574
+ include Google::Apis::Core::Hashable
1575
+
1576
+ #
1577
+ # Corresponds to the JSON property `expiresIn`
1578
+ # @return [Fixnum]
1579
+ attr_accessor :expires_in
1580
+
1581
+ #
1582
+ # Corresponds to the JSON property `idToken`
1583
+ # @return [String]
1584
+ attr_accessor :id_token
1585
+
1586
+ #
1587
+ # Corresponds to the JSON property `isNewUser`
1588
+ # @return [Boolean]
1589
+ attr_accessor :is_new_user
1590
+ alias_method :is_new_user?, :is_new_user
1591
+
1592
+ #
1593
+ # Corresponds to the JSON property `localId`
1594
+ # @return [String]
1595
+ attr_accessor :local_id
1596
+
1597
+ #
1598
+ # Corresponds to the JSON property `phoneNumber`
1599
+ # @return [String]
1600
+ attr_accessor :phone_number
1601
+
1602
+ #
1603
+ # Corresponds to the JSON property `refreshToken`
1604
+ # @return [String]
1605
+ attr_accessor :refresh_token
1606
+
1607
+ #
1608
+ # Corresponds to the JSON property `temporaryProof`
1609
+ # @return [String]
1610
+ attr_accessor :temporary_proof
1611
+
1612
+ #
1613
+ # Corresponds to the JSON property `temporaryProofExpiresIn`
1614
+ # @return [Fixnum]
1615
+ attr_accessor :temporary_proof_expires_in
1616
+
1617
+ #
1618
+ # Corresponds to the JSON property `verificationProof`
1619
+ # @return [String]
1620
+ attr_accessor :verification_proof
1621
+
1622
+ #
1623
+ # Corresponds to the JSON property `verificationProofExpiresIn`
1624
+ # @return [Fixnum]
1625
+ attr_accessor :verification_proof_expires_in
1626
+
1627
+ def initialize(**args)
1628
+ update!(**args)
1629
+ end
1630
+
1631
+ # Update properties of this object
1632
+ def update!(**args)
1633
+ @expires_in = args[:expires_in] if args.key?(:expires_in)
1634
+ @id_token = args[:id_token] if args.key?(:id_token)
1635
+ @is_new_user = args[:is_new_user] if args.key?(:is_new_user)
1636
+ @local_id = args[:local_id] if args.key?(:local_id)
1637
+ @phone_number = args[:phone_number] if args.key?(:phone_number)
1638
+ @refresh_token = args[:refresh_token] if args.key?(:refresh_token)
1639
+ @temporary_proof = args[:temporary_proof] if args.key?(:temporary_proof)
1640
+ @temporary_proof_expires_in = args[:temporary_proof_expires_in] if args.key?(:temporary_proof_expires_in)
1641
+ @verification_proof = args[:verification_proof] if args.key?(:verification_proof)
1642
+ @verification_proof_expires_in = args[:verification_proof_expires_in] if args.key?(:verification_proof_expires_in)
1643
+ end
1644
+ end
1645
+
1646
+ # Template for a single idp configuration.
1647
+ class IdpConfig
1648
+ include Google::Apis::Core::Hashable
1649
+
1650
+ # OAuth2 client ID.
1651
+ # Corresponds to the JSON property `clientId`
1652
+ # @return [String]
1653
+ attr_accessor :client_id
1654
+
1655
+ # Whether this IDP is enabled.
1656
+ # Corresponds to the JSON property `enabled`
1657
+ # @return [Boolean]
1658
+ attr_accessor :enabled
1659
+ alias_method :enabled?, :enabled
1660
+
1661
+ # Percent of users who will be prompted/redirected federated login for this IDP.
1662
+ # Corresponds to the JSON property `experimentPercent`
1663
+ # @return [Fixnum]
1664
+ attr_accessor :experiment_percent
1665
+
1666
+ # OAuth2 provider.
1667
+ # Corresponds to the JSON property `provider`
1668
+ # @return [String]
1669
+ attr_accessor :provider
1670
+
1671
+ # OAuth2 client secret.
1672
+ # Corresponds to the JSON property `secret`
1673
+ # @return [String]
1674
+ attr_accessor :secret
1675
+
1676
+ # Whitelisted client IDs for audience check.
1677
+ # Corresponds to the JSON property `whitelistedAudiences`
1678
+ # @return [Array<String>]
1679
+ attr_accessor :whitelisted_audiences
1680
+
1681
+ def initialize(**args)
1682
+ update!(**args)
1683
+ end
1684
+
1685
+ # Update properties of this object
1686
+ def update!(**args)
1687
+ @client_id = args[:client_id] if args.key?(:client_id)
1688
+ @enabled = args[:enabled] if args.key?(:enabled)
1689
+ @experiment_percent = args[:experiment_percent] if args.key?(:experiment_percent)
1690
+ @provider = args[:provider] if args.key?(:provider)
1691
+ @secret = args[:secret] if args.key?(:secret)
1692
+ @whitelisted_audiences = args[:whitelisted_audiences] if args.key?(:whitelisted_audiences)
1693
+ end
1694
+ end
1695
+
1696
+ # Request of getting a code for user confirmation (reset password, change email
1697
+ # etc.)
1698
+ class Relyingparty
1699
+ include Google::Apis::Core::Hashable
1700
+
1701
+ # whether or not to install the android app on the device where the link is
1702
+ # opened
1703
+ # Corresponds to the JSON property `androidInstallApp`
1704
+ # @return [Boolean]
1705
+ attr_accessor :android_install_app
1706
+ alias_method :android_install_app?, :android_install_app
1707
+
1708
+ # minimum version of the app. if the version on the device is lower than this
1709
+ # version then the user is taken to the play store to upgrade the app
1710
+ # Corresponds to the JSON property `androidMinimumVersion`
1711
+ # @return [String]
1712
+ attr_accessor :android_minimum_version
1713
+
1714
+ # android package name of the android app to handle the action code
1715
+ # Corresponds to the JSON property `androidPackageName`
1716
+ # @return [String]
1717
+ attr_accessor :android_package_name
1718
+
1719
+ # whether or not the app can handle the oob code without first going to web
1720
+ # Corresponds to the JSON property `canHandleCodeInApp`
1721
+ # @return [Boolean]
1722
+ attr_accessor :can_handle_code_in_app
1723
+ alias_method :can_handle_code_in_app?, :can_handle_code_in_app
1724
+
1725
+ # The recaptcha response from the user.
1726
+ # Corresponds to the JSON property `captchaResp`
1727
+ # @return [String]
1728
+ attr_accessor :captcha_resp
1729
+
1730
+ # The recaptcha challenge presented to the user.
1731
+ # Corresponds to the JSON property `challenge`
1732
+ # @return [String]
1733
+ attr_accessor :challenge
1734
+
1735
+ # The url to continue to the Gitkit app
1736
+ # Corresponds to the JSON property `continueUrl`
1737
+ # @return [String]
1738
+ attr_accessor :continue_url
1739
+
1740
+ # The email of the user.
1741
+ # Corresponds to the JSON property `email`
1742
+ # @return [String]
1743
+ attr_accessor :email
1744
+
1745
+ # iOS app store id to download the app if it's not already installed
1746
+ # Corresponds to the JSON property `iOSAppStoreId`
1747
+ # @return [String]
1748
+ attr_accessor :i_os_app_store_id
1749
+
1750
+ # the iOS bundle id of iOS app to handle the action code
1751
+ # Corresponds to the JSON property `iOSBundleId`
1752
+ # @return [String]
1753
+ attr_accessor :i_os_bundle_id
1754
+
1755
+ # The user's Gitkit login token for email change.
1756
+ # Corresponds to the JSON property `idToken`
1757
+ # @return [String]
1758
+ attr_accessor :id_token
1759
+
1760
+ # The fixed string "identitytoolkit#relyingparty".
1761
+ # Corresponds to the JSON property `kind`
1762
+ # @return [String]
1763
+ attr_accessor :kind
1764
+
1765
+ # The new email if the code is for email change.
1766
+ # Corresponds to the JSON property `newEmail`
1767
+ # @return [String]
1768
+ attr_accessor :new_email
1769
+
1770
+ # The request type.
1771
+ # Corresponds to the JSON property `requestType`
1772
+ # @return [String]
1773
+ attr_accessor :request_type
1774
+
1775
+ # The IP address of the user.
1776
+ # Corresponds to the JSON property `userIp`
1777
+ # @return [String]
1778
+ attr_accessor :user_ip
1779
+
1780
+ def initialize(**args)
1781
+ update!(**args)
1782
+ end
1783
+
1784
+ # Update properties of this object
1785
+ def update!(**args)
1786
+ @android_install_app = args[:android_install_app] if args.key?(:android_install_app)
1787
+ @android_minimum_version = args[:android_minimum_version] if args.key?(:android_minimum_version)
1788
+ @android_package_name = args[:android_package_name] if args.key?(:android_package_name)
1789
+ @can_handle_code_in_app = args[:can_handle_code_in_app] if args.key?(:can_handle_code_in_app)
1790
+ @captcha_resp = args[:captcha_resp] if args.key?(:captcha_resp)
1791
+ @challenge = args[:challenge] if args.key?(:challenge)
1792
+ @continue_url = args[:continue_url] if args.key?(:continue_url)
1793
+ @email = args[:email] if args.key?(:email)
1794
+ @i_os_app_store_id = args[:i_os_app_store_id] if args.key?(:i_os_app_store_id)
1795
+ @i_os_bundle_id = args[:i_os_bundle_id] if args.key?(:i_os_bundle_id)
1796
+ @id_token = args[:id_token] if args.key?(:id_token)
1797
+ @kind = args[:kind] if args.key?(:kind)
1798
+ @new_email = args[:new_email] if args.key?(:new_email)
1799
+ @request_type = args[:request_type] if args.key?(:request_type)
1800
+ @user_ip = args[:user_ip] if args.key?(:user_ip)
1801
+ end
1802
+ end
1803
+
1804
+ # Response of resetting the password.
1805
+ class ResetPasswordResponse
1806
+ include Google::Apis::Core::Hashable
1807
+
1808
+ # The user's email. If the out-of-band code is for email recovery, the user's
1809
+ # original email.
1810
+ # Corresponds to the JSON property `email`
1811
+ # @return [String]
1812
+ attr_accessor :email
1813
+
1814
+ # The fixed string "identitytoolkit#ResetPasswordResponse".
1815
+ # Corresponds to the JSON property `kind`
1816
+ # @return [String]
1817
+ attr_accessor :kind
1818
+
1819
+ # If the out-of-band code is for email recovery, the user's new email.
1820
+ # Corresponds to the JSON property `newEmail`
1821
+ # @return [String]
1822
+ attr_accessor :new_email
1823
+
1824
+ # The request type.
1825
+ # Corresponds to the JSON property `requestType`
1826
+ # @return [String]
1827
+ attr_accessor :request_type
1828
+
1829
+ def initialize(**args)
1830
+ update!(**args)
1831
+ end
1832
+
1833
+ # Update properties of this object
1834
+ def update!(**args)
1835
+ @email = args[:email] if args.key?(:email)
1836
+ @kind = args[:kind] if args.key?(:kind)
1837
+ @new_email = args[:new_email] if args.key?(:new_email)
1838
+ @request_type = args[:request_type] if args.key?(:request_type)
1839
+ end
1840
+ end
1841
+
1842
+ # Respone of setting the account information.
1843
+ class SetAccountInfoResponse
1844
+ include Google::Apis::Core::Hashable
1845
+
1846
+ # The name of the user.
1847
+ # Corresponds to the JSON property `displayName`
1848
+ # @return [String]
1849
+ attr_accessor :display_name
1850
+
1851
+ # The email of the user.
1852
+ # Corresponds to the JSON property `email`
1853
+ # @return [String]
1854
+ attr_accessor :email
1855
+
1856
+ # If email has been verified.
1857
+ # Corresponds to the JSON property `emailVerified`
1858
+ # @return [Boolean]
1859
+ attr_accessor :email_verified
1860
+ alias_method :email_verified?, :email_verified
1861
+
1862
+ # If idToken is STS id token, then this field will be expiration time of STS id
1863
+ # token in seconds.
1864
+ # Corresponds to the JSON property `expiresIn`
1865
+ # @return [Fixnum]
1866
+ attr_accessor :expires_in
1867
+
1868
+ # The Gitkit id token to login the newly sign up user.
1869
+ # Corresponds to the JSON property `idToken`
1870
+ # @return [String]
1871
+ attr_accessor :id_token
1872
+
1873
+ # The fixed string "identitytoolkit#SetAccountInfoResponse".
1874
+ # Corresponds to the JSON property `kind`
1875
+ # @return [String]
1876
+ attr_accessor :kind
1877
+
1878
+ # The local ID of the user.
1879
+ # Corresponds to the JSON property `localId`
1880
+ # @return [String]
1881
+ attr_accessor :local_id
1882
+
1883
+ # The new email the user attempts to change to.
1884
+ # Corresponds to the JSON property `newEmail`
1885
+ # @return [String]
1886
+ attr_accessor :new_email
1887
+
1888
+ # The user's hashed password.
1889
+ # Corresponds to the JSON property `passwordHash`
1890
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
1891
+ # @return [String]
1892
+ attr_accessor :password_hash
1893
+
1894
+ # The photo url of the user.
1895
+ # Corresponds to the JSON property `photoUrl`
1896
+ # @return [String]
1897
+ attr_accessor :photo_url
1898
+
1899
+ # The user's profiles at the associated IdPs.
1900
+ # Corresponds to the JSON property `providerUserInfo`
1901
+ # @return [Array<Google::Apis::IdentitytoolkitV3::SetAccountInfoResponse::ProviderUserInfo>]
1902
+ attr_accessor :provider_user_info
1903
+
1904
+ # If idToken is STS id token, then this field will be refresh token.
1905
+ # Corresponds to the JSON property `refreshToken`
1906
+ # @return [String]
1907
+ attr_accessor :refresh_token
1908
+
1909
+ def initialize(**args)
1910
+ update!(**args)
1911
+ end
1912
+
1913
+ # Update properties of this object
1914
+ def update!(**args)
1915
+ @display_name = args[:display_name] if args.key?(:display_name)
1916
+ @email = args[:email] if args.key?(:email)
1917
+ @email_verified = args[:email_verified] if args.key?(:email_verified)
1918
+ @expires_in = args[:expires_in] if args.key?(:expires_in)
1919
+ @id_token = args[:id_token] if args.key?(:id_token)
1920
+ @kind = args[:kind] if args.key?(:kind)
1921
+ @local_id = args[:local_id] if args.key?(:local_id)
1922
+ @new_email = args[:new_email] if args.key?(:new_email)
1923
+ @password_hash = args[:password_hash] if args.key?(:password_hash)
1924
+ @photo_url = args[:photo_url] if args.key?(:photo_url)
1925
+ @provider_user_info = args[:provider_user_info] if args.key?(:provider_user_info)
1926
+ @refresh_token = args[:refresh_token] if args.key?(:refresh_token)
1927
+ end
1928
+
1929
+ #
1930
+ class ProviderUserInfo
1931
+ include Google::Apis::Core::Hashable
1932
+
1933
+ # The user's display name at the IDP.
1934
+ # Corresponds to the JSON property `displayName`
1935
+ # @return [String]
1936
+ attr_accessor :display_name
1937
+
1938
+ # User's identifier at IDP.
1939
+ # Corresponds to the JSON property `federatedId`
1940
+ # @return [String]
1941
+ attr_accessor :federated_id
1942
+
1943
+ # The user's photo url at the IDP.
1944
+ # Corresponds to the JSON property `photoUrl`
1945
+ # @return [String]
1946
+ attr_accessor :photo_url
1947
+
1948
+ # The IdP ID. For whitelisted IdPs it's a short domain name, e.g., google.com,
1949
+ # aol.com, live.net and yahoo.com. For other OpenID IdPs it's the OP identifier.
1950
+ # Corresponds to the JSON property `providerId`
1951
+ # @return [String]
1952
+ attr_accessor :provider_id
1953
+
1954
+ def initialize(**args)
1955
+ update!(**args)
1956
+ end
1957
+
1958
+ # Update properties of this object
1959
+ def update!(**args)
1960
+ @display_name = args[:display_name] if args.key?(:display_name)
1961
+ @federated_id = args[:federated_id] if args.key?(:federated_id)
1962
+ @photo_url = args[:photo_url] if args.key?(:photo_url)
1963
+ @provider_id = args[:provider_id] if args.key?(:provider_id)
1964
+ end
1965
+ end
1966
+ end
1967
+
1968
+ # Response of signing up new user, creating anonymous user or anonymous user
1969
+ # reauth.
1970
+ class SignupNewUserResponse
1971
+ include Google::Apis::Core::Hashable
1972
+
1973
+ # The name of the user.
1974
+ # Corresponds to the JSON property `displayName`
1975
+ # @return [String]
1976
+ attr_accessor :display_name
1977
+
1978
+ # The email of the user.
1979
+ # Corresponds to the JSON property `email`
1980
+ # @return [String]
1981
+ attr_accessor :email
1982
+
1983
+ # If idToken is STS id token, then this field will be expiration time of STS id
1984
+ # token in seconds.
1985
+ # Corresponds to the JSON property `expiresIn`
1986
+ # @return [Fixnum]
1987
+ attr_accessor :expires_in
1988
+
1989
+ # The Gitkit id token to login the newly sign up user.
1990
+ # Corresponds to the JSON property `idToken`
1991
+ # @return [String]
1992
+ attr_accessor :id_token
1993
+
1994
+ # The fixed string "identitytoolkit#SignupNewUserResponse".
1995
+ # Corresponds to the JSON property `kind`
1996
+ # @return [String]
1997
+ attr_accessor :kind
1998
+
1999
+ # The RP local ID of the user.
2000
+ # Corresponds to the JSON property `localId`
2001
+ # @return [String]
2002
+ attr_accessor :local_id
2003
+
2004
+ # If idToken is STS id token, then this field will be refresh token.
2005
+ # Corresponds to the JSON property `refreshToken`
2006
+ # @return [String]
2007
+ attr_accessor :refresh_token
2008
+
2009
+ def initialize(**args)
2010
+ update!(**args)
2011
+ end
2012
+
2013
+ # Update properties of this object
2014
+ def update!(**args)
2015
+ @display_name = args[:display_name] if args.key?(:display_name)
2016
+ @email = args[:email] if args.key?(:email)
2017
+ @expires_in = args[:expires_in] if args.key?(:expires_in)
2018
+ @id_token = args[:id_token] if args.key?(:id_token)
2019
+ @kind = args[:kind] if args.key?(:kind)
2020
+ @local_id = args[:local_id] if args.key?(:local_id)
2021
+ @refresh_token = args[:refresh_token] if args.key?(:refresh_token)
2022
+ end
2023
+ end
2024
+
2025
+ # Respone of uploading accounts in batch.
2026
+ class UploadAccountResponse
2027
+ include Google::Apis::Core::Hashable
2028
+
2029
+ # The error encountered while processing the account info.
2030
+ # Corresponds to the JSON property `error`
2031
+ # @return [Array<Google::Apis::IdentitytoolkitV3::UploadAccountResponse::Error>]
2032
+ attr_accessor :error
2033
+
2034
+ # The fixed string "identitytoolkit#UploadAccountResponse".
2035
+ # Corresponds to the JSON property `kind`
2036
+ # @return [String]
2037
+ attr_accessor :kind
2038
+
2039
+ def initialize(**args)
2040
+ update!(**args)
2041
+ end
2042
+
2043
+ # Update properties of this object
2044
+ def update!(**args)
2045
+ @error = args[:error] if args.key?(:error)
2046
+ @kind = args[:kind] if args.key?(:kind)
2047
+ end
2048
+
2049
+ #
2050
+ class Error
2051
+ include Google::Apis::Core::Hashable
2052
+
2053
+ # The index of the malformed account, starting from 0.
2054
+ # Corresponds to the JSON property `index`
2055
+ # @return [Fixnum]
2056
+ attr_accessor :index
2057
+
2058
+ # Detailed error message for the account info.
2059
+ # Corresponds to the JSON property `message`
2060
+ # @return [String]
2061
+ attr_accessor :message
2062
+
2063
+ def initialize(**args)
2064
+ update!(**args)
2065
+ end
2066
+
2067
+ # Update properties of this object
2068
+ def update!(**args)
2069
+ @index = args[:index] if args.key?(:index)
2070
+ @message = args[:message] if args.key?(:message)
2071
+ end
2072
+ end
2073
+ end
2074
+
2075
+ # Template for an individual account info.
2076
+ class UserInfo
2077
+ include Google::Apis::Core::Hashable
2078
+
2079
+ # User creation timestamp.
2080
+ # Corresponds to the JSON property `createdAt`
2081
+ # @return [Fixnum]
2082
+ attr_accessor :created_at
2083
+
2084
+ # The custom attributes to be set in the user's id token.
2085
+ # Corresponds to the JSON property `customAttributes`
2086
+ # @return [String]
2087
+ attr_accessor :custom_attributes
2088
+
2089
+ # Whether the user is authenticated by the developer.
2090
+ # Corresponds to the JSON property `customAuth`
2091
+ # @return [Boolean]
2092
+ attr_accessor :custom_auth
2093
+ alias_method :custom_auth?, :custom_auth
2094
+
2095
+ # Whether the user is disabled.
2096
+ # Corresponds to the JSON property `disabled`
2097
+ # @return [Boolean]
2098
+ attr_accessor :disabled
2099
+ alias_method :disabled?, :disabled
2100
+
2101
+ # The name of the user.
2102
+ # Corresponds to the JSON property `displayName`
2103
+ # @return [String]
2104
+ attr_accessor :display_name
2105
+
2106
+ # The email of the user.
2107
+ # Corresponds to the JSON property `email`
2108
+ # @return [String]
2109
+ attr_accessor :email
2110
+
2111
+ # Whether the email has been verified.
2112
+ # Corresponds to the JSON property `emailVerified`
2113
+ # @return [Boolean]
2114
+ attr_accessor :email_verified
2115
+ alias_method :email_verified?, :email_verified
2116
+
2117
+ # last login timestamp.
2118
+ # Corresponds to the JSON property `lastLoginAt`
2119
+ # @return [Fixnum]
2120
+ attr_accessor :last_login_at
2121
+
2122
+ # The local ID of the user.
2123
+ # Corresponds to the JSON property `localId`
2124
+ # @return [String]
2125
+ attr_accessor :local_id
2126
+
2127
+ # The user's hashed password.
2128
+ # Corresponds to the JSON property `passwordHash`
2129
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
2130
+ # @return [String]
2131
+ attr_accessor :password_hash
2132
+
2133
+ # The timestamp when the password was last updated.
2134
+ # Corresponds to the JSON property `passwordUpdatedAt`
2135
+ # @return [Float]
2136
+ attr_accessor :password_updated_at
2137
+
2138
+ # User's phone number.
2139
+ # Corresponds to the JSON property `phoneNumber`
2140
+ # @return [String]
2141
+ attr_accessor :phone_number
2142
+
2143
+ # The URL of the user profile photo.
2144
+ # Corresponds to the JSON property `photoUrl`
2145
+ # @return [String]
2146
+ attr_accessor :photo_url
2147
+
2148
+ # The IDP of the user.
2149
+ # Corresponds to the JSON property `providerUserInfo`
2150
+ # @return [Array<Google::Apis::IdentitytoolkitV3::UserInfo::ProviderUserInfo>]
2151
+ attr_accessor :provider_user_info
2152
+
2153
+ # The user's plain text password.
2154
+ # Corresponds to the JSON property `rawPassword`
2155
+ # @return [String]
2156
+ attr_accessor :raw_password
2157
+
2158
+ # The user's password salt.
2159
+ # Corresponds to the JSON property `salt`
2160
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
2161
+ # @return [String]
2162
+ attr_accessor :salt
2163
+
2164
+ # User's screen name at Twitter or login name at Github.
2165
+ # Corresponds to the JSON property `screenName`
2166
+ # @return [String]
2167
+ attr_accessor :screen_name
2168
+
2169
+ # Timestamp in seconds for valid login token.
2170
+ # Corresponds to the JSON property `validSince`
2171
+ # @return [Fixnum]
2172
+ attr_accessor :valid_since
2173
+
2174
+ # Version of the user's password.
2175
+ # Corresponds to the JSON property `version`
2176
+ # @return [Fixnum]
2177
+ attr_accessor :version
2178
+
2179
+ def initialize(**args)
2180
+ update!(**args)
2181
+ end
2182
+
2183
+ # Update properties of this object
2184
+ def update!(**args)
2185
+ @created_at = args[:created_at] if args.key?(:created_at)
2186
+ @custom_attributes = args[:custom_attributes] if args.key?(:custom_attributes)
2187
+ @custom_auth = args[:custom_auth] if args.key?(:custom_auth)
2188
+ @disabled = args[:disabled] if args.key?(:disabled)
2189
+ @display_name = args[:display_name] if args.key?(:display_name)
2190
+ @email = args[:email] if args.key?(:email)
2191
+ @email_verified = args[:email_verified] if args.key?(:email_verified)
2192
+ @last_login_at = args[:last_login_at] if args.key?(:last_login_at)
2193
+ @local_id = args[:local_id] if args.key?(:local_id)
2194
+ @password_hash = args[:password_hash] if args.key?(:password_hash)
2195
+ @password_updated_at = args[:password_updated_at] if args.key?(:password_updated_at)
2196
+ @phone_number = args[:phone_number] if args.key?(:phone_number)
2197
+ @photo_url = args[:photo_url] if args.key?(:photo_url)
2198
+ @provider_user_info = args[:provider_user_info] if args.key?(:provider_user_info)
2199
+ @raw_password = args[:raw_password] if args.key?(:raw_password)
2200
+ @salt = args[:salt] if args.key?(:salt)
2201
+ @screen_name = args[:screen_name] if args.key?(:screen_name)
2202
+ @valid_since = args[:valid_since] if args.key?(:valid_since)
2203
+ @version = args[:version] if args.key?(:version)
2204
+ end
2205
+
2206
+ #
2207
+ class ProviderUserInfo
2208
+ include Google::Apis::Core::Hashable
2209
+
2210
+ # The user's display name at the IDP.
2211
+ # Corresponds to the JSON property `displayName`
2212
+ # @return [String]
2213
+ attr_accessor :display_name
2214
+
2215
+ # User's email at IDP.
2216
+ # Corresponds to the JSON property `email`
2217
+ # @return [String]
2218
+ attr_accessor :email
2219
+
2220
+ # User's identifier at IDP.
2221
+ # Corresponds to the JSON property `federatedId`
2222
+ # @return [String]
2223
+ attr_accessor :federated_id
2224
+
2225
+ # User's phone number.
2226
+ # Corresponds to the JSON property `phoneNumber`
2227
+ # @return [String]
2228
+ attr_accessor :phone_number
2229
+
2230
+ # The user's photo url at the IDP.
2231
+ # Corresponds to the JSON property `photoUrl`
2232
+ # @return [String]
2233
+ attr_accessor :photo_url
2234
+
2235
+ # The IdP ID. For white listed IdPs it's a short domain name, e.g., google.com,
2236
+ # aol.com, live.net and yahoo.com. For other OpenID IdPs it's the OP identifier.
2237
+ # Corresponds to the JSON property `providerId`
2238
+ # @return [String]
2239
+ attr_accessor :provider_id
2240
+
2241
+ # User's raw identifier directly returned from IDP.
2242
+ # Corresponds to the JSON property `rawId`
2243
+ # @return [String]
2244
+ attr_accessor :raw_id
2245
+
2246
+ # User's screen name at Twitter or login name at Github.
2247
+ # Corresponds to the JSON property `screenName`
2248
+ # @return [String]
2249
+ attr_accessor :screen_name
2250
+
2251
+ def initialize(**args)
2252
+ update!(**args)
2253
+ end
2254
+
2255
+ # Update properties of this object
2256
+ def update!(**args)
2257
+ @display_name = args[:display_name] if args.key?(:display_name)
2258
+ @email = args[:email] if args.key?(:email)
2259
+ @federated_id = args[:federated_id] if args.key?(:federated_id)
2260
+ @phone_number = args[:phone_number] if args.key?(:phone_number)
2261
+ @photo_url = args[:photo_url] if args.key?(:photo_url)
2262
+ @provider_id = args[:provider_id] if args.key?(:provider_id)
2263
+ @raw_id = args[:raw_id] if args.key?(:raw_id)
2264
+ @screen_name = args[:screen_name] if args.key?(:screen_name)
2265
+ end
2266
+ end
2267
+ end
2268
+
2269
+ # Response of verifying the IDP assertion.
2270
+ class VerifyAssertionResponse
2271
+ include Google::Apis::Core::Hashable
2272
+
2273
+ # The action code.
2274
+ # Corresponds to the JSON property `action`
2275
+ # @return [String]
2276
+ attr_accessor :action
2277
+
2278
+ # URL for OTA app installation.
2279
+ # Corresponds to the JSON property `appInstallationUrl`
2280
+ # @return [String]
2281
+ attr_accessor :app_installation_url
2282
+
2283
+ # The custom scheme used by mobile app.
2284
+ # Corresponds to the JSON property `appScheme`
2285
+ # @return [String]
2286
+ attr_accessor :app_scheme
2287
+
2288
+ # The opaque value used by the client to maintain context info between the
2289
+ # authentication request and the IDP callback.
2290
+ # Corresponds to the JSON property `context`
2291
+ # @return [String]
2292
+ attr_accessor :context
2293
+
2294
+ # The birth date of the IdP account.
2295
+ # Corresponds to the JSON property `dateOfBirth`
2296
+ # @return [String]
2297
+ attr_accessor :date_of_birth
2298
+
2299
+ # The display name of the user.
2300
+ # Corresponds to the JSON property `displayName`
2301
+ # @return [String]
2302
+ attr_accessor :display_name
2303
+
2304
+ # The email returned by the IdP. NOTE: The federated login user may not own the
2305
+ # email.
2306
+ # Corresponds to the JSON property `email`
2307
+ # @return [String]
2308
+ attr_accessor :email
2309
+
2310
+ # It's true if the email is recycled.
2311
+ # Corresponds to the JSON property `emailRecycled`
2312
+ # @return [Boolean]
2313
+ attr_accessor :email_recycled
2314
+ alias_method :email_recycled?, :email_recycled
2315
+
2316
+ # The value is true if the IDP is also the email provider. It means the user
2317
+ # owns the email.
2318
+ # Corresponds to the JSON property `emailVerified`
2319
+ # @return [Boolean]
2320
+ attr_accessor :email_verified
2321
+ alias_method :email_verified?, :email_verified
2322
+
2323
+ # Client error code.
2324
+ # Corresponds to the JSON property `errorMessage`
2325
+ # @return [String]
2326
+ attr_accessor :error_message
2327
+
2328
+ # If idToken is STS id token, then this field will be expiration time of STS id
2329
+ # token in seconds.
2330
+ # Corresponds to the JSON property `expiresIn`
2331
+ # @return [Fixnum]
2332
+ attr_accessor :expires_in
2333
+
2334
+ # The unique ID identifies the IdP account.
2335
+ # Corresponds to the JSON property `federatedId`
2336
+ # @return [String]
2337
+ attr_accessor :federated_id
2338
+
2339
+ # The first name of the user.
2340
+ # Corresponds to the JSON property `firstName`
2341
+ # @return [String]
2342
+ attr_accessor :first_name
2343
+
2344
+ # The full name of the user.
2345
+ # Corresponds to the JSON property `fullName`
2346
+ # @return [String]
2347
+ attr_accessor :full_name
2348
+
2349
+ # The ID token.
2350
+ # Corresponds to the JSON property `idToken`
2351
+ # @return [String]
2352
+ attr_accessor :id_token
2353
+
2354
+ # It's the identifier param in the createAuthUri request if the identifier is an
2355
+ # email. It can be used to check whether the user input email is different from
2356
+ # the asserted email.
2357
+ # Corresponds to the JSON property `inputEmail`
2358
+ # @return [String]
2359
+ attr_accessor :input_email
2360
+
2361
+ # True if it's a new user sign-in, false if it's a returning user.
2362
+ # Corresponds to the JSON property `isNewUser`
2363
+ # @return [Boolean]
2364
+ attr_accessor :is_new_user
2365
+ alias_method :is_new_user?, :is_new_user
2366
+
2367
+ # The fixed string "identitytoolkit#VerifyAssertionResponse".
2368
+ # Corresponds to the JSON property `kind`
2369
+ # @return [String]
2370
+ attr_accessor :kind
2371
+
2372
+ # The language preference of the user.
2373
+ # Corresponds to the JSON property `language`
2374
+ # @return [String]
2375
+ attr_accessor :language
2376
+
2377
+ # The last name of the user.
2378
+ # Corresponds to the JSON property `lastName`
2379
+ # @return [String]
2380
+ attr_accessor :last_name
2381
+
2382
+ # The RP local ID if it's already been mapped to the IdP account identified by
2383
+ # the federated ID.
2384
+ # Corresponds to the JSON property `localId`
2385
+ # @return [String]
2386
+ attr_accessor :local_id
2387
+
2388
+ # Whether the assertion is from a non-trusted IDP and need account linking
2389
+ # confirmation.
2390
+ # Corresponds to the JSON property `needConfirmation`
2391
+ # @return [Boolean]
2392
+ attr_accessor :need_confirmation
2393
+ alias_method :need_confirmation?, :need_confirmation
2394
+
2395
+ # Whether need client to supply email to complete the federated login flow.
2396
+ # Corresponds to the JSON property `needEmail`
2397
+ # @return [Boolean]
2398
+ attr_accessor :need_email
2399
+ alias_method :need_email?, :need_email
2400
+
2401
+ # The nick name of the user.
2402
+ # Corresponds to the JSON property `nickName`
2403
+ # @return [String]
2404
+ attr_accessor :nick_name
2405
+
2406
+ # The OAuth2 access token.
2407
+ # Corresponds to the JSON property `oauthAccessToken`
2408
+ # @return [String]
2409
+ attr_accessor :oauth_access_token
2410
+
2411
+ # The OAuth2 authorization code.
2412
+ # Corresponds to the JSON property `oauthAuthorizationCode`
2413
+ # @return [String]
2414
+ attr_accessor :oauth_authorization_code
2415
+
2416
+ # The lifetime in seconds of the OAuth2 access token.
2417
+ # Corresponds to the JSON property `oauthExpireIn`
2418
+ # @return [Fixnum]
2419
+ attr_accessor :oauth_expire_in
2420
+
2421
+ # The OIDC id token.
2422
+ # Corresponds to the JSON property `oauthIdToken`
2423
+ # @return [String]
2424
+ attr_accessor :oauth_id_token
2425
+
2426
+ # The user approved request token for the OpenID OAuth extension.
2427
+ # Corresponds to the JSON property `oauthRequestToken`
2428
+ # @return [String]
2429
+ attr_accessor :oauth_request_token
2430
+
2431
+ # The scope for the OpenID OAuth extension.
2432
+ # Corresponds to the JSON property `oauthScope`
2433
+ # @return [String]
2434
+ attr_accessor :oauth_scope
2435
+
2436
+ # The OAuth1 access token secret.
2437
+ # Corresponds to the JSON property `oauthTokenSecret`
2438
+ # @return [String]
2439
+ attr_accessor :oauth_token_secret
2440
+
2441
+ # The original email stored in the mapping storage. It's returned when the
2442
+ # federated ID is associated to a different email.
2443
+ # Corresponds to the JSON property `originalEmail`
2444
+ # @return [String]
2445
+ attr_accessor :original_email
2446
+
2447
+ # The URI of the public accessible profiel picture.
2448
+ # Corresponds to the JSON property `photoUrl`
2449
+ # @return [String]
2450
+ attr_accessor :photo_url
2451
+
2452
+ # The IdP ID. For white listed IdPs it's a short domain name e.g. google.com,
2453
+ # aol.com, live.net and yahoo.com. If the "providerId" param is set to OpenID OP
2454
+ # identifer other than the whilte listed IdPs the OP identifier is returned. If
2455
+ # the "identifier" param is federated ID in the createAuthUri request. The
2456
+ # domain part of the federated ID is returned.
2457
+ # Corresponds to the JSON property `providerId`
2458
+ # @return [String]
2459
+ attr_accessor :provider_id
2460
+
2461
+ # Raw IDP-returned user info.
2462
+ # Corresponds to the JSON property `rawUserInfo`
2463
+ # @return [String]
2464
+ attr_accessor :raw_user_info
2465
+
2466
+ # If idToken is STS id token, then this field will be refresh token.
2467
+ # Corresponds to the JSON property `refreshToken`
2468
+ # @return [String]
2469
+ attr_accessor :refresh_token
2470
+
2471
+ # The screen_name of a Twitter user or the login name at Github.
2472
+ # Corresponds to the JSON property `screenName`
2473
+ # @return [String]
2474
+ attr_accessor :screen_name
2475
+
2476
+ # The timezone of the user.
2477
+ # Corresponds to the JSON property `timeZone`
2478
+ # @return [String]
2479
+ attr_accessor :time_zone
2480
+
2481
+ # When action is 'map', contains the idps which can be used for confirmation.
2482
+ # Corresponds to the JSON property `verifiedProvider`
2483
+ # @return [Array<String>]
2484
+ attr_accessor :verified_provider
2485
+
2486
+ def initialize(**args)
2487
+ update!(**args)
2488
+ end
2489
+
2490
+ # Update properties of this object
2491
+ def update!(**args)
2492
+ @action = args[:action] if args.key?(:action)
2493
+ @app_installation_url = args[:app_installation_url] if args.key?(:app_installation_url)
2494
+ @app_scheme = args[:app_scheme] if args.key?(:app_scheme)
2495
+ @context = args[:context] if args.key?(:context)
2496
+ @date_of_birth = args[:date_of_birth] if args.key?(:date_of_birth)
2497
+ @display_name = args[:display_name] if args.key?(:display_name)
2498
+ @email = args[:email] if args.key?(:email)
2499
+ @email_recycled = args[:email_recycled] if args.key?(:email_recycled)
2500
+ @email_verified = args[:email_verified] if args.key?(:email_verified)
2501
+ @error_message = args[:error_message] if args.key?(:error_message)
2502
+ @expires_in = args[:expires_in] if args.key?(:expires_in)
2503
+ @federated_id = args[:federated_id] if args.key?(:federated_id)
2504
+ @first_name = args[:first_name] if args.key?(:first_name)
2505
+ @full_name = args[:full_name] if args.key?(:full_name)
2506
+ @id_token = args[:id_token] if args.key?(:id_token)
2507
+ @input_email = args[:input_email] if args.key?(:input_email)
2508
+ @is_new_user = args[:is_new_user] if args.key?(:is_new_user)
2509
+ @kind = args[:kind] if args.key?(:kind)
2510
+ @language = args[:language] if args.key?(:language)
2511
+ @last_name = args[:last_name] if args.key?(:last_name)
2512
+ @local_id = args[:local_id] if args.key?(:local_id)
2513
+ @need_confirmation = args[:need_confirmation] if args.key?(:need_confirmation)
2514
+ @need_email = args[:need_email] if args.key?(:need_email)
2515
+ @nick_name = args[:nick_name] if args.key?(:nick_name)
2516
+ @oauth_access_token = args[:oauth_access_token] if args.key?(:oauth_access_token)
2517
+ @oauth_authorization_code = args[:oauth_authorization_code] if args.key?(:oauth_authorization_code)
2518
+ @oauth_expire_in = args[:oauth_expire_in] if args.key?(:oauth_expire_in)
2519
+ @oauth_id_token = args[:oauth_id_token] if args.key?(:oauth_id_token)
2520
+ @oauth_request_token = args[:oauth_request_token] if args.key?(:oauth_request_token)
2521
+ @oauth_scope = args[:oauth_scope] if args.key?(:oauth_scope)
2522
+ @oauth_token_secret = args[:oauth_token_secret] if args.key?(:oauth_token_secret)
2523
+ @original_email = args[:original_email] if args.key?(:original_email)
2524
+ @photo_url = args[:photo_url] if args.key?(:photo_url)
2525
+ @provider_id = args[:provider_id] if args.key?(:provider_id)
2526
+ @raw_user_info = args[:raw_user_info] if args.key?(:raw_user_info)
2527
+ @refresh_token = args[:refresh_token] if args.key?(:refresh_token)
2528
+ @screen_name = args[:screen_name] if args.key?(:screen_name)
2529
+ @time_zone = args[:time_zone] if args.key?(:time_zone)
2530
+ @verified_provider = args[:verified_provider] if args.key?(:verified_provider)
2531
+ end
2532
+ end
2533
+
2534
+ # Response from verifying a custom token
2535
+ class VerifyCustomTokenResponse
2536
+ include Google::Apis::Core::Hashable
2537
+
2538
+ # If idToken is STS id token, then this field will be expiration time of STS id
2539
+ # token in seconds.
2540
+ # Corresponds to the JSON property `expiresIn`
2541
+ # @return [Fixnum]
2542
+ attr_accessor :expires_in
2543
+
2544
+ # The GITKit token for authenticated user.
2545
+ # Corresponds to the JSON property `idToken`
2546
+ # @return [String]
2547
+ attr_accessor :id_token
2548
+
2549
+ # True if it's a new user sign-in, false if it's a returning user.
2550
+ # Corresponds to the JSON property `isNewUser`
2551
+ # @return [Boolean]
2552
+ attr_accessor :is_new_user
2553
+ alias_method :is_new_user?, :is_new_user
2554
+
2555
+ # The fixed string "identitytoolkit#VerifyCustomTokenResponse".
2556
+ # Corresponds to the JSON property `kind`
2557
+ # @return [String]
2558
+ attr_accessor :kind
2559
+
2560
+ # If idToken is STS id token, then this field will be refresh token.
2561
+ # Corresponds to the JSON property `refreshToken`
2562
+ # @return [String]
2563
+ attr_accessor :refresh_token
2564
+
2565
+ def initialize(**args)
2566
+ update!(**args)
2567
+ end
2568
+
2569
+ # Update properties of this object
2570
+ def update!(**args)
2571
+ @expires_in = args[:expires_in] if args.key?(:expires_in)
2572
+ @id_token = args[:id_token] if args.key?(:id_token)
2573
+ @is_new_user = args[:is_new_user] if args.key?(:is_new_user)
2574
+ @kind = args[:kind] if args.key?(:kind)
2575
+ @refresh_token = args[:refresh_token] if args.key?(:refresh_token)
2576
+ end
2577
+ end
2578
+
2579
+ # Request of verifying the password.
2580
+ class VerifyPasswordResponse
2581
+ include Google::Apis::Core::Hashable
2582
+
2583
+ # The name of the user.
2584
+ # Corresponds to the JSON property `displayName`
2585
+ # @return [String]
2586
+ attr_accessor :display_name
2587
+
2588
+ # The email returned by the IdP. NOTE: The federated login user may not own the
2589
+ # email.
2590
+ # Corresponds to the JSON property `email`
2591
+ # @return [String]
2592
+ attr_accessor :email
2593
+
2594
+ # If idToken is STS id token, then this field will be expiration time of STS id
2595
+ # token in seconds.
2596
+ # Corresponds to the JSON property `expiresIn`
2597
+ # @return [Fixnum]
2598
+ attr_accessor :expires_in
2599
+
2600
+ # The GITKit token for authenticated user.
2601
+ # Corresponds to the JSON property `idToken`
2602
+ # @return [String]
2603
+ attr_accessor :id_token
2604
+
2605
+ # The fixed string "identitytoolkit#VerifyPasswordResponse".
2606
+ # Corresponds to the JSON property `kind`
2607
+ # @return [String]
2608
+ attr_accessor :kind
2609
+
2610
+ # The RP local ID if it's already been mapped to the IdP account identified by
2611
+ # the federated ID.
2612
+ # Corresponds to the JSON property `localId`
2613
+ # @return [String]
2614
+ attr_accessor :local_id
2615
+
2616
+ # The OAuth2 access token.
2617
+ # Corresponds to the JSON property `oauthAccessToken`
2618
+ # @return [String]
2619
+ attr_accessor :oauth_access_token
2620
+
2621
+ # The OAuth2 authorization code.
2622
+ # Corresponds to the JSON property `oauthAuthorizationCode`
2623
+ # @return [String]
2624
+ attr_accessor :oauth_authorization_code
2625
+
2626
+ # The lifetime in seconds of the OAuth2 access token.
2627
+ # Corresponds to the JSON property `oauthExpireIn`
2628
+ # @return [Fixnum]
2629
+ attr_accessor :oauth_expire_in
2630
+
2631
+ # The URI of the user's photo at IdP
2632
+ # Corresponds to the JSON property `photoUrl`
2633
+ # @return [String]
2634
+ attr_accessor :photo_url
2635
+
2636
+ # If idToken is STS id token, then this field will be refresh token.
2637
+ # Corresponds to the JSON property `refreshToken`
2638
+ # @return [String]
2639
+ attr_accessor :refresh_token
2640
+
2641
+ # Whether the email is registered.
2642
+ # Corresponds to the JSON property `registered`
2643
+ # @return [Boolean]
2644
+ attr_accessor :registered
2645
+ alias_method :registered?, :registered
2646
+
2647
+ def initialize(**args)
2648
+ update!(**args)
2649
+ end
2650
+
2651
+ # Update properties of this object
2652
+ def update!(**args)
2653
+ @display_name = args[:display_name] if args.key?(:display_name)
2654
+ @email = args[:email] if args.key?(:email)
2655
+ @expires_in = args[:expires_in] if args.key?(:expires_in)
2656
+ @id_token = args[:id_token] if args.key?(:id_token)
2657
+ @kind = args[:kind] if args.key?(:kind)
2658
+ @local_id = args[:local_id] if args.key?(:local_id)
2659
+ @oauth_access_token = args[:oauth_access_token] if args.key?(:oauth_access_token)
2660
+ @oauth_authorization_code = args[:oauth_authorization_code] if args.key?(:oauth_authorization_code)
2661
+ @oauth_expire_in = args[:oauth_expire_in] if args.key?(:oauth_expire_in)
2662
+ @photo_url = args[:photo_url] if args.key?(:photo_url)
2663
+ @refresh_token = args[:refresh_token] if args.key?(:refresh_token)
2664
+ @registered = args[:registered] if args.key?(:registered)
2665
+ end
2666
+ end
2667
+ end
2668
+ end
2669
+ end