aws-sdk-cognitoidentityprovider 1.0.0.rc1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 1ed8de550568144c5a1cb33a032e63b65ebc65ac
4
+ data.tar.gz: 63c6067ac49a296812bbdb53e1304be8c162e27a
5
+ SHA512:
6
+ metadata.gz: f19fefc418129088a0592a53e7835da7a5853a393a00f2402c94237c027add3ed433694a1d553e9d91eb6aad6d1eb0976f1a22d3314a18a93f284a73fe61e3e8
7
+ data.tar.gz: 1a65af28f7f34066c9029982b332bf984961e78bc80af907b278f27f20ec7999c8a3a32735dfa377dbcc47231d40eb3b96654c98026c5fb0b65f8009147744ca
@@ -0,0 +1,47 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ require 'aws-sdk-core'
9
+ require 'aws-sigv4'
10
+
11
+ require_relative 'aws-sdk-cognitoidentityprovider/types'
12
+ require_relative 'aws-sdk-cognitoidentityprovider/client_api'
13
+ require_relative 'aws-sdk-cognitoidentityprovider/client'
14
+ require_relative 'aws-sdk-cognitoidentityprovider/errors'
15
+ require_relative 'aws-sdk-cognitoidentityprovider/resource'
16
+ require_relative 'aws-sdk-cognitoidentityprovider/customizations'
17
+
18
+ # This module provides support for Amazon Cognito Identity Provider. This module is available in the
19
+ # `aws-sdk-cognitoidentityprovider` gem.
20
+ #
21
+ # # Client
22
+ #
23
+ # The {Client} class provides one method for each API operation. Operation
24
+ # methods each accept a hash of request parameters and return a response
25
+ # structure.
26
+ #
27
+ # See {Client} for more information.
28
+ #
29
+ # # Errors
30
+ #
31
+ # Errors returned from Amazon Cognito Identity Provider all
32
+ # extend {Errors::ServiceError}.
33
+ #
34
+ # begin
35
+ # # do stuff
36
+ # rescue Aws::CognitoIdentityProvider::Errors::ServiceError
37
+ # # rescues all service API errors
38
+ # end
39
+ #
40
+ # See {Errors} for more information.
41
+ #
42
+ # @service
43
+ module Aws::CognitoIdentityProvider
44
+
45
+ GEM_VERSION = '1.0.0.rc1'
46
+
47
+ end
@@ -0,0 +1,2323 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ require 'seahorse/client/plugins/content_length.rb'
9
+ require 'aws-sdk-core/plugins/credentials_configuration.rb'
10
+ require 'aws-sdk-core/plugins/logging.rb'
11
+ require 'aws-sdk-core/plugins/param_converter.rb'
12
+ require 'aws-sdk-core/plugins/param_validator.rb'
13
+ require 'aws-sdk-core/plugins/user_agent.rb'
14
+ require 'aws-sdk-core/plugins/helpful_socket_errors.rb'
15
+ require 'aws-sdk-core/plugins/retry_errors.rb'
16
+ require 'aws-sdk-core/plugins/global_configuration.rb'
17
+ require 'aws-sdk-core/plugins/regional_endpoint.rb'
18
+ require 'aws-sdk-core/plugins/response_paging.rb'
19
+ require 'aws-sdk-core/plugins/stub_responses.rb'
20
+ require 'aws-sdk-core/plugins/idempotency_token.rb'
21
+ require 'aws-sdk-core/plugins/signature_v4.rb'
22
+ require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
23
+
24
+ Aws::Plugins::GlobalConfiguration.add_identifier(:cognitoidentityprovider)
25
+
26
+ module Aws
27
+ module CognitoIdentityProvider
28
+ class Client < Seahorse::Client::Base
29
+
30
+ include Aws::ClientStubs
31
+
32
+ @identifier = :cognitoidentityprovider
33
+
34
+ set_api(ClientApi::API)
35
+
36
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
37
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
38
+ add_plugin(Aws::Plugins::Logging)
39
+ add_plugin(Aws::Plugins::ParamConverter)
40
+ add_plugin(Aws::Plugins::ParamValidator)
41
+ add_plugin(Aws::Plugins::UserAgent)
42
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
43
+ add_plugin(Aws::Plugins::RetryErrors)
44
+ add_plugin(Aws::Plugins::GlobalConfiguration)
45
+ add_plugin(Aws::Plugins::RegionalEndpoint)
46
+ add_plugin(Aws::Plugins::ResponsePaging)
47
+ add_plugin(Aws::Plugins::StubResponses)
48
+ add_plugin(Aws::Plugins::IdempotencyToken)
49
+ add_plugin(Aws::Plugins::SignatureV4)
50
+ add_plugin(Aws::Plugins::Protocols::JsonRpc)
51
+
52
+ # @option options [required, Aws::CredentialProvider] :credentials
53
+ # Your AWS credentials. This can be an instance of any one of the
54
+ # following classes:
55
+ #
56
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
57
+ # credentials.
58
+ #
59
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
60
+ # from an EC2 IMDS on an EC2 instance.
61
+ #
62
+ # * `Aws::SharedCredentials` - Used for loading credentials from a
63
+ # shared file, such as `~/.aws/config`.
64
+ #
65
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
66
+ #
67
+ # When `:credentials` are not configured directly, the following
68
+ # locations will be searched for credentials:
69
+ #
70
+ # * `Aws.config[:credentials]`
71
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
72
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
73
+ # * `~/.aws/credentials`
74
+ # * `~/.aws/config`
75
+ # * EC2 IMDS instance profile - When used by default, the timeouts are
76
+ # very aggressive. Construct and pass an instance of
77
+ # `Aws::InstanceProfileCredentails` to enable retries and extended
78
+ # timeouts.
79
+ # @option options [required, String] :region
80
+ # The AWS region to connect to. The configured `:region` is
81
+ # used to determine the service `:endpoint`. When not passed,
82
+ # a default `:region` is search for in the following locations:
83
+ #
84
+ # * `Aws.config[:region]`
85
+ # * `ENV['AWS_REGION']`
86
+ # * `ENV['AMAZON_REGION']`
87
+ # * `ENV['AWS_DEFAULT_REGION']`
88
+ # * `~/.aws/credentials`
89
+ # * `~/.aws/config`
90
+ # @option options [String] :access_key_id
91
+ # @option options [Boolean] :convert_params (true)
92
+ # When `true`, an attempt is made to coerce request parameters into
93
+ # the required types.
94
+ # @option options [String] :endpoint
95
+ # The client endpoint is normally constructed from the `:region`
96
+ # option. You should only configure an `:endpoint` when connecting
97
+ # to test endpoints. This should be avalid HTTP(S) URI.
98
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
99
+ # The log formatter.
100
+ # @option options [Symbol] :log_level (:info)
101
+ # The log level to send messages to the `:logger` at.
102
+ # @option options [Logger] :logger
103
+ # The Logger instance to send log messages to. If this option
104
+ # is not set, logging will be disabled.
105
+ # @option options [String] :profile ("default")
106
+ # Used when loading credentials from the shared credentials file
107
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
108
+ # @option options [Integer] :retry_limit (3)
109
+ # The maximum number of times to retry failed requests. Only
110
+ # ~ 500 level server errors and certain ~ 400 level client errors
111
+ # are retried. Generally, these are throttling errors, data
112
+ # checksum errors, networking errors, timeout errors and auth
113
+ # errors from expired credentials.
114
+ # @option options [String] :secret_access_key
115
+ # @option options [String] :session_token
116
+ # @option options [Boolean] :simple_json (false)
117
+ # Disables request parameter conversion, validation, and formatting.
118
+ # Also disable response data type conversions. This option is useful
119
+ # when you want to ensure the highest level of performance by
120
+ # avoiding overhead of walking request parameters and response data
121
+ # structures.
122
+ #
123
+ # When `:simple_json` is enabled, the request parameters hash must
124
+ # be formatted exactly as the DynamoDB API expects.
125
+ # @option options [Boolean] :stub_responses (false)
126
+ # Causes the client to return stubbed responses. By default
127
+ # fake responses are generated and returned. You can specify
128
+ # the response data to return or errors to raise by calling
129
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
130
+ #
131
+ # ** Please note ** When response stubbing is enabled, no HTTP
132
+ # requests are made, and retries are disabled.
133
+ # @option options [Boolean] :validate_params (true)
134
+ # When `true`, request parameters are validated before
135
+ # sending the request.
136
+ def initialize(*args)
137
+ super
138
+ end
139
+
140
+ # @!group API Operations
141
+
142
+ # Adds additional user attributes to the user pool schema.
143
+ # @option params [required, String] :user_pool_id
144
+ # The user pool ID for the user pool where you want to add custom
145
+ # attributes.
146
+ # @option params [required, Array<Types::SchemaAttributeType>] :custom_attributes
147
+ # An array of custom attributes, such as Mutable and Name.
148
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
149
+ #
150
+ # @example Request syntax with placeholder values
151
+ # resp = client.add_custom_attributes({
152
+ # user_pool_id: "UserPoolIdType", # required
153
+ # custom_attributes: [ # required
154
+ # {
155
+ # name: "CustomAttributeNameType",
156
+ # attribute_data_type: "String", # accepts String, Number, DateTime, Boolean
157
+ # developer_only_attribute: false,
158
+ # mutable: false,
159
+ # required: false,
160
+ # number_attribute_constraints: {
161
+ # min_value: "StringType",
162
+ # max_value: "StringType",
163
+ # },
164
+ # string_attribute_constraints: {
165
+ # min_length: "StringType",
166
+ # max_length: "StringType",
167
+ # },
168
+ # },
169
+ # ],
170
+ # })
171
+ # @overload add_custom_attributes(params = {})
172
+ # @param [Hash] params ({})
173
+ def add_custom_attributes(params = {}, options = {})
174
+ req = build_request(:add_custom_attributes, params)
175
+ req.send_request(options)
176
+ end
177
+
178
+ # Confirms user registration as an admin without using a confirmation
179
+ # code. Works on any user.
180
+ # @option params [required, String] :user_pool_id
181
+ # The user pool ID for which you want to confirm user registration.
182
+ # @option params [required, String] :username
183
+ # The user name for which you want to confirm user registration.
184
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
185
+ #
186
+ # @example Request syntax with placeholder values
187
+ # resp = client.admin_confirm_sign_up({
188
+ # user_pool_id: "UserPoolIdType", # required
189
+ # username: "UsernameType", # required
190
+ # })
191
+ # @overload admin_confirm_sign_up(params = {})
192
+ # @param [Hash] params ({})
193
+ def admin_confirm_sign_up(params = {}, options = {})
194
+ req = build_request(:admin_confirm_sign_up, params)
195
+ req.send_request(options)
196
+ end
197
+
198
+ # Creates a new user in the specified user pool and sends a welcome
199
+ # message via email or phone (SMS). This message is based on a template
200
+ # that you configured in your call to CreateUserPool or UpdateUserPool.
201
+ # This template includes your custom sign-up instructions and
202
+ # placeholders for user name and temporary password.
203
+ #
204
+ # Requires developer credentials.
205
+ # @option params [required, String] :user_pool_id
206
+ # The user pool ID for the user pool where the user will be created.
207
+ # @option params [required, String] :username
208
+ # The username for the user. Must be unique within the user pool. Must
209
+ # be a UTF-8 string between 1 and 128 characters. After the user is
210
+ # created, the username cannot be changed.
211
+ # @option params [Array<Types::AttributeType>] :user_attributes
212
+ # An array of name-value pairs that contain user attributes and
213
+ # attribute values to be set for the user to be created. You can create
214
+ # a user without specifying any attributes other than Username. However,
215
+ # any attributes that you specify as required (in CreateUserPool or in
216
+ # the **Attributes** tab of the console) must be supplied either by you
217
+ # (in your call to AdminCreateUser) or by the user (when he or she signs
218
+ # up in response to your welcome message).
219
+ #
220
+ # To send a message inviting the user to sign up, you must specify the
221
+ # user's email address or phone number. This can be done in your call
222
+ # to AdminCreateUser or in the **Users** tab of the Amazon Cognito
223
+ # console for managing your user pools.
224
+ #
225
+ # In your call to AdminCreateUser, you can set the email\_verified
226
+ # attribute to True, and you can set the phone\_number\_verified
227
+ # attribute to True. (You cannot do this by calling other operations
228
+ # such as AdminUpdateUserAttributes.)
229
+ #
230
+ # * **email**\: The email address of the user to whom the message that
231
+ # contains the code and username will be sent. Required if the
232
+ # email\_verified attribute is set to True, or if "EMAIL" is
233
+ # specified in the DesiredDeliveryMediums parameter.
234
+ #
235
+ # * **phone\_number**\: The phone number of the user to whom the message
236
+ # that contains the code and username will be sent. Required if the
237
+ # phone\_number\_verified attribute is set to True, or if "SMS" is
238
+ # specified in the DesiredDeliveryMediums parameter.
239
+ # @option params [Array<Types::AttributeType>] :validation_data
240
+ # The user's validation data. This is an array of name-value pairs that
241
+ # contain user attributes and attribute values that you can use for
242
+ # custom validation, such as restricting the types of user accounts that
243
+ # can be registered. For example, you might choose to allow or disallow
244
+ # user sign-up based on the user's domain.
245
+ #
246
+ # To configure custom validation, you must create a Pre Sign-up Lambda
247
+ # trigger for the user pool as described in the Amazon Cognito Developer
248
+ # Guide. The Lambda trigger receives the validation data and uses it in
249
+ # the validation process.
250
+ #
251
+ # The user's validation data is not persisted.
252
+ # @option params [String] :temporary_password
253
+ # The user's temporary password. This password must conform to the
254
+ # password policy that you specified when you created the user pool.
255
+ #
256
+ # The temporary password is valid only once. To complete the Admin
257
+ # Create User flow, the user must enter the temporary password in the
258
+ # sign-in page along with a new password to be used in all future
259
+ # sign-ins.
260
+ #
261
+ # This parameter is not required. If you do not specify a value, Amazon
262
+ # Cognito generates one for you.
263
+ #
264
+ # The temporary password can only be used until the user account
265
+ # expiration limit that you specified when you created the user pool. To
266
+ # reset the account after that time limit, you must call AdminCreateUser
267
+ # again, specifying "RESEND" for the MessageAction parameter.
268
+ # @option params [Boolean] :force_alias_creation
269
+ # This parameter is only used if the phone\_number\_verified or
270
+ # email\_verified attribute is set to True. Otherwise, it is ignored.
271
+ #
272
+ # If this parameter is set to True and the phone number or email address
273
+ # specified in the UserAttributes parameter already exists as an alias
274
+ # with a different user, the API call will migrate the alias from the
275
+ # previous user to the newly created user. The previous user will no
276
+ # longer be able to log in using that alias.
277
+ #
278
+ # If this parameter is set to False, the API throws an
279
+ # AliasExistsException error if the alias already exists. The default
280
+ # value is False.
281
+ # @option params [String] :message_action
282
+ # Set to "RESEND" to resend the invitation message to a user that
283
+ # already exists and reset the expiration limit on the user's account.
284
+ # Set to "SUPPRESS" to suppress sending the message. Only one value
285
+ # can be specified.
286
+ # @option params [Array<String>] :desired_delivery_mediums
287
+ # Specify "EMAIL" if email will be used to send the welcome message.
288
+ # Specify "SMS" if the phone number will be used. The default value is
289
+ # "SMS". More than one value can be specified.
290
+ # @return [Types::AdminCreateUserResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
291
+ #
292
+ # * {Types::AdminCreateUserResponse#user #User} => Types::UserType
293
+ #
294
+ # @example Request syntax with placeholder values
295
+ # resp = client.admin_create_user({
296
+ # user_pool_id: "UserPoolIdType", # required
297
+ # username: "UsernameType", # required
298
+ # user_attributes: [
299
+ # {
300
+ # name: "AttributeNameType", # required
301
+ # value: "AttributeValueType",
302
+ # },
303
+ # ],
304
+ # validation_data: [
305
+ # {
306
+ # name: "AttributeNameType", # required
307
+ # value: "AttributeValueType",
308
+ # },
309
+ # ],
310
+ # temporary_password: "PasswordType",
311
+ # force_alias_creation: false,
312
+ # message_action: "RESEND", # accepts RESEND, SUPPRESS
313
+ # desired_delivery_mediums: ["SMS"], # accepts SMS, EMAIL
314
+ # })
315
+ #
316
+ # @example Response structure
317
+ # resp.user.username #=> String
318
+ # resp.user.attributes #=> Array
319
+ # resp.user.attributes[0].name #=> String
320
+ # resp.user.attributes[0].value #=> String
321
+ # resp.user.user_create_date #=> Time
322
+ # resp.user.user_last_modified_date #=> Time
323
+ # resp.user.enabled #=> Boolean
324
+ # resp.user.user_status #=> String, one of "UNCONFIRMED", "CONFIRMED", "ARCHIVED", "COMPROMISED", "UNKNOWN", "RESET_REQUIRED", "FORCE_CHANGE_PASSWORD"
325
+ # resp.user.mfa_options #=> Array
326
+ # resp.user.mfa_options[0].delivery_medium #=> String, one of "SMS", "EMAIL"
327
+ # resp.user.mfa_options[0].attribute_name #=> String
328
+ # @overload admin_create_user(params = {})
329
+ # @param [Hash] params ({})
330
+ def admin_create_user(params = {}, options = {})
331
+ req = build_request(:admin_create_user, params)
332
+ req.send_request(options)
333
+ end
334
+
335
+ # Deletes a user as an administrator. Works on any user.
336
+ # @option params [required, String] :user_pool_id
337
+ # The user pool ID for the user pool where you want to delete the user.
338
+ # @option params [required, String] :username
339
+ # The user name of the user you wish to delete.
340
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
341
+ #
342
+ # @example Request syntax with placeholder values
343
+ # resp = client.admin_delete_user({
344
+ # user_pool_id: "UserPoolIdType", # required
345
+ # username: "UsernameType", # required
346
+ # })
347
+ # @overload admin_delete_user(params = {})
348
+ # @param [Hash] params ({})
349
+ def admin_delete_user(params = {}, options = {})
350
+ req = build_request(:admin_delete_user, params)
351
+ req.send_request(options)
352
+ end
353
+
354
+ # Deletes the user attributes in a user pool as an administrator. Works
355
+ # on any user.
356
+ # @option params [required, String] :user_pool_id
357
+ # The user pool ID for the user pool where you want to delete user
358
+ # attributes.
359
+ # @option params [required, String] :username
360
+ # The user name of the user from which you would like to delete
361
+ # attributes.
362
+ # @option params [required, Array<String>] :user_attribute_names
363
+ # An array of strings representing the user attribute names you wish to
364
+ # delete.
365
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
366
+ #
367
+ # @example Request syntax with placeholder values
368
+ # resp = client.admin_delete_user_attributes({
369
+ # user_pool_id: "UserPoolIdType", # required
370
+ # username: "UsernameType", # required
371
+ # user_attribute_names: ["AttributeNameType"], # required
372
+ # })
373
+ # @overload admin_delete_user_attributes(params = {})
374
+ # @param [Hash] params ({})
375
+ def admin_delete_user_attributes(params = {}, options = {})
376
+ req = build_request(:admin_delete_user_attributes, params)
377
+ req.send_request(options)
378
+ end
379
+
380
+ # Disables the specified user as an administrator. Works on any user.
381
+ # @option params [required, String] :user_pool_id
382
+ # The user pool ID for the user pool where you want to disable the user.
383
+ # @option params [required, String] :username
384
+ # The user name of the user you wish to disable.
385
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
386
+ #
387
+ # @example Request syntax with placeholder values
388
+ # resp = client.admin_disable_user({
389
+ # user_pool_id: "UserPoolIdType", # required
390
+ # username: "UsernameType", # required
391
+ # })
392
+ # @overload admin_disable_user(params = {})
393
+ # @param [Hash] params ({})
394
+ def admin_disable_user(params = {}, options = {})
395
+ req = build_request(:admin_disable_user, params)
396
+ req.send_request(options)
397
+ end
398
+
399
+ # Enables the specified user as an administrator. Works on any user.
400
+ # @option params [required, String] :user_pool_id
401
+ # The user pool ID for the user pool where you want to enable the user.
402
+ # @option params [required, String] :username
403
+ # The user name of the user you wish to ebable.
404
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
405
+ #
406
+ # @example Request syntax with placeholder values
407
+ # resp = client.admin_enable_user({
408
+ # user_pool_id: "UserPoolIdType", # required
409
+ # username: "UsernameType", # required
410
+ # })
411
+ # @overload admin_enable_user(params = {})
412
+ # @param [Hash] params ({})
413
+ def admin_enable_user(params = {}, options = {})
414
+ req = build_request(:admin_enable_user, params)
415
+ req.send_request(options)
416
+ end
417
+
418
+ # Forgets the device, as an administrator.
419
+ # @option params [required, String] :user_pool_id
420
+ # The user pool ID.
421
+ # @option params [required, String] :username
422
+ # The user name.
423
+ # @option params [required, String] :device_key
424
+ # The device key.
425
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
426
+ #
427
+ # @example Request syntax with placeholder values
428
+ # resp = client.admin_forget_device({
429
+ # user_pool_id: "UserPoolIdType", # required
430
+ # username: "UsernameType", # required
431
+ # device_key: "DeviceKeyType", # required
432
+ # })
433
+ # @overload admin_forget_device(params = {})
434
+ # @param [Hash] params ({})
435
+ def admin_forget_device(params = {}, options = {})
436
+ req = build_request(:admin_forget_device, params)
437
+ req.send_request(options)
438
+ end
439
+
440
+ # Gets the device, as an administrator.
441
+ # @option params [required, String] :device_key
442
+ # The device key.
443
+ # @option params [required, String] :user_pool_id
444
+ # The user pool ID.
445
+ # @option params [required, String] :username
446
+ # The user name.
447
+ # @return [Types::AdminGetDeviceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
448
+ #
449
+ # * {Types::AdminGetDeviceResponse#device #Device} => Types::DeviceType
450
+ #
451
+ # @example Request syntax with placeholder values
452
+ # resp = client.admin_get_device({
453
+ # device_key: "DeviceKeyType", # required
454
+ # user_pool_id: "UserPoolIdType", # required
455
+ # username: "UsernameType", # required
456
+ # })
457
+ #
458
+ # @example Response structure
459
+ # resp.device.device_key #=> String
460
+ # resp.device.device_attributes #=> Array
461
+ # resp.device.device_attributes[0].name #=> String
462
+ # resp.device.device_attributes[0].value #=> String
463
+ # resp.device.device_create_date #=> Time
464
+ # resp.device.device_last_modified_date #=> Time
465
+ # resp.device.device_last_authenticated_date #=> Time
466
+ # @overload admin_get_device(params = {})
467
+ # @param [Hash] params ({})
468
+ def admin_get_device(params = {}, options = {})
469
+ req = build_request(:admin_get_device, params)
470
+ req.send_request(options)
471
+ end
472
+
473
+ # Gets the specified user by user name in a user pool as an
474
+ # administrator. Works on any user.
475
+ # @option params [required, String] :user_pool_id
476
+ # The user pool ID for the user pool where you want to get information
477
+ # about the user.
478
+ # @option params [required, String] :username
479
+ # The user name of the user you wish to retrieve.
480
+ # @return [Types::AdminGetUserResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
481
+ #
482
+ # * {Types::AdminGetUserResponse#username #Username} => String
483
+ # * {Types::AdminGetUserResponse#user_attributes #UserAttributes} => Array&lt;Types::AttributeType&gt;
484
+ # * {Types::AdminGetUserResponse#user_create_date #UserCreateDate} => Time
485
+ # * {Types::AdminGetUserResponse#user_last_modified_date #UserLastModifiedDate} => Time
486
+ # * {Types::AdminGetUserResponse#enabled #Enabled} => Boolean
487
+ # * {Types::AdminGetUserResponse#user_status #UserStatus} => String
488
+ # * {Types::AdminGetUserResponse#mfa_options #MFAOptions} => Array&lt;Types::MFAOptionType&gt;
489
+ #
490
+ # @example Request syntax with placeholder values
491
+ # resp = client.admin_get_user({
492
+ # user_pool_id: "UserPoolIdType", # required
493
+ # username: "UsernameType", # required
494
+ # })
495
+ #
496
+ # @example Response structure
497
+ # resp.username #=> String
498
+ # resp.user_attributes #=> Array
499
+ # resp.user_attributes[0].name #=> String
500
+ # resp.user_attributes[0].value #=> String
501
+ # resp.user_create_date #=> Time
502
+ # resp.user_last_modified_date #=> Time
503
+ # resp.enabled #=> Boolean
504
+ # resp.user_status #=> String, one of "UNCONFIRMED", "CONFIRMED", "ARCHIVED", "COMPROMISED", "UNKNOWN", "RESET_REQUIRED", "FORCE_CHANGE_PASSWORD"
505
+ # resp.mfa_options #=> Array
506
+ # resp.mfa_options[0].delivery_medium #=> String, one of "SMS", "EMAIL"
507
+ # resp.mfa_options[0].attribute_name #=> String
508
+ # @overload admin_get_user(params = {})
509
+ # @param [Hash] params ({})
510
+ def admin_get_user(params = {}, options = {})
511
+ req = build_request(:admin_get_user, params)
512
+ req.send_request(options)
513
+ end
514
+
515
+ # Initiates the authentication flow, as an administrator.
516
+ # @option params [required, String] :user_pool_id
517
+ # The ID of the Amazon Cognito user pool.
518
+ # @option params [required, String] :client_id
519
+ # The client app ID.
520
+ # @option params [required, String] :auth_flow
521
+ # The authentication flow.
522
+ # @option params [Hash<String,String>] :auth_parameters
523
+ # The authentication parameters.
524
+ # @option params [Hash<String,String>] :client_metadata
525
+ # The client app metadata.
526
+ # @return [Types::AdminInitiateAuthResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
527
+ #
528
+ # * {Types::AdminInitiateAuthResponse#challenge_name #ChallengeName} => String
529
+ # * {Types::AdminInitiateAuthResponse#session #Session} => String
530
+ # * {Types::AdminInitiateAuthResponse#challenge_parameters #ChallengeParameters} => Hash&lt;String,String&gt;
531
+ # * {Types::AdminInitiateAuthResponse#authentication_result #AuthenticationResult} => Types::AuthenticationResultType
532
+ #
533
+ # @example Request syntax with placeholder values
534
+ # resp = client.admin_initiate_auth({
535
+ # user_pool_id: "UserPoolIdType", # required
536
+ # client_id: "ClientIdType", # required
537
+ # auth_flow: "USER_SRP_AUTH", # required, accepts USER_SRP_AUTH, REFRESH_TOKEN_AUTH, REFRESH_TOKEN, CUSTOM_AUTH, ADMIN_NO_SRP_AUTH
538
+ # auth_parameters: {
539
+ # "StringType" => "StringType",
540
+ # },
541
+ # client_metadata: {
542
+ # "StringType" => "StringType",
543
+ # },
544
+ # })
545
+ #
546
+ # @example Response structure
547
+ # resp.challenge_name #=> String, one of "SMS_MFA", "PASSWORD_VERIFIER", "CUSTOM_CHALLENGE", "DEVICE_SRP_AUTH", "DEVICE_PASSWORD_VERIFIER", "ADMIN_NO_SRP_AUTH", "NEW_PASSWORD_REQUIRED"
548
+ # resp.session #=> String
549
+ # resp.challenge_parameters #=> Hash
550
+ # resp.challenge_parameters["StringType"] #=> String
551
+ # resp.authentication_result.access_token #=> String
552
+ # resp.authentication_result.expires_in #=> Integer
553
+ # resp.authentication_result.token_type #=> String
554
+ # resp.authentication_result.refresh_token #=> String
555
+ # resp.authentication_result.id_token #=> String
556
+ # resp.authentication_result.new_device_metadata.device_key #=> String
557
+ # resp.authentication_result.new_device_metadata.device_group_key #=> String
558
+ # @overload admin_initiate_auth(params = {})
559
+ # @param [Hash] params ({})
560
+ def admin_initiate_auth(params = {}, options = {})
561
+ req = build_request(:admin_initiate_auth, params)
562
+ req.send_request(options)
563
+ end
564
+
565
+ # Lists devices, as an administrator.
566
+ # @option params [required, String] :user_pool_id
567
+ # The user pool ID.
568
+ # @option params [required, String] :username
569
+ # The user name.
570
+ # @option params [Integer] :limit
571
+ # The limit of the devices request.
572
+ # @option params [String] :pagination_token
573
+ # The pagination token.
574
+ # @return [Types::AdminListDevicesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
575
+ #
576
+ # * {Types::AdminListDevicesResponse#devices #Devices} => Array&lt;Types::DeviceType&gt;
577
+ # * {Types::AdminListDevicesResponse#pagination_token #PaginationToken} => String
578
+ #
579
+ # @example Request syntax with placeholder values
580
+ # resp = client.admin_list_devices({
581
+ # user_pool_id: "UserPoolIdType", # required
582
+ # username: "UsernameType", # required
583
+ # limit: 1,
584
+ # pagination_token: "SearchPaginationTokenType",
585
+ # })
586
+ #
587
+ # @example Response structure
588
+ # resp.devices #=> Array
589
+ # resp.devices[0].device_key #=> String
590
+ # resp.devices[0].device_attributes #=> Array
591
+ # resp.devices[0].device_attributes[0].name #=> String
592
+ # resp.devices[0].device_attributes[0].value #=> String
593
+ # resp.devices[0].device_create_date #=> Time
594
+ # resp.devices[0].device_last_modified_date #=> Time
595
+ # resp.devices[0].device_last_authenticated_date #=> Time
596
+ # resp.pagination_token #=> String
597
+ # @overload admin_list_devices(params = {})
598
+ # @param [Hash] params ({})
599
+ def admin_list_devices(params = {}, options = {})
600
+ req = build_request(:admin_list_devices, params)
601
+ req.send_request(options)
602
+ end
603
+
604
+ # Resets the specified user's password in a user pool as an
605
+ # administrator. Works on any user.
606
+ #
607
+ # When a developer calls this API, the current password is invalidated,
608
+ # so it must be changed. If a user tries to sign in after the API is
609
+ # called, the app will get a PasswordResetRequiredException exception
610
+ # back and should direct the user down the flow to reset the password,
611
+ # which is the same as the forgot password flow. In addition, if the
612
+ # user pool has phone verification selected and a verified phone number
613
+ # exists for the user, or if email verification is selected and a
614
+ # verified email exists for the user, calling this API will also result
615
+ # in sending a message to the end user with the code to change their
616
+ # password.
617
+ # @option params [required, String] :user_pool_id
618
+ # The user pool ID for the user pool where you want to reset the user's
619
+ # password.
620
+ # @option params [required, String] :username
621
+ # The user name of the user whose password you wish to reset.
622
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
623
+ #
624
+ # @example Request syntax with placeholder values
625
+ # resp = client.admin_reset_user_password({
626
+ # user_pool_id: "UserPoolIdType", # required
627
+ # username: "UsernameType", # required
628
+ # })
629
+ # @overload admin_reset_user_password(params = {})
630
+ # @param [Hash] params ({})
631
+ def admin_reset_user_password(params = {}, options = {})
632
+ req = build_request(:admin_reset_user_password, params)
633
+ req.send_request(options)
634
+ end
635
+
636
+ # Responds to an authentication challenge, as an administrator.
637
+ # @option params [required, String] :user_pool_id
638
+ # The ID of the Amazon Cognito user pool.
639
+ # @option params [required, String] :client_id
640
+ # The client ID.
641
+ # @option params [required, String] :challenge_name
642
+ # The name of the challenge.
643
+ # @option params [Hash<String,String>] :challenge_responses
644
+ # The challenge response.
645
+ # @option params [String] :session
646
+ # The session.
647
+ # @return [Types::AdminRespondToAuthChallengeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
648
+ #
649
+ # * {Types::AdminRespondToAuthChallengeResponse#challenge_name #ChallengeName} => String
650
+ # * {Types::AdminRespondToAuthChallengeResponse#session #Session} => String
651
+ # * {Types::AdminRespondToAuthChallengeResponse#challenge_parameters #ChallengeParameters} => Hash&lt;String,String&gt;
652
+ # * {Types::AdminRespondToAuthChallengeResponse#authentication_result #AuthenticationResult} => Types::AuthenticationResultType
653
+ #
654
+ # @example Request syntax with placeholder values
655
+ # resp = client.admin_respond_to_auth_challenge({
656
+ # user_pool_id: "UserPoolIdType", # required
657
+ # client_id: "ClientIdType", # required
658
+ # challenge_name: "SMS_MFA", # required, accepts SMS_MFA, PASSWORD_VERIFIER, CUSTOM_CHALLENGE, DEVICE_SRP_AUTH, DEVICE_PASSWORD_VERIFIER, ADMIN_NO_SRP_AUTH, NEW_PASSWORD_REQUIRED
659
+ # challenge_responses: {
660
+ # "StringType" => "StringType",
661
+ # },
662
+ # session: "SessionType",
663
+ # })
664
+ #
665
+ # @example Response structure
666
+ # resp.challenge_name #=> String, one of "SMS_MFA", "PASSWORD_VERIFIER", "CUSTOM_CHALLENGE", "DEVICE_SRP_AUTH", "DEVICE_PASSWORD_VERIFIER", "ADMIN_NO_SRP_AUTH", "NEW_PASSWORD_REQUIRED"
667
+ # resp.session #=> String
668
+ # resp.challenge_parameters #=> Hash
669
+ # resp.challenge_parameters["StringType"] #=> String
670
+ # resp.authentication_result.access_token #=> String
671
+ # resp.authentication_result.expires_in #=> Integer
672
+ # resp.authentication_result.token_type #=> String
673
+ # resp.authentication_result.refresh_token #=> String
674
+ # resp.authentication_result.id_token #=> String
675
+ # resp.authentication_result.new_device_metadata.device_key #=> String
676
+ # resp.authentication_result.new_device_metadata.device_group_key #=> String
677
+ # @overload admin_respond_to_auth_challenge(params = {})
678
+ # @param [Hash] params ({})
679
+ def admin_respond_to_auth_challenge(params = {}, options = {})
680
+ req = build_request(:admin_respond_to_auth_challenge, params)
681
+ req.send_request(options)
682
+ end
683
+
684
+ # Sets all the user settings for a specified user name. Works on any
685
+ # user.
686
+ # @option params [required, String] :user_pool_id
687
+ # The user pool ID for the user pool where you want to set the user's
688
+ # settings, such as MFA options.
689
+ # @option params [required, String] :username
690
+ # The user name of the user for whom you wish to set user settings.
691
+ # @option params [required, Array<Types::MFAOptionType>] :mfa_options
692
+ # Specifies the options for MFA (e.g., email or phone number).
693
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
694
+ #
695
+ # @example Request syntax with placeholder values
696
+ # resp = client.admin_set_user_settings({
697
+ # user_pool_id: "UserPoolIdType", # required
698
+ # username: "UsernameType", # required
699
+ # mfa_options: [ # required
700
+ # {
701
+ # delivery_medium: "SMS", # accepts SMS, EMAIL
702
+ # attribute_name: "AttributeNameType",
703
+ # },
704
+ # ],
705
+ # })
706
+ # @overload admin_set_user_settings(params = {})
707
+ # @param [Hash] params ({})
708
+ def admin_set_user_settings(params = {}, options = {})
709
+ req = build_request(:admin_set_user_settings, params)
710
+ req.send_request(options)
711
+ end
712
+
713
+ # Updates the device status as an administrator.
714
+ # @option params [required, String] :user_pool_id
715
+ # The user pool ID&gt;
716
+ # @option params [required, String] :username
717
+ # The user name.
718
+ # @option params [required, String] :device_key
719
+ # The device key.
720
+ # @option params [String] :device_remembered_status
721
+ # The status indicating whether a device has been remembered or not.
722
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
723
+ #
724
+ # @example Request syntax with placeholder values
725
+ # resp = client.admin_update_device_status({
726
+ # user_pool_id: "UserPoolIdType", # required
727
+ # username: "UsernameType", # required
728
+ # device_key: "DeviceKeyType", # required
729
+ # device_remembered_status: "remembered", # accepts remembered, not_remembered
730
+ # })
731
+ # @overload admin_update_device_status(params = {})
732
+ # @param [Hash] params ({})
733
+ def admin_update_device_status(params = {}, options = {})
734
+ req = build_request(:admin_update_device_status, params)
735
+ req.send_request(options)
736
+ end
737
+
738
+ # Updates the specified user's attributes, including developer
739
+ # attributes, as an administrator. Works on any user.
740
+ # @option params [required, String] :user_pool_id
741
+ # The user pool ID for the user pool where you want to update user
742
+ # attributes.
743
+ # @option params [required, String] :username
744
+ # The user name of the user for whom you want to update user attributes.
745
+ # @option params [required, Array<Types::AttributeType>] :user_attributes
746
+ # An array of name-value pairs representing user attributes.
747
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
748
+ #
749
+ # @example Request syntax with placeholder values
750
+ # resp = client.admin_update_user_attributes({
751
+ # user_pool_id: "UserPoolIdType", # required
752
+ # username: "UsernameType", # required
753
+ # user_attributes: [ # required
754
+ # {
755
+ # name: "AttributeNameType", # required
756
+ # value: "AttributeValueType",
757
+ # },
758
+ # ],
759
+ # })
760
+ # @overload admin_update_user_attributes(params = {})
761
+ # @param [Hash] params ({})
762
+ def admin_update_user_attributes(params = {}, options = {})
763
+ req = build_request(:admin_update_user_attributes, params)
764
+ req.send_request(options)
765
+ end
766
+
767
+ # Signs out users from all devices, as an administrator.
768
+ # @option params [required, String] :user_pool_id
769
+ # The user pool ID.
770
+ # @option params [required, String] :username
771
+ # The user name.
772
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
773
+ #
774
+ # @example Request syntax with placeholder values
775
+ # resp = client.admin_user_global_sign_out({
776
+ # user_pool_id: "UserPoolIdType", # required
777
+ # username: "UsernameType", # required
778
+ # })
779
+ # @overload admin_user_global_sign_out(params = {})
780
+ # @param [Hash] params ({})
781
+ def admin_user_global_sign_out(params = {}, options = {})
782
+ req = build_request(:admin_user_global_sign_out, params)
783
+ req.send_request(options)
784
+ end
785
+
786
+ # Changes the password for a specified user in a user pool.
787
+ # @option params [required, String] :previous_password
788
+ # The old password in the change password request.
789
+ # @option params [required, String] :proposed_password
790
+ # The new password in the change password request.
791
+ # @option params [String] :access_token
792
+ # The access token in the change password request.
793
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
794
+ #
795
+ # @example Request syntax with placeholder values
796
+ # resp = client.change_password({
797
+ # previous_password: "PasswordType", # required
798
+ # proposed_password: "PasswordType", # required
799
+ # access_token: "TokenModelType",
800
+ # })
801
+ # @overload change_password(params = {})
802
+ # @param [Hash] params ({})
803
+ def change_password(params = {}, options = {})
804
+ req = build_request(:change_password, params)
805
+ req.send_request(options)
806
+ end
807
+
808
+ # Confirms tracking of the device. This API call is the call that beings
809
+ # device tracking.
810
+ # @option params [required, String] :access_token
811
+ # The access token.
812
+ # @option params [required, String] :device_key
813
+ # The device key.
814
+ # @option params [Types::DeviceSecretVerifierConfigType] :device_secret_verifier_config
815
+ # The configuration of the device secret verifier.
816
+ # @option params [String] :device_name
817
+ # The device name.
818
+ # @return [Types::ConfirmDeviceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
819
+ #
820
+ # * {Types::ConfirmDeviceResponse#user_confirmation_necessary #UserConfirmationNecessary} => Boolean
821
+ #
822
+ # @example Request syntax with placeholder values
823
+ # resp = client.confirm_device({
824
+ # access_token: "TokenModelType", # required
825
+ # device_key: "DeviceKeyType", # required
826
+ # device_secret_verifier_config: {
827
+ # password_verifier: "StringType",
828
+ # salt: "StringType",
829
+ # },
830
+ # device_name: "DeviceNameType",
831
+ # })
832
+ #
833
+ # @example Response structure
834
+ # resp.user_confirmation_necessary #=> Boolean
835
+ # @overload confirm_device(params = {})
836
+ # @param [Hash] params ({})
837
+ def confirm_device(params = {}, options = {})
838
+ req = build_request(:confirm_device, params)
839
+ req.send_request(options)
840
+ end
841
+
842
+ # Allows a user to enter a code provided when they reset their password
843
+ # to update their password.
844
+ # @option params [required, String] :client_id
845
+ # The ID of the client associated with the user pool.
846
+ # @option params [String] :secret_hash
847
+ # A keyed-hash message authentication code (HMAC) calculated using the
848
+ # secret key of a user pool client and username plus the client ID in
849
+ # the message.
850
+ # @option params [required, String] :username
851
+ # The user name of the user for whom you want to enter a code to
852
+ # retrieve a forgotten password.
853
+ # @option params [required, String] :confirmation_code
854
+ # The confirmation code sent by a user's request to retrieve a
855
+ # forgotten password.
856
+ # @option params [required, String] :password
857
+ # The password sent by sent by a user's request to retrieve a forgotten
858
+ # password.
859
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
860
+ #
861
+ # @example Request syntax with placeholder values
862
+ # resp = client.confirm_forgot_password({
863
+ # client_id: "ClientIdType", # required
864
+ # secret_hash: "SecretHashType",
865
+ # username: "UsernameType", # required
866
+ # confirmation_code: "ConfirmationCodeType", # required
867
+ # password: "PasswordType", # required
868
+ # })
869
+ # @overload confirm_forgot_password(params = {})
870
+ # @param [Hash] params ({})
871
+ def confirm_forgot_password(params = {}, options = {})
872
+ req = build_request(:confirm_forgot_password, params)
873
+ req.send_request(options)
874
+ end
875
+
876
+ # Confirms registration of a user and handles the existing alias from a
877
+ # previous user.
878
+ # @option params [required, String] :client_id
879
+ # The ID of the client associated with the user pool.
880
+ # @option params [String] :secret_hash
881
+ # A keyed-hash message authentication code (HMAC) calculated using the
882
+ # secret key of a user pool client and username plus the client ID in
883
+ # the message.
884
+ # @option params [required, String] :username
885
+ # The user name of the user whose registration you wish to confirm.
886
+ # @option params [required, String] :confirmation_code
887
+ # The confirmation code sent by a user's request to confirm
888
+ # registration.
889
+ # @option params [Boolean] :force_alias_creation
890
+ # Boolean to be specified to force user confirmation irrespective of
891
+ # existing alias. By default set to False. If this parameter is set to
892
+ # True and the phone number/email used for sign up confirmation already
893
+ # exists as an alias with a different user, the API call will migrate
894
+ # the alias from the previous user to the newly created user being
895
+ # confirmed. If set to False, the API will throw an
896
+ # **AliasExistsException** error.
897
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
898
+ #
899
+ # @example Request syntax with placeholder values
900
+ # resp = client.confirm_sign_up({
901
+ # client_id: "ClientIdType", # required
902
+ # secret_hash: "SecretHashType",
903
+ # username: "UsernameType", # required
904
+ # confirmation_code: "ConfirmationCodeType", # required
905
+ # force_alias_creation: false,
906
+ # })
907
+ # @overload confirm_sign_up(params = {})
908
+ # @param [Hash] params ({})
909
+ def confirm_sign_up(params = {}, options = {})
910
+ req = build_request(:confirm_sign_up, params)
911
+ req.send_request(options)
912
+ end
913
+
914
+ # Creates the user import job.
915
+ # @option params [required, String] :job_name
916
+ # The job name for the user import job.
917
+ # @option params [required, String] :user_pool_id
918
+ # The user pool ID for the user pool that the users are being imported
919
+ # into.
920
+ # @option params [required, String] :cloud_watch_logs_role_arn
921
+ # The role ARN for the Amazon CloudWatch Logging role for the user
922
+ # import job.
923
+ # @return [Types::CreateUserImportJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
924
+ #
925
+ # * {Types::CreateUserImportJobResponse#user_import_job #UserImportJob} => Types::UserImportJobType
926
+ #
927
+ # @example Request syntax with placeholder values
928
+ # resp = client.create_user_import_job({
929
+ # job_name: "UserImportJobNameType", # required
930
+ # user_pool_id: "UserPoolIdType", # required
931
+ # cloud_watch_logs_role_arn: "ArnType", # required
932
+ # })
933
+ #
934
+ # @example Response structure
935
+ # resp.user_import_job.job_name #=> String
936
+ # resp.user_import_job.job_id #=> String
937
+ # resp.user_import_job.user_pool_id #=> String
938
+ # resp.user_import_job.pre_signed_url #=> String
939
+ # resp.user_import_job.creation_date #=> Time
940
+ # resp.user_import_job.start_date #=> Time
941
+ # resp.user_import_job.completion_date #=> Time
942
+ # resp.user_import_job.status #=> String, one of "Created", "Pending", "InProgress", "Stopping", "Expired", "Stopped", "Failed", "Succeeded"
943
+ # resp.user_import_job.cloud_watch_logs_role_arn #=> String
944
+ # resp.user_import_job.imported_users #=> Integer
945
+ # resp.user_import_job.skipped_users #=> Integer
946
+ # resp.user_import_job.failed_users #=> Integer
947
+ # resp.user_import_job.completion_message #=> String
948
+ # @overload create_user_import_job(params = {})
949
+ # @param [Hash] params ({})
950
+ def create_user_import_job(params = {}, options = {})
951
+ req = build_request(:create_user_import_job, params)
952
+ req.send_request(options)
953
+ end
954
+
955
+ # Creates a new Amazon Cognito user pool and sets the password policy
956
+ # for the pool.
957
+ # @option params [required, String] :pool_name
958
+ # A string used to name the user pool.
959
+ # @option params [Types::UserPoolPolicyType] :policies
960
+ # The policies associated with the new user pool.
961
+ # @option params [Types::LambdaConfigType] :lambda_config
962
+ # The Lambda trigger configuration information for the new user pool.
963
+ # @option params [Array<String>] :auto_verified_attributes
964
+ # The attributes to be auto-verified. Possible values: **email**,
965
+ # **phone\_number**.
966
+ # @option params [Array<String>] :alias_attributes
967
+ # Attributes supported as an alias for this user pool. Possible values:
968
+ # **phone\_number**, **email**, or **preferred\_username**.
969
+ # @option params [String] :sms_verification_message
970
+ # A string representing the SMS verification message.
971
+ # @option params [String] :email_verification_message
972
+ # A string representing the email verification message.
973
+ # @option params [String] :email_verification_subject
974
+ # A string representing the email verification subject.
975
+ # @option params [String] :sms_authentication_message
976
+ # A string representing the SMS authentication message.
977
+ # @option params [String] :mfa_configuration
978
+ # Specifies MFA configuration details.
979
+ # @option params [Types::DeviceConfigurationType] :device_configuration
980
+ # The device configuration.
981
+ # @option params [Types::EmailConfigurationType] :email_configuration
982
+ # The email configuration.
983
+ # @option params [Types::SmsConfigurationType] :sms_configuration
984
+ # The SMS configuration.
985
+ # @option params [Types::AdminCreateUserConfigType] :admin_create_user_config
986
+ # The configuration for AdminCreateUser requests.
987
+ # @option params [Array<Types::SchemaAttributeType>] :schema
988
+ # An array of schema attributes for the new user pool. These attributes
989
+ # can be standard or custom attributes.
990
+ # @return [Types::CreateUserPoolResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
991
+ #
992
+ # * {Types::CreateUserPoolResponse#user_pool #UserPool} => Types::UserPoolType
993
+ #
994
+ # @example Request syntax with placeholder values
995
+ # resp = client.create_user_pool({
996
+ # pool_name: "UserPoolNameType", # required
997
+ # policies: {
998
+ # password_policy: {
999
+ # minimum_length: 1,
1000
+ # require_uppercase: false,
1001
+ # require_lowercase: false,
1002
+ # require_numbers: false,
1003
+ # require_symbols: false,
1004
+ # },
1005
+ # },
1006
+ # lambda_config: {
1007
+ # pre_sign_up: "ArnType",
1008
+ # custom_message: "ArnType",
1009
+ # post_confirmation: "ArnType",
1010
+ # pre_authentication: "ArnType",
1011
+ # post_authentication: "ArnType",
1012
+ # define_auth_challenge: "ArnType",
1013
+ # create_auth_challenge: "ArnType",
1014
+ # verify_auth_challenge_response: "ArnType",
1015
+ # },
1016
+ # auto_verified_attributes: ["phone_number"], # accepts phone_number, email
1017
+ # alias_attributes: ["phone_number"], # accepts phone_number, email, preferred_username
1018
+ # sms_verification_message: "SmsVerificationMessageType",
1019
+ # email_verification_message: "EmailVerificationMessageType",
1020
+ # email_verification_subject: "EmailVerificationSubjectType",
1021
+ # sms_authentication_message: "SmsVerificationMessageType",
1022
+ # mfa_configuration: "OFF", # accepts OFF, ON, OPTIONAL
1023
+ # device_configuration: {
1024
+ # challenge_required_on_new_device: false,
1025
+ # device_only_remembered_on_user_prompt: false,
1026
+ # },
1027
+ # email_configuration: {
1028
+ # source_arn: "ArnType",
1029
+ # reply_to_email_address: "EmailAddressType",
1030
+ # },
1031
+ # sms_configuration: {
1032
+ # sns_caller_arn: "ArnType", # required
1033
+ # external_id: "StringType",
1034
+ # },
1035
+ # admin_create_user_config: {
1036
+ # allow_admin_create_user_only: false,
1037
+ # unused_account_validity_days: 1,
1038
+ # invite_message_template: {
1039
+ # sms_message: "SmsVerificationMessageType",
1040
+ # email_message: "EmailVerificationMessageType",
1041
+ # email_subject: "EmailVerificationSubjectType",
1042
+ # },
1043
+ # },
1044
+ # schema: [
1045
+ # {
1046
+ # name: "CustomAttributeNameType",
1047
+ # attribute_data_type: "String", # accepts String, Number, DateTime, Boolean
1048
+ # developer_only_attribute: false,
1049
+ # mutable: false,
1050
+ # required: false,
1051
+ # number_attribute_constraints: {
1052
+ # min_value: "StringType",
1053
+ # max_value: "StringType",
1054
+ # },
1055
+ # string_attribute_constraints: {
1056
+ # min_length: "StringType",
1057
+ # max_length: "StringType",
1058
+ # },
1059
+ # },
1060
+ # ],
1061
+ # })
1062
+ #
1063
+ # @example Response structure
1064
+ # resp.user_pool.id #=> String
1065
+ # resp.user_pool.name #=> String
1066
+ # resp.user_pool.policies.password_policy.minimum_length #=> Integer
1067
+ # resp.user_pool.policies.password_policy.require_uppercase #=> Boolean
1068
+ # resp.user_pool.policies.password_policy.require_lowercase #=> Boolean
1069
+ # resp.user_pool.policies.password_policy.require_numbers #=> Boolean
1070
+ # resp.user_pool.policies.password_policy.require_symbols #=> Boolean
1071
+ # resp.user_pool.lambda_config.pre_sign_up #=> String
1072
+ # resp.user_pool.lambda_config.custom_message #=> String
1073
+ # resp.user_pool.lambda_config.post_confirmation #=> String
1074
+ # resp.user_pool.lambda_config.pre_authentication #=> String
1075
+ # resp.user_pool.lambda_config.post_authentication #=> String
1076
+ # resp.user_pool.lambda_config.define_auth_challenge #=> String
1077
+ # resp.user_pool.lambda_config.create_auth_challenge #=> String
1078
+ # resp.user_pool.lambda_config.verify_auth_challenge_response #=> String
1079
+ # resp.user_pool.status #=> String, one of "Enabled", "Disabled"
1080
+ # resp.user_pool.last_modified_date #=> Time
1081
+ # resp.user_pool.creation_date #=> Time
1082
+ # resp.user_pool.schema_attributes #=> Array
1083
+ # resp.user_pool.schema_attributes[0].name #=> String
1084
+ # resp.user_pool.schema_attributes[0].attribute_data_type #=> String, one of "String", "Number", "DateTime", "Boolean"
1085
+ # resp.user_pool.schema_attributes[0].developer_only_attribute #=> Boolean
1086
+ # resp.user_pool.schema_attributes[0].mutable #=> Boolean
1087
+ # resp.user_pool.schema_attributes[0].required #=> Boolean
1088
+ # resp.user_pool.schema_attributes[0].number_attribute_constraints.min_value #=> String
1089
+ # resp.user_pool.schema_attributes[0].number_attribute_constraints.max_value #=> String
1090
+ # resp.user_pool.schema_attributes[0].string_attribute_constraints.min_length #=> String
1091
+ # resp.user_pool.schema_attributes[0].string_attribute_constraints.max_length #=> String
1092
+ # resp.user_pool.auto_verified_attributes #=> Array
1093
+ # resp.user_pool.auto_verified_attributes[0] #=> String, one of "phone_number", "email"
1094
+ # resp.user_pool.alias_attributes #=> Array
1095
+ # resp.user_pool.alias_attributes[0] #=> String, one of "phone_number", "email", "preferred_username"
1096
+ # resp.user_pool.sms_verification_message #=> String
1097
+ # resp.user_pool.email_verification_message #=> String
1098
+ # resp.user_pool.email_verification_subject #=> String
1099
+ # resp.user_pool.sms_authentication_message #=> String
1100
+ # resp.user_pool.mfa_configuration #=> String, one of "OFF", "ON", "OPTIONAL"
1101
+ # resp.user_pool.device_configuration.challenge_required_on_new_device #=> Boolean
1102
+ # resp.user_pool.device_configuration.device_only_remembered_on_user_prompt #=> Boolean
1103
+ # resp.user_pool.estimated_number_of_users #=> Integer
1104
+ # resp.user_pool.email_configuration.source_arn #=> String
1105
+ # resp.user_pool.email_configuration.reply_to_email_address #=> String
1106
+ # resp.user_pool.sms_configuration.sns_caller_arn #=> String
1107
+ # resp.user_pool.sms_configuration.external_id #=> String
1108
+ # resp.user_pool.sms_configuration_failure #=> String
1109
+ # resp.user_pool.email_configuration_failure #=> String
1110
+ # resp.user_pool.admin_create_user_config.allow_admin_create_user_only #=> Boolean
1111
+ # resp.user_pool.admin_create_user_config.unused_account_validity_days #=> Integer
1112
+ # resp.user_pool.admin_create_user_config.invite_message_template.sms_message #=> String
1113
+ # resp.user_pool.admin_create_user_config.invite_message_template.email_message #=> String
1114
+ # resp.user_pool.admin_create_user_config.invite_message_template.email_subject #=> String
1115
+ # @overload create_user_pool(params = {})
1116
+ # @param [Hash] params ({})
1117
+ def create_user_pool(params = {}, options = {})
1118
+ req = build_request(:create_user_pool, params)
1119
+ req.send_request(options)
1120
+ end
1121
+
1122
+ # Creates the user pool client.
1123
+ # @option params [required, String] :user_pool_id
1124
+ # The user pool ID for the user pool where you want to create a user
1125
+ # pool client.
1126
+ # @option params [required, String] :client_name
1127
+ # The client name for the user pool client you would like to create.
1128
+ # @option params [Boolean] :generate_secret
1129
+ # Boolean to specify whether you want to generate a secret for the user
1130
+ # pool client being created.
1131
+ # @option params [Integer] :refresh_token_validity
1132
+ # Refreshes the token validity.
1133
+ # @option params [Array<String>] :read_attributes
1134
+ # The read attributes.
1135
+ # @option params [Array<String>] :write_attributes
1136
+ # The write attributes.
1137
+ # @option params [Array<String>] :explicit_auth_flows
1138
+ # The explicit authentication flows.
1139
+ # @return [Types::CreateUserPoolClientResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1140
+ #
1141
+ # * {Types::CreateUserPoolClientResponse#user_pool_client #UserPoolClient} => Types::UserPoolClientType
1142
+ #
1143
+ # @example Request syntax with placeholder values
1144
+ # resp = client.create_user_pool_client({
1145
+ # user_pool_id: "UserPoolIdType", # required
1146
+ # client_name: "ClientNameType", # required
1147
+ # generate_secret: false,
1148
+ # refresh_token_validity: 1,
1149
+ # read_attributes: ["ClientPermissionType"],
1150
+ # write_attributes: ["ClientPermissionType"],
1151
+ # explicit_auth_flows: ["ADMIN_NO_SRP_AUTH"], # accepts ADMIN_NO_SRP_AUTH, CUSTOM_AUTH_FLOW_ONLY
1152
+ # })
1153
+ #
1154
+ # @example Response structure
1155
+ # resp.user_pool_client.user_pool_id #=> String
1156
+ # resp.user_pool_client.client_name #=> String
1157
+ # resp.user_pool_client.client_id #=> String
1158
+ # resp.user_pool_client.client_secret #=> String
1159
+ # resp.user_pool_client.last_modified_date #=> Time
1160
+ # resp.user_pool_client.creation_date #=> Time
1161
+ # resp.user_pool_client.refresh_token_validity #=> Integer
1162
+ # resp.user_pool_client.read_attributes #=> Array
1163
+ # resp.user_pool_client.read_attributes[0] #=> String
1164
+ # resp.user_pool_client.write_attributes #=> Array
1165
+ # resp.user_pool_client.write_attributes[0] #=> String
1166
+ # resp.user_pool_client.explicit_auth_flows #=> Array
1167
+ # resp.user_pool_client.explicit_auth_flows[0] #=> String, one of "ADMIN_NO_SRP_AUTH", "CUSTOM_AUTH_FLOW_ONLY"
1168
+ # @overload create_user_pool_client(params = {})
1169
+ # @param [Hash] params ({})
1170
+ def create_user_pool_client(params = {}, options = {})
1171
+ req = build_request(:create_user_pool_client, params)
1172
+ req.send_request(options)
1173
+ end
1174
+
1175
+ # Allows a user to delete one's self.
1176
+ # @option params [String] :access_token
1177
+ # The access token from a request to delete a user.
1178
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1179
+ #
1180
+ # @example Request syntax with placeholder values
1181
+ # resp = client.delete_user({
1182
+ # access_token: "TokenModelType",
1183
+ # })
1184
+ # @overload delete_user(params = {})
1185
+ # @param [Hash] params ({})
1186
+ def delete_user(params = {}, options = {})
1187
+ req = build_request(:delete_user, params)
1188
+ req.send_request(options)
1189
+ end
1190
+
1191
+ # Deletes the attributes for a user.
1192
+ # @option params [required, Array<String>] :user_attribute_names
1193
+ # An array of strings representing the user attribute names you wish to
1194
+ # delete.
1195
+ # @option params [String] :access_token
1196
+ # The access token used in the request to delete user attributes.
1197
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1198
+ #
1199
+ # @example Request syntax with placeholder values
1200
+ # resp = client.delete_user_attributes({
1201
+ # user_attribute_names: ["AttributeNameType"], # required
1202
+ # access_token: "TokenModelType",
1203
+ # })
1204
+ # @overload delete_user_attributes(params = {})
1205
+ # @param [Hash] params ({})
1206
+ def delete_user_attributes(params = {}, options = {})
1207
+ req = build_request(:delete_user_attributes, params)
1208
+ req.send_request(options)
1209
+ end
1210
+
1211
+ # Deletes the specified Amazon Cognito user pool.
1212
+ # @option params [required, String] :user_pool_id
1213
+ # The user pool ID for the user pool you want to delete.
1214
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1215
+ #
1216
+ # @example Request syntax with placeholder values
1217
+ # resp = client.delete_user_pool({
1218
+ # user_pool_id: "UserPoolIdType", # required
1219
+ # })
1220
+ # @overload delete_user_pool(params = {})
1221
+ # @param [Hash] params ({})
1222
+ def delete_user_pool(params = {}, options = {})
1223
+ req = build_request(:delete_user_pool, params)
1224
+ req.send_request(options)
1225
+ end
1226
+
1227
+ # Allows the developer to delete the user pool client.
1228
+ # @option params [required, String] :user_pool_id
1229
+ # The user pool ID for the user pool where you want to delete the
1230
+ # client.
1231
+ # @option params [required, String] :client_id
1232
+ # The ID of the client associated with the user pool.
1233
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1234
+ #
1235
+ # @example Request syntax with placeholder values
1236
+ # resp = client.delete_user_pool_client({
1237
+ # user_pool_id: "UserPoolIdType", # required
1238
+ # client_id: "ClientIdType", # required
1239
+ # })
1240
+ # @overload delete_user_pool_client(params = {})
1241
+ # @param [Hash] params ({})
1242
+ def delete_user_pool_client(params = {}, options = {})
1243
+ req = build_request(:delete_user_pool_client, params)
1244
+ req.send_request(options)
1245
+ end
1246
+
1247
+ # Describes the user import job.
1248
+ # @option params [required, String] :user_pool_id
1249
+ # The user pool ID for the user pool that the users are being imported
1250
+ # into.
1251
+ # @option params [required, String] :job_id
1252
+ # The job ID for the user import job.
1253
+ # @return [Types::DescribeUserImportJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1254
+ #
1255
+ # * {Types::DescribeUserImportJobResponse#user_import_job #UserImportJob} => Types::UserImportJobType
1256
+ #
1257
+ # @example Request syntax with placeholder values
1258
+ # resp = client.describe_user_import_job({
1259
+ # user_pool_id: "UserPoolIdType", # required
1260
+ # job_id: "UserImportJobIdType", # required
1261
+ # })
1262
+ #
1263
+ # @example Response structure
1264
+ # resp.user_import_job.job_name #=> String
1265
+ # resp.user_import_job.job_id #=> String
1266
+ # resp.user_import_job.user_pool_id #=> String
1267
+ # resp.user_import_job.pre_signed_url #=> String
1268
+ # resp.user_import_job.creation_date #=> Time
1269
+ # resp.user_import_job.start_date #=> Time
1270
+ # resp.user_import_job.completion_date #=> Time
1271
+ # resp.user_import_job.status #=> String, one of "Created", "Pending", "InProgress", "Stopping", "Expired", "Stopped", "Failed", "Succeeded"
1272
+ # resp.user_import_job.cloud_watch_logs_role_arn #=> String
1273
+ # resp.user_import_job.imported_users #=> Integer
1274
+ # resp.user_import_job.skipped_users #=> Integer
1275
+ # resp.user_import_job.failed_users #=> Integer
1276
+ # resp.user_import_job.completion_message #=> String
1277
+ # @overload describe_user_import_job(params = {})
1278
+ # @param [Hash] params ({})
1279
+ def describe_user_import_job(params = {}, options = {})
1280
+ req = build_request(:describe_user_import_job, params)
1281
+ req.send_request(options)
1282
+ end
1283
+
1284
+ # Returns the configuration information and metadata of the specified
1285
+ # user pool.
1286
+ # @option params [required, String] :user_pool_id
1287
+ # The user pool ID for the user pool you want to describe.
1288
+ # @return [Types::DescribeUserPoolResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1289
+ #
1290
+ # * {Types::DescribeUserPoolResponse#user_pool #UserPool} => Types::UserPoolType
1291
+ #
1292
+ # @example Request syntax with placeholder values
1293
+ # resp = client.describe_user_pool({
1294
+ # user_pool_id: "UserPoolIdType", # required
1295
+ # })
1296
+ #
1297
+ # @example Response structure
1298
+ # resp.user_pool.id #=> String
1299
+ # resp.user_pool.name #=> String
1300
+ # resp.user_pool.policies.password_policy.minimum_length #=> Integer
1301
+ # resp.user_pool.policies.password_policy.require_uppercase #=> Boolean
1302
+ # resp.user_pool.policies.password_policy.require_lowercase #=> Boolean
1303
+ # resp.user_pool.policies.password_policy.require_numbers #=> Boolean
1304
+ # resp.user_pool.policies.password_policy.require_symbols #=> Boolean
1305
+ # resp.user_pool.lambda_config.pre_sign_up #=> String
1306
+ # resp.user_pool.lambda_config.custom_message #=> String
1307
+ # resp.user_pool.lambda_config.post_confirmation #=> String
1308
+ # resp.user_pool.lambda_config.pre_authentication #=> String
1309
+ # resp.user_pool.lambda_config.post_authentication #=> String
1310
+ # resp.user_pool.lambda_config.define_auth_challenge #=> String
1311
+ # resp.user_pool.lambda_config.create_auth_challenge #=> String
1312
+ # resp.user_pool.lambda_config.verify_auth_challenge_response #=> String
1313
+ # resp.user_pool.status #=> String, one of "Enabled", "Disabled"
1314
+ # resp.user_pool.last_modified_date #=> Time
1315
+ # resp.user_pool.creation_date #=> Time
1316
+ # resp.user_pool.schema_attributes #=> Array
1317
+ # resp.user_pool.schema_attributes[0].name #=> String
1318
+ # resp.user_pool.schema_attributes[0].attribute_data_type #=> String, one of "String", "Number", "DateTime", "Boolean"
1319
+ # resp.user_pool.schema_attributes[0].developer_only_attribute #=> Boolean
1320
+ # resp.user_pool.schema_attributes[0].mutable #=> Boolean
1321
+ # resp.user_pool.schema_attributes[0].required #=> Boolean
1322
+ # resp.user_pool.schema_attributes[0].number_attribute_constraints.min_value #=> String
1323
+ # resp.user_pool.schema_attributes[0].number_attribute_constraints.max_value #=> String
1324
+ # resp.user_pool.schema_attributes[0].string_attribute_constraints.min_length #=> String
1325
+ # resp.user_pool.schema_attributes[0].string_attribute_constraints.max_length #=> String
1326
+ # resp.user_pool.auto_verified_attributes #=> Array
1327
+ # resp.user_pool.auto_verified_attributes[0] #=> String, one of "phone_number", "email"
1328
+ # resp.user_pool.alias_attributes #=> Array
1329
+ # resp.user_pool.alias_attributes[0] #=> String, one of "phone_number", "email", "preferred_username"
1330
+ # resp.user_pool.sms_verification_message #=> String
1331
+ # resp.user_pool.email_verification_message #=> String
1332
+ # resp.user_pool.email_verification_subject #=> String
1333
+ # resp.user_pool.sms_authentication_message #=> String
1334
+ # resp.user_pool.mfa_configuration #=> String, one of "OFF", "ON", "OPTIONAL"
1335
+ # resp.user_pool.device_configuration.challenge_required_on_new_device #=> Boolean
1336
+ # resp.user_pool.device_configuration.device_only_remembered_on_user_prompt #=> Boolean
1337
+ # resp.user_pool.estimated_number_of_users #=> Integer
1338
+ # resp.user_pool.email_configuration.source_arn #=> String
1339
+ # resp.user_pool.email_configuration.reply_to_email_address #=> String
1340
+ # resp.user_pool.sms_configuration.sns_caller_arn #=> String
1341
+ # resp.user_pool.sms_configuration.external_id #=> String
1342
+ # resp.user_pool.sms_configuration_failure #=> String
1343
+ # resp.user_pool.email_configuration_failure #=> String
1344
+ # resp.user_pool.admin_create_user_config.allow_admin_create_user_only #=> Boolean
1345
+ # resp.user_pool.admin_create_user_config.unused_account_validity_days #=> Integer
1346
+ # resp.user_pool.admin_create_user_config.invite_message_template.sms_message #=> String
1347
+ # resp.user_pool.admin_create_user_config.invite_message_template.email_message #=> String
1348
+ # resp.user_pool.admin_create_user_config.invite_message_template.email_subject #=> String
1349
+ # @overload describe_user_pool(params = {})
1350
+ # @param [Hash] params ({})
1351
+ def describe_user_pool(params = {}, options = {})
1352
+ req = build_request(:describe_user_pool, params)
1353
+ req.send_request(options)
1354
+ end
1355
+
1356
+ # Client method for returning the configuration information and metadata
1357
+ # of the specified user pool client.
1358
+ # @option params [required, String] :user_pool_id
1359
+ # The user pool ID for the user pool you want to describe.
1360
+ # @option params [required, String] :client_id
1361
+ # The ID of the client associated with the user pool.
1362
+ # @return [Types::DescribeUserPoolClientResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1363
+ #
1364
+ # * {Types::DescribeUserPoolClientResponse#user_pool_client #UserPoolClient} => Types::UserPoolClientType
1365
+ #
1366
+ # @example Request syntax with placeholder values
1367
+ # resp = client.describe_user_pool_client({
1368
+ # user_pool_id: "UserPoolIdType", # required
1369
+ # client_id: "ClientIdType", # required
1370
+ # })
1371
+ #
1372
+ # @example Response structure
1373
+ # resp.user_pool_client.user_pool_id #=> String
1374
+ # resp.user_pool_client.client_name #=> String
1375
+ # resp.user_pool_client.client_id #=> String
1376
+ # resp.user_pool_client.client_secret #=> String
1377
+ # resp.user_pool_client.last_modified_date #=> Time
1378
+ # resp.user_pool_client.creation_date #=> Time
1379
+ # resp.user_pool_client.refresh_token_validity #=> Integer
1380
+ # resp.user_pool_client.read_attributes #=> Array
1381
+ # resp.user_pool_client.read_attributes[0] #=> String
1382
+ # resp.user_pool_client.write_attributes #=> Array
1383
+ # resp.user_pool_client.write_attributes[0] #=> String
1384
+ # resp.user_pool_client.explicit_auth_flows #=> Array
1385
+ # resp.user_pool_client.explicit_auth_flows[0] #=> String, one of "ADMIN_NO_SRP_AUTH", "CUSTOM_AUTH_FLOW_ONLY"
1386
+ # @overload describe_user_pool_client(params = {})
1387
+ # @param [Hash] params ({})
1388
+ def describe_user_pool_client(params = {}, options = {})
1389
+ req = build_request(:describe_user_pool_client, params)
1390
+ req.send_request(options)
1391
+ end
1392
+
1393
+ # Forgets the specified device.
1394
+ # @option params [String] :access_token
1395
+ # The access token for the forgotten device request.
1396
+ # @option params [required, String] :device_key
1397
+ # The device key.
1398
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1399
+ #
1400
+ # @example Request syntax with placeholder values
1401
+ # resp = client.forget_device({
1402
+ # access_token: "TokenModelType",
1403
+ # device_key: "DeviceKeyType", # required
1404
+ # })
1405
+ # @overload forget_device(params = {})
1406
+ # @param [Hash] params ({})
1407
+ def forget_device(params = {}, options = {})
1408
+ req = build_request(:forget_device, params)
1409
+ req.send_request(options)
1410
+ end
1411
+
1412
+ # Retrieves the password for the specified client ID or username.
1413
+ # @option params [required, String] :client_id
1414
+ # The ID of the client associated with the user pool.
1415
+ # @option params [String] :secret_hash
1416
+ # A keyed-hash message authentication code (HMAC) calculated using the
1417
+ # secret key of a user pool client and username plus the client ID in
1418
+ # the message.
1419
+ # @option params [required, String] :username
1420
+ # The user name of the user for whom you want to enter a code to reset a
1421
+ # forgotten password.
1422
+ # @return [Types::ForgotPasswordResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1423
+ #
1424
+ # * {Types::ForgotPasswordResponse#code_delivery_details #CodeDeliveryDetails} => Types::CodeDeliveryDetailsType
1425
+ #
1426
+ # @example Request syntax with placeholder values
1427
+ # resp = client.forgot_password({
1428
+ # client_id: "ClientIdType", # required
1429
+ # secret_hash: "SecretHashType",
1430
+ # username: "UsernameType", # required
1431
+ # })
1432
+ #
1433
+ # @example Response structure
1434
+ # resp.code_delivery_details.destination #=> String
1435
+ # resp.code_delivery_details.delivery_medium #=> String, one of "SMS", "EMAIL"
1436
+ # resp.code_delivery_details.attribute_name #=> String
1437
+ # @overload forgot_password(params = {})
1438
+ # @param [Hash] params ({})
1439
+ def forgot_password(params = {}, options = {})
1440
+ req = build_request(:forgot_password, params)
1441
+ req.send_request(options)
1442
+ end
1443
+
1444
+ # Gets the header information for the .csv file to be used as input for
1445
+ # the user import job.
1446
+ # @option params [required, String] :user_pool_id
1447
+ # The user pool ID for the user pool that the users are to be imported
1448
+ # into.
1449
+ # @return [Types::GetCSVHeaderResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1450
+ #
1451
+ # * {Types::GetCSVHeaderResponse#user_pool_id #UserPoolId} => String
1452
+ # * {Types::GetCSVHeaderResponse#csv_header #CSVHeader} => Array&lt;String&gt;
1453
+ #
1454
+ # @example Request syntax with placeholder values
1455
+ # resp = client.get_csv_header({
1456
+ # user_pool_id: "UserPoolIdType", # required
1457
+ # })
1458
+ #
1459
+ # @example Response structure
1460
+ # resp.user_pool_id #=> String
1461
+ # resp.csv_header #=> Array
1462
+ # resp.csv_header[0] #=> String
1463
+ # @overload get_csv_header(params = {})
1464
+ # @param [Hash] params ({})
1465
+ def get_csv_header(params = {}, options = {})
1466
+ req = build_request(:get_csv_header, params)
1467
+ req.send_request(options)
1468
+ end
1469
+
1470
+ # Gets the device.
1471
+ # @option params [required, String] :device_key
1472
+ # The device key.
1473
+ # @option params [String] :access_token
1474
+ # The access token.
1475
+ # @return [Types::GetDeviceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1476
+ #
1477
+ # * {Types::GetDeviceResponse#device #Device} => Types::DeviceType
1478
+ #
1479
+ # @example Request syntax with placeholder values
1480
+ # resp = client.get_device({
1481
+ # device_key: "DeviceKeyType", # required
1482
+ # access_token: "TokenModelType",
1483
+ # })
1484
+ #
1485
+ # @example Response structure
1486
+ # resp.device.device_key #=> String
1487
+ # resp.device.device_attributes #=> Array
1488
+ # resp.device.device_attributes[0].name #=> String
1489
+ # resp.device.device_attributes[0].value #=> String
1490
+ # resp.device.device_create_date #=> Time
1491
+ # resp.device.device_last_modified_date #=> Time
1492
+ # resp.device.device_last_authenticated_date #=> Time
1493
+ # @overload get_device(params = {})
1494
+ # @param [Hash] params ({})
1495
+ def get_device(params = {}, options = {})
1496
+ req = build_request(:get_device, params)
1497
+ req.send_request(options)
1498
+ end
1499
+
1500
+ # Gets the user attributes and metadata for a user.
1501
+ # @option params [String] :access_token
1502
+ # The access token returned by the server response to get information
1503
+ # about the user.
1504
+ # @return [Types::GetUserResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1505
+ #
1506
+ # * {Types::GetUserResponse#username #Username} => String
1507
+ # * {Types::GetUserResponse#user_attributes #UserAttributes} => Array&lt;Types::AttributeType&gt;
1508
+ # * {Types::GetUserResponse#mfa_options #MFAOptions} => Array&lt;Types::MFAOptionType&gt;
1509
+ #
1510
+ # @example Request syntax with placeholder values
1511
+ # resp = client.get_user({
1512
+ # access_token: "TokenModelType",
1513
+ # })
1514
+ #
1515
+ # @example Response structure
1516
+ # resp.username #=> String
1517
+ # resp.user_attributes #=> Array
1518
+ # resp.user_attributes[0].name #=> String
1519
+ # resp.user_attributes[0].value #=> String
1520
+ # resp.mfa_options #=> Array
1521
+ # resp.mfa_options[0].delivery_medium #=> String, one of "SMS", "EMAIL"
1522
+ # resp.mfa_options[0].attribute_name #=> String
1523
+ # @overload get_user(params = {})
1524
+ # @param [Hash] params ({})
1525
+ def get_user(params = {}, options = {})
1526
+ req = build_request(:get_user, params)
1527
+ req.send_request(options)
1528
+ end
1529
+
1530
+ # Gets the user attribute verification code for the specified attribute
1531
+ # name.
1532
+ # @option params [String] :access_token
1533
+ # The access token returned by the server response to get the user
1534
+ # attribute verification code.
1535
+ # @option params [required, String] :attribute_name
1536
+ # The attribute name returned by the server response to get the user
1537
+ # attribute verification code.
1538
+ # @return [Types::GetUserAttributeVerificationCodeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1539
+ #
1540
+ # * {Types::GetUserAttributeVerificationCodeResponse#code_delivery_details #CodeDeliveryDetails} => Types::CodeDeliveryDetailsType
1541
+ #
1542
+ # @example Request syntax with placeholder values
1543
+ # resp = client.get_user_attribute_verification_code({
1544
+ # access_token: "TokenModelType",
1545
+ # attribute_name: "AttributeNameType", # required
1546
+ # })
1547
+ #
1548
+ # @example Response structure
1549
+ # resp.code_delivery_details.destination #=> String
1550
+ # resp.code_delivery_details.delivery_medium #=> String, one of "SMS", "EMAIL"
1551
+ # resp.code_delivery_details.attribute_name #=> String
1552
+ # @overload get_user_attribute_verification_code(params = {})
1553
+ # @param [Hash] params ({})
1554
+ def get_user_attribute_verification_code(params = {}, options = {})
1555
+ req = build_request(:get_user_attribute_verification_code, params)
1556
+ req.send_request(options)
1557
+ end
1558
+
1559
+ # Signs out users from all devices.
1560
+ # @option params [String] :access_token
1561
+ # The access token.
1562
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1563
+ #
1564
+ # @example Request syntax with placeholder values
1565
+ # resp = client.global_sign_out({
1566
+ # access_token: "TokenModelType",
1567
+ # })
1568
+ # @overload global_sign_out(params = {})
1569
+ # @param [Hash] params ({})
1570
+ def global_sign_out(params = {}, options = {})
1571
+ req = build_request(:global_sign_out, params)
1572
+ req.send_request(options)
1573
+ end
1574
+
1575
+ # Initiates the authentication flow.
1576
+ # @option params [required, String] :auth_flow
1577
+ # The authentication flow.
1578
+ # @option params [Hash<String,String>] :auth_parameters
1579
+ # The authentication parameters.
1580
+ # @option params [Hash<String,String>] :client_metadata
1581
+ # The client app's metadata.
1582
+ # @option params [required, String] :client_id
1583
+ # The client ID.
1584
+ # @return [Types::InitiateAuthResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1585
+ #
1586
+ # * {Types::InitiateAuthResponse#challenge_name #ChallengeName} => String
1587
+ # * {Types::InitiateAuthResponse#session #Session} => String
1588
+ # * {Types::InitiateAuthResponse#challenge_parameters #ChallengeParameters} => Hash&lt;String,String&gt;
1589
+ # * {Types::InitiateAuthResponse#authentication_result #AuthenticationResult} => Types::AuthenticationResultType
1590
+ #
1591
+ # @example Request syntax with placeholder values
1592
+ # resp = client.initiate_auth({
1593
+ # auth_flow: "USER_SRP_AUTH", # required, accepts USER_SRP_AUTH, REFRESH_TOKEN_AUTH, REFRESH_TOKEN, CUSTOM_AUTH, ADMIN_NO_SRP_AUTH
1594
+ # auth_parameters: {
1595
+ # "StringType" => "StringType",
1596
+ # },
1597
+ # client_metadata: {
1598
+ # "StringType" => "StringType",
1599
+ # },
1600
+ # client_id: "ClientIdType", # required
1601
+ # })
1602
+ #
1603
+ # @example Response structure
1604
+ # resp.challenge_name #=> String, one of "SMS_MFA", "PASSWORD_VERIFIER", "CUSTOM_CHALLENGE", "DEVICE_SRP_AUTH", "DEVICE_PASSWORD_VERIFIER", "ADMIN_NO_SRP_AUTH", "NEW_PASSWORD_REQUIRED"
1605
+ # resp.session #=> String
1606
+ # resp.challenge_parameters #=> Hash
1607
+ # resp.challenge_parameters["StringType"] #=> String
1608
+ # resp.authentication_result.access_token #=> String
1609
+ # resp.authentication_result.expires_in #=> Integer
1610
+ # resp.authentication_result.token_type #=> String
1611
+ # resp.authentication_result.refresh_token #=> String
1612
+ # resp.authentication_result.id_token #=> String
1613
+ # resp.authentication_result.new_device_metadata.device_key #=> String
1614
+ # resp.authentication_result.new_device_metadata.device_group_key #=> String
1615
+ # @overload initiate_auth(params = {})
1616
+ # @param [Hash] params ({})
1617
+ def initiate_auth(params = {}, options = {})
1618
+ req = build_request(:initiate_auth, params)
1619
+ req.send_request(options)
1620
+ end
1621
+
1622
+ # Lists the devices.
1623
+ # @option params [required, String] :access_token
1624
+ # The access tokens for the request to list devices.
1625
+ # @option params [Integer] :limit
1626
+ # The limit of the device request.
1627
+ # @option params [String] :pagination_token
1628
+ # The pagination token for the list request.
1629
+ # @return [Types::ListDevicesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1630
+ #
1631
+ # * {Types::ListDevicesResponse#devices #Devices} => Array&lt;Types::DeviceType&gt;
1632
+ # * {Types::ListDevicesResponse#pagination_token #PaginationToken} => String
1633
+ #
1634
+ # @example Request syntax with placeholder values
1635
+ # resp = client.list_devices({
1636
+ # access_token: "TokenModelType", # required
1637
+ # limit: 1,
1638
+ # pagination_token: "SearchPaginationTokenType",
1639
+ # })
1640
+ #
1641
+ # @example Response structure
1642
+ # resp.devices #=> Array
1643
+ # resp.devices[0].device_key #=> String
1644
+ # resp.devices[0].device_attributes #=> Array
1645
+ # resp.devices[0].device_attributes[0].name #=> String
1646
+ # resp.devices[0].device_attributes[0].value #=> String
1647
+ # resp.devices[0].device_create_date #=> Time
1648
+ # resp.devices[0].device_last_modified_date #=> Time
1649
+ # resp.devices[0].device_last_authenticated_date #=> Time
1650
+ # resp.pagination_token #=> String
1651
+ # @overload list_devices(params = {})
1652
+ # @param [Hash] params ({})
1653
+ def list_devices(params = {}, options = {})
1654
+ req = build_request(:list_devices, params)
1655
+ req.send_request(options)
1656
+ end
1657
+
1658
+ # Lists the user import jobs.
1659
+ # @option params [required, String] :user_pool_id
1660
+ # The user pool ID for the user pool that the users are being imported
1661
+ # into.
1662
+ # @option params [required, Integer] :max_results
1663
+ # The maximum number of import jobs you want the request to return.
1664
+ # @option params [String] :pagination_token
1665
+ # An identifier that was returned from the previous call to
1666
+ # ListUserImportJobs, which can be used to return the next set of import
1667
+ # jobs in the list.
1668
+ # @return [Types::ListUserImportJobsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1669
+ #
1670
+ # * {Types::ListUserImportJobsResponse#user_import_jobs #UserImportJobs} => Array&lt;Types::UserImportJobType&gt;
1671
+ # * {Types::ListUserImportJobsResponse#pagination_token #PaginationToken} => String
1672
+ #
1673
+ # @example Request syntax with placeholder values
1674
+ # resp = client.list_user_import_jobs({
1675
+ # user_pool_id: "UserPoolIdType", # required
1676
+ # max_results: 1, # required
1677
+ # pagination_token: "PaginationKeyType",
1678
+ # })
1679
+ #
1680
+ # @example Response structure
1681
+ # resp.user_import_jobs #=> Array
1682
+ # resp.user_import_jobs[0].job_name #=> String
1683
+ # resp.user_import_jobs[0].job_id #=> String
1684
+ # resp.user_import_jobs[0].user_pool_id #=> String
1685
+ # resp.user_import_jobs[0].pre_signed_url #=> String
1686
+ # resp.user_import_jobs[0].creation_date #=> Time
1687
+ # resp.user_import_jobs[0].start_date #=> Time
1688
+ # resp.user_import_jobs[0].completion_date #=> Time
1689
+ # resp.user_import_jobs[0].status #=> String, one of "Created", "Pending", "InProgress", "Stopping", "Expired", "Stopped", "Failed", "Succeeded"
1690
+ # resp.user_import_jobs[0].cloud_watch_logs_role_arn #=> String
1691
+ # resp.user_import_jobs[0].imported_users #=> Integer
1692
+ # resp.user_import_jobs[0].skipped_users #=> Integer
1693
+ # resp.user_import_jobs[0].failed_users #=> Integer
1694
+ # resp.user_import_jobs[0].completion_message #=> String
1695
+ # resp.pagination_token #=> String
1696
+ # @overload list_user_import_jobs(params = {})
1697
+ # @param [Hash] params ({})
1698
+ def list_user_import_jobs(params = {}, options = {})
1699
+ req = build_request(:list_user_import_jobs, params)
1700
+ req.send_request(options)
1701
+ end
1702
+
1703
+ # Lists the clients that have been created for the specified user pool.
1704
+ # @option params [required, String] :user_pool_id
1705
+ # The user pool ID for the user pool where you want to list user pool
1706
+ # clients.
1707
+ # @option params [Integer] :max_results
1708
+ # The maximum number of results you want the request to return when
1709
+ # listing the user pool clients.
1710
+ # @option params [String] :next_token
1711
+ # An identifier that was returned from the previous call to this
1712
+ # operation, which can be used to return the next set of items in the
1713
+ # list.
1714
+ # @return [Types::ListUserPoolClientsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1715
+ #
1716
+ # * {Types::ListUserPoolClientsResponse#user_pool_clients #UserPoolClients} => Array&lt;Types::UserPoolClientDescription&gt;
1717
+ # * {Types::ListUserPoolClientsResponse#next_token #NextToken} => String
1718
+ #
1719
+ # @example Request syntax with placeholder values
1720
+ # resp = client.list_user_pool_clients({
1721
+ # user_pool_id: "UserPoolIdType", # required
1722
+ # max_results: 1,
1723
+ # next_token: "PaginationKey",
1724
+ # })
1725
+ #
1726
+ # @example Response structure
1727
+ # resp.user_pool_clients #=> Array
1728
+ # resp.user_pool_clients[0].client_id #=> String
1729
+ # resp.user_pool_clients[0].user_pool_id #=> String
1730
+ # resp.user_pool_clients[0].client_name #=> String
1731
+ # resp.next_token #=> String
1732
+ # @overload list_user_pool_clients(params = {})
1733
+ # @param [Hash] params ({})
1734
+ def list_user_pool_clients(params = {}, options = {})
1735
+ req = build_request(:list_user_pool_clients, params)
1736
+ req.send_request(options)
1737
+ end
1738
+
1739
+ # Lists the user pools associated with an AWS account.
1740
+ # @option params [String] :next_token
1741
+ # An identifier that was returned from the previous call to this
1742
+ # operation, which can be used to return the next set of items in the
1743
+ # list.
1744
+ # @option params [required, Integer] :max_results
1745
+ # The maximum number of results you want the request to return when
1746
+ # listing the user pools.
1747
+ # @return [Types::ListUserPoolsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1748
+ #
1749
+ # * {Types::ListUserPoolsResponse#user_pools #UserPools} => Array&lt;Types::UserPoolDescriptionType&gt;
1750
+ # * {Types::ListUserPoolsResponse#next_token #NextToken} => String
1751
+ #
1752
+ # @example Request syntax with placeholder values
1753
+ # resp = client.list_user_pools({
1754
+ # next_token: "PaginationKeyType",
1755
+ # max_results: 1, # required
1756
+ # })
1757
+ #
1758
+ # @example Response structure
1759
+ # resp.user_pools #=> Array
1760
+ # resp.user_pools[0].id #=> String
1761
+ # resp.user_pools[0].name #=> String
1762
+ # resp.user_pools[0].lambda_config.pre_sign_up #=> String
1763
+ # resp.user_pools[0].lambda_config.custom_message #=> String
1764
+ # resp.user_pools[0].lambda_config.post_confirmation #=> String
1765
+ # resp.user_pools[0].lambda_config.pre_authentication #=> String
1766
+ # resp.user_pools[0].lambda_config.post_authentication #=> String
1767
+ # resp.user_pools[0].lambda_config.define_auth_challenge #=> String
1768
+ # resp.user_pools[0].lambda_config.create_auth_challenge #=> String
1769
+ # resp.user_pools[0].lambda_config.verify_auth_challenge_response #=> String
1770
+ # resp.user_pools[0].status #=> String, one of "Enabled", "Disabled"
1771
+ # resp.user_pools[0].last_modified_date #=> Time
1772
+ # resp.user_pools[0].creation_date #=> Time
1773
+ # resp.next_token #=> String
1774
+ # @overload list_user_pools(params = {})
1775
+ # @param [Hash] params ({})
1776
+ def list_user_pools(params = {}, options = {})
1777
+ req = build_request(:list_user_pools, params)
1778
+ req.send_request(options)
1779
+ end
1780
+
1781
+ # Lists the users in the Amazon Cognito user pool.
1782
+ # @option params [required, String] :user_pool_id
1783
+ # The user pool ID for which you want to list users.
1784
+ # @option params [Array<String>] :attributes_to_get
1785
+ # The attributes to get from the request to list users.
1786
+ # @option params [Integer] :limit
1787
+ # The limit of the request to list users.
1788
+ # @option params [String] :pagination_token
1789
+ # An identifier that was returned from the previous call to this
1790
+ # operation, which can be used to return the next set of items in the
1791
+ # list.
1792
+ # @option params [String] :filter
1793
+ # The filter for the list users request.
1794
+ # @return [Types::ListUsersResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1795
+ #
1796
+ # * {Types::ListUsersResponse#users #Users} => Array&lt;Types::UserType&gt;
1797
+ # * {Types::ListUsersResponse#pagination_token #PaginationToken} => String
1798
+ #
1799
+ # @example Request syntax with placeholder values
1800
+ # resp = client.list_users({
1801
+ # user_pool_id: "UserPoolIdType", # required
1802
+ # attributes_to_get: ["AttributeNameType"],
1803
+ # limit: 1,
1804
+ # pagination_token: "SearchPaginationTokenType",
1805
+ # filter: "UserFilterType",
1806
+ # })
1807
+ #
1808
+ # @example Response structure
1809
+ # resp.users #=> Array
1810
+ # resp.users[0].username #=> String
1811
+ # resp.users[0].attributes #=> Array
1812
+ # resp.users[0].attributes[0].name #=> String
1813
+ # resp.users[0].attributes[0].value #=> String
1814
+ # resp.users[0].user_create_date #=> Time
1815
+ # resp.users[0].user_last_modified_date #=> Time
1816
+ # resp.users[0].enabled #=> Boolean
1817
+ # resp.users[0].user_status #=> String, one of "UNCONFIRMED", "CONFIRMED", "ARCHIVED", "COMPROMISED", "UNKNOWN", "RESET_REQUIRED", "FORCE_CHANGE_PASSWORD"
1818
+ # resp.users[0].mfa_options #=> Array
1819
+ # resp.users[0].mfa_options[0].delivery_medium #=> String, one of "SMS", "EMAIL"
1820
+ # resp.users[0].mfa_options[0].attribute_name #=> String
1821
+ # resp.pagination_token #=> String
1822
+ # @overload list_users(params = {})
1823
+ # @param [Hash] params ({})
1824
+ def list_users(params = {}, options = {})
1825
+ req = build_request(:list_users, params)
1826
+ req.send_request(options)
1827
+ end
1828
+
1829
+ # Resends the confirmation (for confirmation of registration) to a
1830
+ # specific user in the user pool.
1831
+ # @option params [required, String] :client_id
1832
+ # The ID of the client associated with the user pool.
1833
+ # @option params [String] :secret_hash
1834
+ # A keyed-hash message authentication code (HMAC) calculated using the
1835
+ # secret key of a user pool client and username plus the client ID in
1836
+ # the message.
1837
+ # @option params [required, String] :username
1838
+ # The user name of the user to whom you wish to resend a confirmation
1839
+ # code.
1840
+ # @return [Types::ResendConfirmationCodeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1841
+ #
1842
+ # * {Types::ResendConfirmationCodeResponse#code_delivery_details #CodeDeliveryDetails} => Types::CodeDeliveryDetailsType
1843
+ #
1844
+ # @example Request syntax with placeholder values
1845
+ # resp = client.resend_confirmation_code({
1846
+ # client_id: "ClientIdType", # required
1847
+ # secret_hash: "SecretHashType",
1848
+ # username: "UsernameType", # required
1849
+ # })
1850
+ #
1851
+ # @example Response structure
1852
+ # resp.code_delivery_details.destination #=> String
1853
+ # resp.code_delivery_details.delivery_medium #=> String, one of "SMS", "EMAIL"
1854
+ # resp.code_delivery_details.attribute_name #=> String
1855
+ # @overload resend_confirmation_code(params = {})
1856
+ # @param [Hash] params ({})
1857
+ def resend_confirmation_code(params = {}, options = {})
1858
+ req = build_request(:resend_confirmation_code, params)
1859
+ req.send_request(options)
1860
+ end
1861
+
1862
+ # Responds to the authentication challenge.
1863
+ # @option params [required, String] :client_id
1864
+ # The client ID.
1865
+ # @option params [required, String] :challenge_name
1866
+ # The name of the challenge.
1867
+ # @option params [String] :session
1868
+ # The session.
1869
+ # @option params [Hash<String,String>] :challenge_responses
1870
+ # The responses to the authentication challenge.
1871
+ # @return [Types::RespondToAuthChallengeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1872
+ #
1873
+ # * {Types::RespondToAuthChallengeResponse#challenge_name #ChallengeName} => String
1874
+ # * {Types::RespondToAuthChallengeResponse#session #Session} => String
1875
+ # * {Types::RespondToAuthChallengeResponse#challenge_parameters #ChallengeParameters} => Hash&lt;String,String&gt;
1876
+ # * {Types::RespondToAuthChallengeResponse#authentication_result #AuthenticationResult} => Types::AuthenticationResultType
1877
+ #
1878
+ # @example Request syntax with placeholder values
1879
+ # resp = client.respond_to_auth_challenge({
1880
+ # client_id: "ClientIdType", # required
1881
+ # challenge_name: "SMS_MFA", # required, accepts SMS_MFA, PASSWORD_VERIFIER, CUSTOM_CHALLENGE, DEVICE_SRP_AUTH, DEVICE_PASSWORD_VERIFIER, ADMIN_NO_SRP_AUTH, NEW_PASSWORD_REQUIRED
1882
+ # session: "SessionType",
1883
+ # challenge_responses: {
1884
+ # "StringType" => "StringType",
1885
+ # },
1886
+ # })
1887
+ #
1888
+ # @example Response structure
1889
+ # resp.challenge_name #=> String, one of "SMS_MFA", "PASSWORD_VERIFIER", "CUSTOM_CHALLENGE", "DEVICE_SRP_AUTH", "DEVICE_PASSWORD_VERIFIER", "ADMIN_NO_SRP_AUTH", "NEW_PASSWORD_REQUIRED"
1890
+ # resp.session #=> String
1891
+ # resp.challenge_parameters #=> Hash
1892
+ # resp.challenge_parameters["StringType"] #=> String
1893
+ # resp.authentication_result.access_token #=> String
1894
+ # resp.authentication_result.expires_in #=> Integer
1895
+ # resp.authentication_result.token_type #=> String
1896
+ # resp.authentication_result.refresh_token #=> String
1897
+ # resp.authentication_result.id_token #=> String
1898
+ # resp.authentication_result.new_device_metadata.device_key #=> String
1899
+ # resp.authentication_result.new_device_metadata.device_group_key #=> String
1900
+ # @overload respond_to_auth_challenge(params = {})
1901
+ # @param [Hash] params ({})
1902
+ def respond_to_auth_challenge(params = {}, options = {})
1903
+ req = build_request(:respond_to_auth_challenge, params)
1904
+ req.send_request(options)
1905
+ end
1906
+
1907
+ # Sets the user settings like multi-factor authentication (MFA). If MFA
1908
+ # is to be removed for a particular attribute pass the attribute with
1909
+ # code delivery as null. If null list is passed, all MFA options are
1910
+ # removed.
1911
+ # @option params [required, String] :access_token
1912
+ # The access token for the set user settings request.
1913
+ # @option params [required, Array<Types::MFAOptionType>] :mfa_options
1914
+ # Specifies the options for MFA (e.g., email or phone number).
1915
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1916
+ #
1917
+ # @example Request syntax with placeholder values
1918
+ # resp = client.set_user_settings({
1919
+ # access_token: "TokenModelType", # required
1920
+ # mfa_options: [ # required
1921
+ # {
1922
+ # delivery_medium: "SMS", # accepts SMS, EMAIL
1923
+ # attribute_name: "AttributeNameType",
1924
+ # },
1925
+ # ],
1926
+ # })
1927
+ # @overload set_user_settings(params = {})
1928
+ # @param [Hash] params ({})
1929
+ def set_user_settings(params = {}, options = {})
1930
+ req = build_request(:set_user_settings, params)
1931
+ req.send_request(options)
1932
+ end
1933
+
1934
+ # Registers the user in the specified user pool and creates a user name,
1935
+ # password, and user attributes.
1936
+ # @option params [required, String] :client_id
1937
+ # The ID of the client associated with the user pool.
1938
+ # @option params [String] :secret_hash
1939
+ # A keyed-hash message authentication code (HMAC) calculated using the
1940
+ # secret key of a user pool client and username plus the client ID in
1941
+ # the message.
1942
+ # @option params [required, String] :username
1943
+ # The user name of the user you wish to register.
1944
+ # @option params [required, String] :password
1945
+ # The password of the user you wish to register.
1946
+ # @option params [Array<Types::AttributeType>] :user_attributes
1947
+ # An array of name-value pairs representing user attributes.
1948
+ # @option params [Array<Types::AttributeType>] :validation_data
1949
+ # The validation data in the request to register a user.
1950
+ # @return [Types::SignUpResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1951
+ #
1952
+ # * {Types::SignUpResponse#user_confirmed #UserConfirmed} => Boolean
1953
+ # * {Types::SignUpResponse#code_delivery_details #CodeDeliveryDetails} => Types::CodeDeliveryDetailsType
1954
+ #
1955
+ # @example Request syntax with placeholder values
1956
+ # resp = client.sign_up({
1957
+ # client_id: "ClientIdType", # required
1958
+ # secret_hash: "SecretHashType",
1959
+ # username: "UsernameType", # required
1960
+ # password: "PasswordType", # required
1961
+ # user_attributes: [
1962
+ # {
1963
+ # name: "AttributeNameType", # required
1964
+ # value: "AttributeValueType",
1965
+ # },
1966
+ # ],
1967
+ # validation_data: [
1968
+ # {
1969
+ # name: "AttributeNameType", # required
1970
+ # value: "AttributeValueType",
1971
+ # },
1972
+ # ],
1973
+ # })
1974
+ #
1975
+ # @example Response structure
1976
+ # resp.user_confirmed #=> Boolean
1977
+ # resp.code_delivery_details.destination #=> String
1978
+ # resp.code_delivery_details.delivery_medium #=> String, one of "SMS", "EMAIL"
1979
+ # resp.code_delivery_details.attribute_name #=> String
1980
+ # @overload sign_up(params = {})
1981
+ # @param [Hash] params ({})
1982
+ def sign_up(params = {}, options = {})
1983
+ req = build_request(:sign_up, params)
1984
+ req.send_request(options)
1985
+ end
1986
+
1987
+ # Starts the user import.
1988
+ # @option params [required, String] :user_pool_id
1989
+ # The user pool ID for the user pool that the users are being imported
1990
+ # into.
1991
+ # @option params [required, String] :job_id
1992
+ # The job ID for the user import job.
1993
+ # @return [Types::StartUserImportJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1994
+ #
1995
+ # * {Types::StartUserImportJobResponse#user_import_job #UserImportJob} => Types::UserImportJobType
1996
+ #
1997
+ # @example Request syntax with placeholder values
1998
+ # resp = client.start_user_import_job({
1999
+ # user_pool_id: "UserPoolIdType", # required
2000
+ # job_id: "UserImportJobIdType", # required
2001
+ # })
2002
+ #
2003
+ # @example Response structure
2004
+ # resp.user_import_job.job_name #=> String
2005
+ # resp.user_import_job.job_id #=> String
2006
+ # resp.user_import_job.user_pool_id #=> String
2007
+ # resp.user_import_job.pre_signed_url #=> String
2008
+ # resp.user_import_job.creation_date #=> Time
2009
+ # resp.user_import_job.start_date #=> Time
2010
+ # resp.user_import_job.completion_date #=> Time
2011
+ # resp.user_import_job.status #=> String, one of "Created", "Pending", "InProgress", "Stopping", "Expired", "Stopped", "Failed", "Succeeded"
2012
+ # resp.user_import_job.cloud_watch_logs_role_arn #=> String
2013
+ # resp.user_import_job.imported_users #=> Integer
2014
+ # resp.user_import_job.skipped_users #=> Integer
2015
+ # resp.user_import_job.failed_users #=> Integer
2016
+ # resp.user_import_job.completion_message #=> String
2017
+ # @overload start_user_import_job(params = {})
2018
+ # @param [Hash] params ({})
2019
+ def start_user_import_job(params = {}, options = {})
2020
+ req = build_request(:start_user_import_job, params)
2021
+ req.send_request(options)
2022
+ end
2023
+
2024
+ # Stops the user import job.
2025
+ # @option params [required, String] :user_pool_id
2026
+ # The user pool ID for the user pool that the users are being imported
2027
+ # into.
2028
+ # @option params [required, String] :job_id
2029
+ # The job ID for the user import job.
2030
+ # @return [Types::StopUserImportJobResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2031
+ #
2032
+ # * {Types::StopUserImportJobResponse#user_import_job #UserImportJob} => Types::UserImportJobType
2033
+ #
2034
+ # @example Request syntax with placeholder values
2035
+ # resp = client.stop_user_import_job({
2036
+ # user_pool_id: "UserPoolIdType", # required
2037
+ # job_id: "UserImportJobIdType", # required
2038
+ # })
2039
+ #
2040
+ # @example Response structure
2041
+ # resp.user_import_job.job_name #=> String
2042
+ # resp.user_import_job.job_id #=> String
2043
+ # resp.user_import_job.user_pool_id #=> String
2044
+ # resp.user_import_job.pre_signed_url #=> String
2045
+ # resp.user_import_job.creation_date #=> Time
2046
+ # resp.user_import_job.start_date #=> Time
2047
+ # resp.user_import_job.completion_date #=> Time
2048
+ # resp.user_import_job.status #=> String, one of "Created", "Pending", "InProgress", "Stopping", "Expired", "Stopped", "Failed", "Succeeded"
2049
+ # resp.user_import_job.cloud_watch_logs_role_arn #=> String
2050
+ # resp.user_import_job.imported_users #=> Integer
2051
+ # resp.user_import_job.skipped_users #=> Integer
2052
+ # resp.user_import_job.failed_users #=> Integer
2053
+ # resp.user_import_job.completion_message #=> String
2054
+ # @overload stop_user_import_job(params = {})
2055
+ # @param [Hash] params ({})
2056
+ def stop_user_import_job(params = {}, options = {})
2057
+ req = build_request(:stop_user_import_job, params)
2058
+ req.send_request(options)
2059
+ end
2060
+
2061
+ # Updates the device status.
2062
+ # @option params [required, String] :access_token
2063
+ # The access token.
2064
+ # @option params [required, String] :device_key
2065
+ # The device key.
2066
+ # @option params [String] :device_remembered_status
2067
+ # The status of whether a device is remembered.
2068
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2069
+ #
2070
+ # @example Request syntax with placeholder values
2071
+ # resp = client.update_device_status({
2072
+ # access_token: "TokenModelType", # required
2073
+ # device_key: "DeviceKeyType", # required
2074
+ # device_remembered_status: "remembered", # accepts remembered, not_remembered
2075
+ # })
2076
+ # @overload update_device_status(params = {})
2077
+ # @param [Hash] params ({})
2078
+ def update_device_status(params = {}, options = {})
2079
+ req = build_request(:update_device_status, params)
2080
+ req.send_request(options)
2081
+ end
2082
+
2083
+ # Allows a user to update a specific attribute (one at a time).
2084
+ # @option params [required, Array<Types::AttributeType>] :user_attributes
2085
+ # An array of name-value pairs representing user attributes.
2086
+ # @option params [String] :access_token
2087
+ # The access token for the request to update user attributes.
2088
+ # @return [Types::UpdateUserAttributesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2089
+ #
2090
+ # * {Types::UpdateUserAttributesResponse#code_delivery_details_list #CodeDeliveryDetailsList} => Array&lt;Types::CodeDeliveryDetailsType&gt;
2091
+ #
2092
+ # @example Request syntax with placeholder values
2093
+ # resp = client.update_user_attributes({
2094
+ # user_attributes: [ # required
2095
+ # {
2096
+ # name: "AttributeNameType", # required
2097
+ # value: "AttributeValueType",
2098
+ # },
2099
+ # ],
2100
+ # access_token: "TokenModelType",
2101
+ # })
2102
+ #
2103
+ # @example Response structure
2104
+ # resp.code_delivery_details_list #=> Array
2105
+ # resp.code_delivery_details_list[0].destination #=> String
2106
+ # resp.code_delivery_details_list[0].delivery_medium #=> String, one of "SMS", "EMAIL"
2107
+ # resp.code_delivery_details_list[0].attribute_name #=> String
2108
+ # @overload update_user_attributes(params = {})
2109
+ # @param [Hash] params ({})
2110
+ def update_user_attributes(params = {}, options = {})
2111
+ req = build_request(:update_user_attributes, params)
2112
+ req.send_request(options)
2113
+ end
2114
+
2115
+ # Updates the specified user pool with the specified attributes.
2116
+ # @option params [required, String] :user_pool_id
2117
+ # The user pool ID for the user pool you want to update.
2118
+ # @option params [Types::UserPoolPolicyType] :policies
2119
+ # A container with the policies you wish to update in a user pool.
2120
+ # @option params [Types::LambdaConfigType] :lambda_config
2121
+ # The AWS Lambda configuration information from the request to update
2122
+ # the user pool.
2123
+ # @option params [Array<String>] :auto_verified_attributes
2124
+ # The attributes that are automatically verified when the Amazon Cognito
2125
+ # service makes a request to update user pools.
2126
+ # @option params [String] :sms_verification_message
2127
+ # A container with information about the SMS verification message.
2128
+ # @option params [String] :email_verification_message
2129
+ # The contents of the email verification message.
2130
+ # @option params [String] :email_verification_subject
2131
+ # The subject of the email verfication message.
2132
+ # @option params [String] :sms_authentication_message
2133
+ # The contents of the SMS authentication message.
2134
+ # @option params [String] :mfa_configuration
2135
+ # Can be one of the following values:
2136
+ #
2137
+ # * `OFF` - MFA tokens are not required and cannot be specified during
2138
+ # user registration.
2139
+ #
2140
+ # * `ON` - MFA tokens are required for all user registrations. You can
2141
+ # only specify required when you are initially creating a user pool.
2142
+ #
2143
+ # * `OPTIONAL` - Users have the option when registering to create an MFA
2144
+ # token.
2145
+ # @option params [Types::DeviceConfigurationType] :device_configuration
2146
+ # Device configuration.
2147
+ # @option params [Types::EmailConfigurationType] :email_configuration
2148
+ # Email configuration.
2149
+ # @option params [Types::SmsConfigurationType] :sms_configuration
2150
+ # SMS configuration.
2151
+ # @option params [Types::AdminCreateUserConfigType] :admin_create_user_config
2152
+ # The configuration for AdminCreateUser requests.
2153
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2154
+ #
2155
+ # @example Request syntax with placeholder values
2156
+ # resp = client.update_user_pool({
2157
+ # user_pool_id: "UserPoolIdType", # required
2158
+ # policies: {
2159
+ # password_policy: {
2160
+ # minimum_length: 1,
2161
+ # require_uppercase: false,
2162
+ # require_lowercase: false,
2163
+ # require_numbers: false,
2164
+ # require_symbols: false,
2165
+ # },
2166
+ # },
2167
+ # lambda_config: {
2168
+ # pre_sign_up: "ArnType",
2169
+ # custom_message: "ArnType",
2170
+ # post_confirmation: "ArnType",
2171
+ # pre_authentication: "ArnType",
2172
+ # post_authentication: "ArnType",
2173
+ # define_auth_challenge: "ArnType",
2174
+ # create_auth_challenge: "ArnType",
2175
+ # verify_auth_challenge_response: "ArnType",
2176
+ # },
2177
+ # auto_verified_attributes: ["phone_number"], # accepts phone_number, email
2178
+ # sms_verification_message: "SmsVerificationMessageType",
2179
+ # email_verification_message: "EmailVerificationMessageType",
2180
+ # email_verification_subject: "EmailVerificationSubjectType",
2181
+ # sms_authentication_message: "SmsVerificationMessageType",
2182
+ # mfa_configuration: "OFF", # accepts OFF, ON, OPTIONAL
2183
+ # device_configuration: {
2184
+ # challenge_required_on_new_device: false,
2185
+ # device_only_remembered_on_user_prompt: false,
2186
+ # },
2187
+ # email_configuration: {
2188
+ # source_arn: "ArnType",
2189
+ # reply_to_email_address: "EmailAddressType",
2190
+ # },
2191
+ # sms_configuration: {
2192
+ # sns_caller_arn: "ArnType", # required
2193
+ # external_id: "StringType",
2194
+ # },
2195
+ # admin_create_user_config: {
2196
+ # allow_admin_create_user_only: false,
2197
+ # unused_account_validity_days: 1,
2198
+ # invite_message_template: {
2199
+ # sms_message: "SmsVerificationMessageType",
2200
+ # email_message: "EmailVerificationMessageType",
2201
+ # email_subject: "EmailVerificationSubjectType",
2202
+ # },
2203
+ # },
2204
+ # })
2205
+ # @overload update_user_pool(params = {})
2206
+ # @param [Hash] params ({})
2207
+ def update_user_pool(params = {}, options = {})
2208
+ req = build_request(:update_user_pool, params)
2209
+ req.send_request(options)
2210
+ end
2211
+
2212
+ # Allows the developer to update the specified user pool client and
2213
+ # password policy.
2214
+ # @option params [required, String] :user_pool_id
2215
+ # The user pool ID for the user pool where you want to update the user
2216
+ # pool client.
2217
+ # @option params [required, String] :client_id
2218
+ # The ID of the client associated with the user pool.
2219
+ # @option params [String] :client_name
2220
+ # The client name from the update user pool client request.
2221
+ # @option params [Integer] :refresh_token_validity
2222
+ # The validity of the refresh token.
2223
+ # @option params [Array<String>] :read_attributes
2224
+ # The read-only attributes of the user pool.
2225
+ # @option params [Array<String>] :write_attributes
2226
+ # The writeable attributes of the user pool.
2227
+ # @option params [Array<String>] :explicit_auth_flows
2228
+ # Explicit authentication flows.
2229
+ # @return [Types::UpdateUserPoolClientResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2230
+ #
2231
+ # * {Types::UpdateUserPoolClientResponse#user_pool_client #UserPoolClient} => Types::UserPoolClientType
2232
+ #
2233
+ # @example Request syntax with placeholder values
2234
+ # resp = client.update_user_pool_client({
2235
+ # user_pool_id: "UserPoolIdType", # required
2236
+ # client_id: "ClientIdType", # required
2237
+ # client_name: "ClientNameType",
2238
+ # refresh_token_validity: 1,
2239
+ # read_attributes: ["ClientPermissionType"],
2240
+ # write_attributes: ["ClientPermissionType"],
2241
+ # explicit_auth_flows: ["ADMIN_NO_SRP_AUTH"], # accepts ADMIN_NO_SRP_AUTH, CUSTOM_AUTH_FLOW_ONLY
2242
+ # })
2243
+ #
2244
+ # @example Response structure
2245
+ # resp.user_pool_client.user_pool_id #=> String
2246
+ # resp.user_pool_client.client_name #=> String
2247
+ # resp.user_pool_client.client_id #=> String
2248
+ # resp.user_pool_client.client_secret #=> String
2249
+ # resp.user_pool_client.last_modified_date #=> Time
2250
+ # resp.user_pool_client.creation_date #=> Time
2251
+ # resp.user_pool_client.refresh_token_validity #=> Integer
2252
+ # resp.user_pool_client.read_attributes #=> Array
2253
+ # resp.user_pool_client.read_attributes[0] #=> String
2254
+ # resp.user_pool_client.write_attributes #=> Array
2255
+ # resp.user_pool_client.write_attributes[0] #=> String
2256
+ # resp.user_pool_client.explicit_auth_flows #=> Array
2257
+ # resp.user_pool_client.explicit_auth_flows[0] #=> String, one of "ADMIN_NO_SRP_AUTH", "CUSTOM_AUTH_FLOW_ONLY"
2258
+ # @overload update_user_pool_client(params = {})
2259
+ # @param [Hash] params ({})
2260
+ def update_user_pool_client(params = {}, options = {})
2261
+ req = build_request(:update_user_pool_client, params)
2262
+ req.send_request(options)
2263
+ end
2264
+
2265
+ # Verifies the specified user attributes in the user pool.
2266
+ # @option params [String] :access_token
2267
+ # Represents the access token of the request to verify user attributes.
2268
+ # @option params [required, String] :attribute_name
2269
+ # The attribute name in the request to verify user attributes.
2270
+ # @option params [required, String] :code
2271
+ # The verification code in the request to verify user attributes.
2272
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2273
+ #
2274
+ # @example Request syntax with placeholder values
2275
+ # resp = client.verify_user_attribute({
2276
+ # access_token: "TokenModelType",
2277
+ # attribute_name: "AttributeNameType", # required
2278
+ # code: "ConfirmationCodeType", # required
2279
+ # })
2280
+ # @overload verify_user_attribute(params = {})
2281
+ # @param [Hash] params ({})
2282
+ def verify_user_attribute(params = {}, options = {})
2283
+ req = build_request(:verify_user_attribute, params)
2284
+ req.send_request(options)
2285
+ end
2286
+
2287
+ # @!endgroup
2288
+
2289
+ # @param params ({})
2290
+ # @api private
2291
+ def build_request(operation_name, params = {})
2292
+ handlers = @handlers.for(operation_name)
2293
+ context = Seahorse::Client::RequestContext.new(
2294
+ operation_name: operation_name,
2295
+ operation: config.api.operation(operation_name),
2296
+ client: self,
2297
+ params: params,
2298
+ config: config)
2299
+ context[:gem_name] = 'aws-sdk-cognitoidentityprovider'
2300
+ context[:gem_version] = '1.0.0.rc1'
2301
+ Seahorse::Client::Request.new(handlers, context)
2302
+ end
2303
+
2304
+ # @api private
2305
+ # @deprecated
2306
+ def waiter_names
2307
+ []
2308
+ end
2309
+
2310
+ class << self
2311
+
2312
+ # @api private
2313
+ attr_reader :identifier
2314
+
2315
+ # @api private
2316
+ def errors_module
2317
+ Errors
2318
+ end
2319
+
2320
+ end
2321
+ end
2322
+ end
2323
+ end