aws-sdk-cognitoidentityprovider 1.65.0 → 1.66.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -806,11 +806,11 @@ module Aws::CognitoIdentityProvider
806
806
  end
807
807
 
808
808
  # Prevents the user from signing in with the specified external (SAML or
809
- # social) identity provider. If the user that you want to deactivate is
810
- # a Amazon Cognito user pools native username + password user, they
811
- # can't use their password to sign in. If the user to deactivate is a
812
- # linked external identity provider (IdP) user, any link between that
813
- # user and an existing user is removed. When the external user signs in
809
+ # social) identity provider (IdP). If the user that you want to
810
+ # deactivate is a Amazon Cognito user pools native username + password
811
+ # user, they can't use their password to sign in. If the user to
812
+ # deactivate is a linked external IdP user, any link between that user
813
+ # and an existing user is removed. When the external user signs in
814
814
  # again, and the user is no longer attached to the previously linked
815
815
  # `DestinationUser`, the user must create a new user account. See
816
816
  # [AdminLinkProviderForUser][1].
@@ -827,9 +827,9 @@ module Aws::CognitoIdentityProvider
827
827
  # is used in the user pool for the user.
828
828
  #
829
829
  # The `ProviderAttributeName` must always be `Cognito_Subject` for
830
- # social identity providers. The `ProviderAttributeValue` must always be
831
- # the exact subject that was used when the user was originally linked as
832
- # a source user.
830
+ # social IdPs. The `ProviderAttributeValue` must always be the exact
831
+ # subject that was used when the user was originally linked as a source
832
+ # user.
833
833
  #
834
834
  # For de-linking a SAML identity, there are two scenarios. If the linked
835
835
  # identity has not yet been used to sign in, the `ProviderAttributeName`
@@ -1285,26 +1285,25 @@ module Aws::CognitoIdentityProvider
1285
1285
  end
1286
1286
 
1287
1287
  # Links an existing user account in a user pool (`DestinationUser`) to
1288
- # an identity from an external identity provider (`SourceUser`) based on
1289
- # a specified attribute name and value from the external identity
1290
- # provider. This allows you to create a link from the existing user
1291
- # account to an external federated user identity that has not yet been
1292
- # used to sign in. You can then use the federated user identity to sign
1293
- # in as the existing user account.
1288
+ # an identity from an external IdP (`SourceUser`) based on a specified
1289
+ # attribute name and value from the external IdP. This allows you to
1290
+ # create a link from the existing user account to an external federated
1291
+ # user identity that has not yet been used to sign in. You can then use
1292
+ # the federated user identity to sign in as the existing user account.
1294
1293
  #
1295
1294
  # For example, if there is an existing user with a username and
1296
1295
  # password, this API links that user to a federated user identity. When
1297
1296
  # the user signs in with a federated user identity, they sign in as the
1298
1297
  # existing user account.
1299
1298
  #
1300
- # <note markdown="1"> The maximum number of federated identities linked to a user is 5.
1299
+ # <note markdown="1"> The maximum number of federated identities linked to a user is five.
1301
1300
  #
1302
1301
  # </note>
1303
1302
  #
1304
1303
  # Because this API allows a user with an external federated identity to
1305
1304
  # sign in as an existing user in the user pool, it is critical that it
1306
- # only be used with external identity providers and provider attributes
1307
- # that have been trusted by the application owner.
1305
+ # only be used with external IdPs and provider attributes that have been
1306
+ # trusted by the application owner.
1308
1307
  #
1309
1308
  # This action is administrative and requires developer credentials.
1310
1309
  #
@@ -1313,12 +1312,11 @@ module Aws::CognitoIdentityProvider
1313
1312
  #
1314
1313
  # @option params [required, Types::ProviderUserIdentifierType] :destination_user
1315
1314
  # The existing user in the user pool that you want to assign to the
1316
- # external identity provider user account. This user can be a native
1317
- # (Username + Password) Amazon Cognito user pools user or a federated
1318
- # user (for example, a SAML or Facebook user). If the user doesn't
1319
- # exist, Amazon Cognito generates an exception. Amazon Cognito returns
1320
- # this user when the new user (with the linked identity provider
1321
- # attribute) signs in.
1315
+ # external IdP user account. This user can be a native (Username +
1316
+ # Password) Amazon Cognito user pools user or a federated user (for
1317
+ # example, a SAML or Facebook user). If the user doesn't exist, Amazon
1318
+ # Cognito generates an exception. Amazon Cognito returns this user when
1319
+ # the new user (with the linked IdP attribute) signs in.
1322
1320
  #
1323
1321
  # For a native username + password user, the `ProviderAttributeValue`
1324
1322
  # for the `DestinationUser` should be the username in the user pool. For
@@ -1334,27 +1332,26 @@ module Aws::CognitoIdentityProvider
1334
1332
  # won't succeed.
1335
1333
  #
1336
1334
  # @option params [required, Types::ProviderUserIdentifierType] :source_user
1337
- # An external identity provider account for a user who doesn't exist
1338
- # yet in the user pool. This user must be a federated user (for example,
1339
- # a SAML or Facebook user), not another native user.
1335
+ # An external IdP account for a user who doesn't exist yet in the user
1336
+ # pool. This user must be a federated user (for example, a SAML or
1337
+ # Facebook user), not another native user.
1340
1338
  #
1341
- # If the `SourceUser` is using a federated social identity provider,
1342
- # such as Facebook, Google, or Login with Amazon, you must set the
1343
- # `ProviderAttributeName` to `Cognito_Subject`. For social identity
1344
- # providers, the `ProviderName` will be `Facebook`, `Google`, or
1345
- # `LoginWithAmazon`, and Amazon Cognito will automatically parse the
1346
- # Facebook, Google, and Login with Amazon tokens for `id`, `sub`, and
1347
- # `user_id`, respectively. The `ProviderAttributeValue` for the user
1348
- # must be the same value as the `id`, `sub`, or `user_id` value found in
1349
- # the social identity provider token.
1339
+ # If the `SourceUser` is using a federated social IdP, such as Facebook,
1340
+ # Google, or Login with Amazon, you must set the `ProviderAttributeName`
1341
+ # to `Cognito_Subject`. For social IdPs, the `ProviderName` will be
1342
+ # `Facebook`, `Google`, or `LoginWithAmazon`, and Amazon Cognito will
1343
+ # automatically parse the Facebook, Google, and Login with Amazon tokens
1344
+ # for `id`, `sub`, and `user_id`, respectively. The
1345
+ # `ProviderAttributeValue` for the user must be the same value as the
1346
+ # `id`, `sub`, or `user_id` value found in the social IdP token.
1350
1347
  #
1351
1348
  #
1352
1349
  #
1353
1350
  # For SAML, the `ProviderAttributeName` can be any value that matches a
1354
1351
  # claim in the SAML assertion. If you want to link SAML users based on
1355
1352
  # the subject of the SAML assertion, you should map the subject to a
1356
- # claim through the SAML identity provider and submit that claim name as
1357
- # the `ProviderAttributeName`. If you set `ProviderAttributeName` to
1353
+ # claim through the SAML IdP and submit that claim name as the
1354
+ # `ProviderAttributeName`. If you set `ProviderAttributeName` to
1358
1355
  # `Cognito_Subject`, Amazon Cognito will automatically parse the default
1359
1356
  # unique identifier found in the subject from the SAML token.
1360
1357
  #
@@ -1755,9 +1752,22 @@ module Aws::CognitoIdentityProvider
1755
1752
  # * `ADMIN_NO_SRP_AUTH`\: `PASSWORD`, `USERNAME`, `SECRET_HASH` (if app
1756
1753
  # client is configured with client secret).
1757
1754
  #
1758
- # * `NEW_PASSWORD_REQUIRED`\: `NEW_PASSWORD`, any other required
1759
- # attributes, `USERNAME`, `SECRET_HASH` (if app client is configured
1760
- # with client secret).
1755
+ # * `NEW_PASSWORD_REQUIRED`\: `NEW_PASSWORD`, `USERNAME`, `SECRET_HASH`
1756
+ # (if app client is configured with client secret). To set any
1757
+ # required attributes that Amazon Cognito returned as
1758
+ # `requiredAttributes` in the `AdminInitiateAuth` response, add a
1759
+ # `userAttributes.attributename ` parameter. This parameter can also
1760
+ # set values for writable attributes that aren't required by your
1761
+ # user pool.
1762
+ #
1763
+ # <note markdown="1"> In a `NEW_PASSWORD_REQUIRED` challenge response, you can't modify a
1764
+ # required attribute that already has a value. In
1765
+ # `AdminRespondToAuthChallenge`, set a value for any keys that Amazon
1766
+ # Cognito returned in the `requiredAttributes` parameter, then use the
1767
+ # `AdminUpdateUserAttributes` API operation to modify the value of any
1768
+ # additional attributes.
1769
+ #
1770
+ # </note>
1761
1771
  #
1762
1772
  # * `MFA_SETUP` requires `USERNAME`, plus you must use the session value
1763
1773
  # returned by `VerifySoftwareToken` in the `Session` parameter.
@@ -2158,6 +2168,21 @@ module Aws::CognitoIdentityProvider
2158
2168
  # For custom attributes, you must prepend the `custom:` prefix to the
2159
2169
  # attribute name.
2160
2170
  #
2171
+ # If your user pool requires verification before Amazon Cognito updates
2172
+ # an attribute value that you specify in this request, Amazon Cognito
2173
+ # doesn’t immediately update the value of that attribute. After your
2174
+ # user receives and responds to a verification message to verify the new
2175
+ # value, Amazon Cognito updates the attribute value. Your user can sign
2176
+ # in and receive messages with the original attribute value until they
2177
+ # verify the new value.
2178
+ #
2179
+ # To update the value of an attribute that requires verification in the
2180
+ # same API request, include the `email_verified` or
2181
+ # `phone_number_verified` attribute, with a value of `true`. If you set
2182
+ # the `email_verified` or `phone_number_verified` value for an `email`
2183
+ # or `phone_number` attribute that requires verification to `true`,
2184
+ # Amazon Cognito doesn’t send a verification message to your user.
2185
+ #
2161
2186
  # @option params [Hash<String,String>] :client_metadata
2162
2187
  # A map of custom key-value pairs that you can provide as input for any
2163
2188
  # custom workflows that this action triggers.
@@ -2222,10 +2247,14 @@ module Aws::CognitoIdentityProvider
2222
2247
  req.send_request(options)
2223
2248
  end
2224
2249
 
2225
- # Signs out users from all devices, as an administrator. It also
2226
- # invalidates all refresh tokens issued to a user. The user's current
2227
- # access and Id tokens remain valid until their expiry. Access and Id
2228
- # tokens expire one hour after they're issued.
2250
+ # Signs out a user from all devices. You must sign
2251
+ # `AdminUserGlobalSignOut` requests with Amazon Web Services
2252
+ # credentials. It also invalidates all refresh tokens that Amazon
2253
+ # Cognito has issued to a user. The user's current access and ID tokens
2254
+ # remain valid until they expire. By default, access and ID tokens
2255
+ # expire one hour after they're issued. A user can still use a hosted
2256
+ # UI cookie to retrieve new tokens for the duration of the cookie
2257
+ # validity period of 1 hour.
2229
2258
  #
2230
2259
  # Calling this action requires developer credentials.
2231
2260
  #
@@ -2268,7 +2297,8 @@ module Aws::CognitoIdentityProvider
2268
2297
  # </note>
2269
2298
  #
2270
2299
  # @option params [String] :access_token
2271
- # The access token.
2300
+ # A valid access token that Amazon Cognito issued to the user whose
2301
+ # software token you want to generate.
2272
2302
  #
2273
2303
  # @option params [String] :session
2274
2304
  # The session that should be passed both ways in challenge-response
@@ -2310,7 +2340,8 @@ module Aws::CognitoIdentityProvider
2310
2340
  # The new password.
2311
2341
  #
2312
2342
  # @option params [required, String] :access_token
2313
- # The access token.
2343
+ # A valid access token that Amazon Cognito issued to the user whose
2344
+ # password you want to change.
2314
2345
  #
2315
2346
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
2316
2347
  #
@@ -2335,7 +2366,8 @@ module Aws::CognitoIdentityProvider
2335
2366
  # device tracking.
2336
2367
  #
2337
2368
  # @option params [required, String] :access_token
2338
- # The access token.
2369
+ # A valid access token that Amazon Cognito issued to the user whose
2370
+ # device you want to confirm.
2339
2371
  #
2340
2372
  # @option params [required, String] :device_key
2341
2373
  # The device key.
@@ -2478,8 +2510,7 @@ module Aws::CognitoIdentityProvider
2478
2510
  req.send_request(options)
2479
2511
  end
2480
2512
 
2481
- # Confirms registration of a user and handles the existing alias from a
2482
- # previous user.
2513
+ # Confirms registration of a new user.
2483
2514
  #
2484
2515
  # @option params [required, String] :client_id
2485
2516
  # The ID of the app client associated with the user pool.
@@ -2600,7 +2631,7 @@ module Aws::CognitoIdentityProvider
2600
2631
  # A non-negative integer value that specifies the precedence of this
2601
2632
  # group relative to the other groups that a user can belong to in the
2602
2633
  # user pool. Zero is the highest precedence value. Groups with lower
2603
- # `Precedence` values take precedence over groups with higher ornull
2634
+ # `Precedence` values take precedence over groups with higher or null
2604
2635
  # `Precedence` values. If a user belongs to two or more groups, it is
2605
2636
  # the group with the lowest precedence value whose role ARN is given in
2606
2637
  # the user's tokens for the `cognito:roles` and
@@ -2613,7 +2644,8 @@ module Aws::CognitoIdentityProvider
2613
2644
  # the two groups have different role ARNs, the `cognito:preferred_role`
2614
2645
  # claim isn't set in users' tokens.
2615
2646
  #
2616
- # The default `Precedence` value is null.
2647
+ # The default `Precedence` value is null. The maximum `Precedence` value
2648
+ # is `2^31-1`.
2617
2649
  #
2618
2650
  # @return [Types::CreateGroupResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2619
2651
  #
@@ -2648,20 +2680,20 @@ module Aws::CognitoIdentityProvider
2648
2680
  req.send_request(options)
2649
2681
  end
2650
2682
 
2651
- # Creates an identity provider for a user pool.
2683
+ # Creates an IdP for a user pool.
2652
2684
  #
2653
2685
  # @option params [required, String] :user_pool_id
2654
2686
  # The user pool ID.
2655
2687
  #
2656
2688
  # @option params [required, String] :provider_name
2657
- # The identity provider name.
2689
+ # The IdP name.
2658
2690
  #
2659
2691
  # @option params [required, String] :provider_type
2660
- # The identity provider type.
2692
+ # The IdP type.
2661
2693
  #
2662
2694
  # @option params [required, Hash<String,String>] :provider_details
2663
- # The identity provider details. The following list describes the
2664
- # provider detail keys for each identity provider type.
2695
+ # The IdP details. The following list describes the provider detail keys
2696
+ # for each IdP type.
2665
2697
  #
2666
2698
  # * For Google and Login with Amazon:
2667
2699
  #
@@ -2705,33 +2737,36 @@ module Aws::CognitoIdentityProvider
2705
2737
  #
2706
2738
  # * authorize\_scopes
2707
2739
  #
2708
- # * authorize\_url *if not available from discovery URL specified by
2709
- # oidc\_issuer key*
2740
+ # * The following keys are only present if Amazon Cognito didn't
2741
+ # discover them at the `oidc_issuer` URL.
2742
+ #
2743
+ # * authorize\_url
2710
2744
  #
2711
- # * token\_url *if not available from discovery URL specified by
2712
- # oidc\_issuer key*
2745
+ # * token\_url
2713
2746
  #
2714
- # * attributes\_url *if not available from discovery URL specified by
2715
- # oidc\_issuer key*
2747
+ # * attributes\_url
2716
2748
  #
2717
- # * jwks\_uri *if not available from discovery URL specified by
2718
- # oidc\_issuer key*
2749
+ # * jwks\_uri
2719
2750
  #
2720
- # * attributes\_url\_add\_attributes *a read-only property that is set
2721
- # automatically*
2751
+ # * Amazon Cognito sets the value of the following keys automatically.
2752
+ # They are read-only.
2753
+ #
2754
+ # * attributes\_url\_add\_attributes
2755
+ #
2756
+ # ^
2722
2757
  #
2723
2758
  # * For SAML providers:
2724
2759
  #
2725
- # * MetadataFile OR MetadataURL
2760
+ # * MetadataFile or MetadataURL
2726
2761
  #
2727
- # * IDPSignout (optional)
2762
+ # * IDPSignout *optional*
2728
2763
  #
2729
2764
  # @option params [Hash<String,String>] :attribute_mapping
2730
- # A mapping of identity provider attributes to standard and custom user
2731
- # pool attributes.
2765
+ # A mapping of IdP attributes to standard and custom user pool
2766
+ # attributes.
2732
2767
  #
2733
2768
  # @option params [Array<String>] :idp_identifiers
2734
- # A list of identity provider identifiers.
2769
+ # A list of IdP identifiers.
2735
2770
  #
2736
2771
  # @return [Types::CreateIdentityProviderResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2737
2772
  #
@@ -2979,6 +3014,8 @@ module Aws::CognitoIdentityProvider
2979
3014
  # @option params [String] :mfa_configuration
2980
3015
  # Specifies MFA configuration details.
2981
3016
  #
3017
+ # @option params [Types::UserAttributeUpdateSettingsType] :user_attribute_update_settings
3018
+ #
2982
3019
  # @option params [Types::DeviceConfigurationType] :device_configuration
2983
3020
  # The device configuration.
2984
3021
  #
@@ -3087,6 +3124,9 @@ module Aws::CognitoIdentityProvider
3087
3124
  # },
3088
3125
  # sms_authentication_message: "SmsVerificationMessageType",
3089
3126
  # mfa_configuration: "OFF", # accepts OFF, ON, OPTIONAL
3127
+ # user_attribute_update_settings: {
3128
+ # attributes_require_verification_before_update: ["phone_number"], # accepts phone_number, email
3129
+ # },
3090
3130
  # device_configuration: {
3091
3131
  # challenge_required_on_new_device: false,
3092
3132
  # device_only_remembered_on_user_prompt: false,
@@ -3202,6 +3242,8 @@ module Aws::CognitoIdentityProvider
3202
3242
  # resp.user_pool.verification_message_template.email_subject_by_link #=> String
3203
3243
  # resp.user_pool.verification_message_template.default_email_option #=> String, one of "CONFIRM_WITH_LINK", "CONFIRM_WITH_CODE"
3204
3244
  # resp.user_pool.sms_authentication_message #=> String
3245
+ # resp.user_pool.user_attribute_update_settings.attributes_require_verification_before_update #=> Array
3246
+ # resp.user_pool.user_attribute_update_settings.attributes_require_verification_before_update[0] #=> String, one of "phone_number", "email"
3205
3247
  # resp.user_pool.mfa_configuration #=> String, one of "OFF", "ON", "OPTIONAL"
3206
3248
  # resp.user_pool.device_configuration.challenge_required_on_new_device #=> Boolean
3207
3249
  # resp.user_pool.device_configuration.device_only_remembered_on_user_prompt #=> Boolean
@@ -3263,22 +3305,50 @@ module Aws::CognitoIdentityProvider
3263
3305
  # pool client being created.
3264
3306
  #
3265
3307
  # @option params [Integer] :refresh_token_validity
3266
- # The time limit, in days, after which the refresh token is no longer
3267
- # valid and can't be used.
3308
+ # The refresh token time limit. After this limit expires, your user
3309
+ # can't use their refresh token. To specify the time unit for
3310
+ # `RefreshTokenValidity` as `seconds`, `minutes`, `hours`, or `days`,
3311
+ # set a `TokenValidityUnits` value in your API request.
3312
+ #
3313
+ # For example, when you set `RefreshTokenValidity` as `10` and
3314
+ # `TokenValidityUnits` as `days`, your user can refresh their session
3315
+ # and retrieve new access and ID tokens for 10 days.
3316
+ #
3317
+ # The default time unit for `RefreshTokenValidity` in an API request is
3318
+ # days. You can't set `RefreshTokenValidity` to 0. If you do, Amazon
3319
+ # Cognito overrides the value with the default value of 30 days. *Valid
3320
+ # range* is displayed below in seconds.
3268
3321
  #
3269
3322
  # @option params [Integer] :access_token_validity
3270
- # The time limit, between 5 minutes and 1 day, after which the access
3271
- # token is no longer valid and can't be used. If you supply a
3272
- # TokenValidityUnits value, you will override the default time unit.
3323
+ # The access token time limit. After this limit expires, your user
3324
+ # can't use their access token. To specify the time unit for
3325
+ # `AccessTokenValidity` as `seconds`, `minutes`, `hours`, or `days`, set
3326
+ # a `TokenValidityUnits` value in your API request.
3327
+ #
3328
+ # For example, when you set `AccessTokenValidity` to `10` and
3329
+ # `TokenValidityUnits` to `hours`, your user can authorize access with
3330
+ # their access token for 10 hours.
3331
+ #
3332
+ # The default time unit for `AccessTokenValidity` in an API request is
3333
+ # hours. *Valid range* is displayed below in seconds.
3273
3334
  #
3274
3335
  # @option params [Integer] :id_token_validity
3275
- # The time limit, between 5 minutes and 1 day, after which the access
3276
- # token is no longer valid and can't be used. If you supply a
3277
- # TokenValidityUnits value, you will override the default time unit.
3336
+ # The ID token time limit. After this limit expires, your user can't
3337
+ # use their ID token. To specify the time unit for `IdTokenValidity` as
3338
+ # `seconds`, `minutes`, `hours`, or `days`, set a `TokenValidityUnits`
3339
+ # value in your API request.
3340
+ #
3341
+ # For example, when you set `IdTokenValidity` as `10` and
3342
+ # `TokenValidityUnits` as `hours`, your user can authenticate their
3343
+ # session with their ID token for 10 hours.
3344
+ #
3345
+ # The default time unit for `AccessTokenValidity` in an API request is
3346
+ # hours. *Valid range* is displayed below in seconds.
3278
3347
  #
3279
3348
  # @option params [Types::TokenValidityUnitsType] :token_validity_units
3280
- # The units in which the validity times are represented. Default for
3281
- # RefreshToken is days, and default for ID and access tokens are hours.
3349
+ # The units in which the validity times are represented. The default
3350
+ # unit for RefreshToken is days, and default for ID and access tokens
3351
+ # are hours.
3282
3352
  #
3283
3353
  # @option params [Array<String>] :read_attributes
3284
3354
  # The read attributes.
@@ -3286,14 +3356,13 @@ module Aws::CognitoIdentityProvider
3286
3356
  # @option params [Array<String>] :write_attributes
3287
3357
  # The user pool attributes that the app client can write to.
3288
3358
  #
3289
- # If your app client allows users to sign in through an identity
3290
- # provider, this array must include all attributes that you have mapped
3291
- # to identity provider attributes. Amazon Cognito updates mapped
3292
- # attributes when users sign in to your application through an identity
3293
- # provider. If your app client does not have write access to a mapped
3294
- # attribute, Amazon Cognito throws an error when it tries to update the
3295
- # attribute. For more information, see [Specifying Identity Provider
3296
- # Attribute Mappings for Your user pool][1].
3359
+ # If your app client allows users to sign in through an IdP, this array
3360
+ # must include all attributes that you have mapped to IdP attributes.
3361
+ # Amazon Cognito updates mapped attributes when users sign in to your
3362
+ # application through an IdP. If your app client does not have write
3363
+ # access to a mapped attribute, Amazon Cognito throws an error when it
3364
+ # tries to update the attribute. For more information, see [Specifying
3365
+ # IdP Attribute Mappings for Your user pool][1].
3297
3366
  #
3298
3367
  #
3299
3368
  #
@@ -3328,13 +3397,17 @@ module Aws::CognitoIdentityProvider
3328
3397
  #
3329
3398
  # * `ALLOW_REFRESH_TOKEN_AUTH`\: Enable authflow to refresh tokens.
3330
3399
  #
3400
+ # If you don't specify a value for `ExplicitAuthFlows`, your app client
3401
+ # activates the `ALLOW_USER_SRP_AUTH` and `ALLOW_CUSTOM_AUTH`
3402
+ # authentication flows.
3403
+ #
3331
3404
  # @option params [Array<String>] :supported_identity_providers
3332
- # A list of provider names for the identity providers that are supported
3333
- # on this client. The following are supported: `COGNITO`, `Facebook`,
3334
- # `Google` and `LoginWithAmazon`.
3405
+ # A list of provider names for the IdPs that this client supports. The
3406
+ # following are supported: `COGNITO`, `Facebook`, `Google`
3407
+ # `LoginWithAmazon`, and the names of your own SAML and OIDC providers.
3335
3408
  #
3336
3409
  # @option params [Array<String>] :callback_urls
3337
- # A list of allowed redirect (callback) URLs for the identity providers.
3410
+ # A list of allowed redirect (callback) URLs for the IdPs.
3338
3411
  #
3339
3412
  # A redirect URI must:
3340
3413
  #
@@ -3356,7 +3429,7 @@ module Aws::CognitoIdentityProvider
3356
3429
  # [1]: https://tools.ietf.org/html/rfc6749#section-3.1.2
3357
3430
  #
3358
3431
  # @option params [Array<String>] :logout_urls
3359
- # A list of allowed logout URLs for the identity providers.
3432
+ # A list of allowed logout URLs for the IdPs.
3360
3433
  #
3361
3434
  # @option params [String] :default_redirect_uri
3362
3435
  # The default redirect URI. Must be in the `CallbackURLs` list.
@@ -3383,22 +3456,28 @@ module Aws::CognitoIdentityProvider
3383
3456
  # @option params [Array<String>] :allowed_o_auth_flows
3384
3457
  # The allowed OAuth flows.
3385
3458
  #
3386
- # Set to `code` to initiate a code grant flow, which provides an
3387
- # authorization code as the response. This code can be exchanged for
3388
- # access tokens with the token endpoint.
3459
+ # code
3460
+ #
3461
+ # : Use a code grant flow, which provides an authorization code as the
3462
+ # response. This code can be exchanged for access tokens with the
3463
+ # `/oauth2/token` endpoint.
3464
+ #
3465
+ # implicit
3389
3466
  #
3390
- # Set to `implicit` to specify that the client should get the access
3391
- # token (and, optionally, ID token, based on scopes) directly.
3467
+ # : Issue the access token (and, optionally, ID token, based on scopes)
3468
+ # directly to your user.
3392
3469
  #
3393
- # Set to `client_credentials` to specify that the client should get the
3394
- # access token (and, optionally, ID token, based on scopes) from the
3395
- # token endpoint using a combination of client and client\_secret.
3470
+ # client\_credentials
3471
+ #
3472
+ # : Issue the access token from the `/oauth2/token` endpoint directly to
3473
+ # a non-person user using a combination of the client ID and client
3474
+ # secret.
3396
3475
  #
3397
3476
  # @option params [Array<String>] :allowed_o_auth_scopes
3398
- # The allowed OAuth scopes. Possible values provided by OAuth are:
3477
+ # The allowed OAuth scopes. Possible values provided by OAuth are
3399
3478
  # `phone`, `email`, `openid`, and `profile`. Possible values provided by
3400
- # Amazon Web Services are: `aws.cognito.signin.user.admin`. Custom
3401
- # scopes created in Resource Servers are also supported.
3479
+ # Amazon Web Services are `aws.cognito.signin.user.admin`. Custom scopes
3480
+ # created in Resource Servers are also supported.
3402
3481
  #
3403
3482
  # @option params [Boolean] :allowed_o_auth_flows_user_pool_client
3404
3483
  # Set to true if the client is allowed to follow the OAuth protocol when
@@ -3613,13 +3692,13 @@ module Aws::CognitoIdentityProvider
3613
3692
  req.send_request(options)
3614
3693
  end
3615
3694
 
3616
- # Deletes an identity provider for a user pool.
3695
+ # Deletes an IdP for a user pool.
3617
3696
  #
3618
3697
  # @option params [required, String] :user_pool_id
3619
3698
  # The user pool ID.
3620
3699
  #
3621
3700
  # @option params [required, String] :provider_name
3622
- # The identity provider name.
3701
+ # The IdP name.
3623
3702
  #
3624
3703
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3625
3704
  #
@@ -3668,7 +3747,8 @@ module Aws::CognitoIdentityProvider
3668
3747
  # Allows a user to delete himself or herself.
3669
3748
  #
3670
3749
  # @option params [required, String] :access_token
3671
- # The access token from a request to delete a user.
3750
+ # A valid access token that Amazon Cognito issued to the user whose user
3751
+ # profile you want to delete.
3672
3752
  #
3673
3753
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3674
3754
  #
@@ -3697,7 +3777,8 @@ module Aws::CognitoIdentityProvider
3697
3777
  # the front of the attribute name.
3698
3778
  #
3699
3779
  # @option params [required, String] :access_token
3700
- # The access token used in the request to delete user attributes.
3780
+ # A valid access token that Amazon Cognito issued to the user whose
3781
+ # attributes you want to delete.
3701
3782
  #
3702
3783
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
3703
3784
  #
@@ -3794,13 +3875,13 @@ module Aws::CognitoIdentityProvider
3794
3875
  req.send_request(options)
3795
3876
  end
3796
3877
 
3797
- # Gets information about a specific identity provider.
3878
+ # Gets information about a specific IdP.
3798
3879
  #
3799
3880
  # @option params [required, String] :user_pool_id
3800
3881
  # The user pool ID.
3801
3882
  #
3802
3883
  # @option params [required, String] :provider_name
3803
- # The identity provider name.
3884
+ # The IdP name.
3804
3885
  #
3805
3886
  # @return [Types::DescribeIdentityProviderResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3806
3887
  #
@@ -4047,6 +4128,8 @@ module Aws::CognitoIdentityProvider
4047
4128
  # resp.user_pool.verification_message_template.email_subject_by_link #=> String
4048
4129
  # resp.user_pool.verification_message_template.default_email_option #=> String, one of "CONFIRM_WITH_LINK", "CONFIRM_WITH_CODE"
4049
4130
  # resp.user_pool.sms_authentication_message #=> String
4131
+ # resp.user_pool.user_attribute_update_settings.attributes_require_verification_before_update #=> Array
4132
+ # resp.user_pool.user_attribute_update_settings.attributes_require_verification_before_update[0] #=> String, one of "phone_number", "email"
4050
4133
  # resp.user_pool.mfa_configuration #=> String, one of "OFF", "ON", "OPTIONAL"
4051
4134
  # resp.user_pool.device_configuration.challenge_required_on_new_device #=> Boolean
4052
4135
  # resp.user_pool.device_configuration.device_only_remembered_on_user_prompt #=> Boolean
@@ -4195,7 +4278,8 @@ module Aws::CognitoIdentityProvider
4195
4278
  # Forgets the specified device.
4196
4279
  #
4197
4280
  # @option params [String] :access_token
4198
- # The access token for the forgotten device request.
4281
+ # A valid access token that Amazon Cognito issued to the user whose
4282
+ # registered device you want to forget.
4199
4283
  #
4200
4284
  # @option params [required, String] :device_key
4201
4285
  # The device key.
@@ -4274,8 +4358,8 @@ module Aws::CognitoIdentityProvider
4274
4358
  # forgotten password.
4275
4359
  #
4276
4360
  # @option params [Types::AnalyticsMetadataType] :analytics_metadata
4277
- # The Amazon Pinpoint analytics metadata for collecting metrics for
4278
- # `ForgotPassword` calls.
4361
+ # The Amazon Pinpoint analytics metadata that contributes to your
4362
+ # metrics for `ForgotPassword` calls.
4279
4363
  #
4280
4364
  # @option params [Hash<String,String>] :client_metadata
4281
4365
  # A map of custom key-value pairs that you can provide as input for any
@@ -4389,7 +4473,8 @@ module Aws::CognitoIdentityProvider
4389
4473
  # The device key.
4390
4474
  #
4391
4475
  # @option params [String] :access_token
4392
- # The access token.
4476
+ # A valid access token that Amazon Cognito issued to the user whose
4477
+ # device information you want to request.
4393
4478
  #
4394
4479
  # @return [Types::GetDeviceResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4395
4480
  #
@@ -4461,13 +4546,13 @@ module Aws::CognitoIdentityProvider
4461
4546
  req.send_request(options)
4462
4547
  end
4463
4548
 
4464
- # Gets the specified identity provider.
4549
+ # Gets the specified IdP.
4465
4550
  #
4466
4551
  # @option params [required, String] :user_pool_id
4467
4552
  # The user pool ID.
4468
4553
  #
4469
4554
  # @option params [required, String] :idp_identifier
4470
- # The identity provider ID.
4555
+ # The IdP identifier.
4471
4556
  #
4472
4557
  # @return [Types::GetIdentityProviderByIdentifierResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4473
4558
  #
@@ -4577,8 +4662,8 @@ module Aws::CognitoIdentityProvider
4577
4662
  # Gets the user attributes and metadata for a user.
4578
4663
  #
4579
4664
  # @option params [required, String] :access_token
4580
- # The access token returned by the server response to get information
4581
- # about the user.
4665
+ # A non-expired access token for the user whose information you want to
4666
+ # query.
4582
4667
  #
4583
4668
  # @return [Types::GetUserResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4584
4669
  #
@@ -4616,8 +4701,9 @@ module Aws::CognitoIdentityProvider
4616
4701
  req.send_request(options)
4617
4702
  end
4618
4703
 
4619
- # Gets the user attribute verification code for the specified attribute
4620
- # name.
4704
+ # Generates a user attribute verification code for the specified
4705
+ # attribute name. Sends a message to a user with a code that they must
4706
+ # return in a VerifyUserAttribute request.
4621
4707
  #
4622
4708
  # <note markdown="1"> This action might generate an SMS text message. Starting June 1, 2021,
4623
4709
  # US telecom carriers require you to register an origination phone
@@ -4646,8 +4732,8 @@ module Aws::CognitoIdentityProvider
4646
4732
  # [2]: https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-identity-pools-sms-userpool-settings.html
4647
4733
  #
4648
4734
  # @option params [required, String] :access_token
4649
- # The access token returned by the server response to get the user
4650
- # attribute verification code.
4735
+ # A non-expired access token for the user whose attribute verification
4736
+ # code you want to generate.
4651
4737
  #
4652
4738
  # @option params [required, String] :attribute_name
4653
4739
  # The attribute name returned by the server response to get the user
@@ -4755,12 +4841,15 @@ module Aws::CognitoIdentityProvider
4755
4841
  end
4756
4842
 
4757
4843
  # Signs out users from all devices. It also invalidates all refresh
4758
- # tokens issued to a user. The user's current access and ID tokens
4759
- # remain valid until their expiry. Access and Id tokens expire one hour
4760
- # after they're issued.
4844
+ # tokens that Amazon Cognito has issued to a user. The user's current
4845
+ # access and ID tokens remain valid until their expiry. By default,
4846
+ # access and ID tokens expire one hour after Amazon Cognito issues them.
4847
+ # A user can still use a hosted UI cookie to retrieve new tokens for the
4848
+ # duration of the cookie validity period of 1 hour.
4761
4849
  #
4762
4850
  # @option params [required, String] :access_token
4763
- # The access token.
4851
+ # A valid access token that Amazon Cognito issued to the user who you
4852
+ # want to sign out.
4764
4853
  #
4765
4854
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
4766
4855
  #
@@ -4779,13 +4868,16 @@ module Aws::CognitoIdentityProvider
4779
4868
  req.send_request(options)
4780
4869
  end
4781
4870
 
4782
- # Initiates the authentication flow.
4871
+ # Initiates sign-in for a user in the Amazon Cognito user directory. You
4872
+ # can't sign in a user with a federated IdP with `InitiateAuth`. For
4873
+ # more information, see [ Adding user pool sign-in through a third
4874
+ # party][1].
4783
4875
  #
4784
4876
  # <note markdown="1"> This action might generate an SMS text message. Starting June 1, 2021,
4785
4877
  # US telecom carriers require you to register an origination phone
4786
4878
  # number before you can send SMS messages to US phone numbers. If you
4787
4879
  # use SMS text messages in Amazon Cognito, you must register a phone
4788
- # number with [Amazon Pinpoint][1]. Amazon Cognito uses the registered
4880
+ # number with [Amazon Pinpoint][2]. Amazon Cognito uses the registered
4789
4881
  # number automatically. Otherwise, Amazon Cognito users who must receive
4790
4882
  # SMS messages might not be able to sign up, activate their accounts, or
4791
4883
  # sign in.
@@ -4797,15 +4889,16 @@ module Aws::CognitoIdentityProvider
4797
4889
  # mode</a> </i>, you can send messages only to verified phone numbers.
4798
4890
  # After you test your app while in the sandbox environment, you can move
4799
4891
  # out of the sandbox and into production. For more information, see [
4800
- # SMS message settings for Amazon Cognito user pools][2] in the *Amazon
4892
+ # SMS message settings for Amazon Cognito user pools][3] in the *Amazon
4801
4893
  # Cognito Developer Guide*.
4802
4894
  #
4803
4895
  # </note>
4804
4896
  #
4805
4897
  #
4806
4898
  #
4807
- # [1]: https://console.aws.amazon.com/pinpoint/home/
4808
- # [2]: https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-identity-pools-sms-userpool-settings.html
4899
+ # [1]: https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-identity-federation.html
4900
+ # [2]: https://console.aws.amazon.com/pinpoint/home/
4901
+ # [3]: https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-identity-pools-sms-userpool-settings.html
4809
4902
  #
4810
4903
  # @option params [required, String] :auth_flow
4811
4904
  # The authentication flow for this call to run. The API action will
@@ -4831,10 +4924,10 @@ module Aws::CognitoIdentityProvider
4831
4924
  #
4832
4925
  # * `CUSTOM_AUTH`\: Custom authentication flow.
4833
4926
  #
4834
- # * `USER_PASSWORD_AUTH`\: Non-SRP authentication flow; USERNAME and
4835
- # PASSWORD are passed directly. If a user migration Lambda trigger is
4927
+ # * `USER_PASSWORD_AUTH`\: Non-SRP authentication flow; user name and
4928
+ # password are passed directly. If a user migration Lambda trigger is
4836
4929
  # set, this flow will invoke the user migration Lambda if it doesn't
4837
- # find the USERNAME in the user pool.
4930
+ # find the user name in the user pool.
4838
4931
  #
4839
4932
  # `ADMIN_NO_SRP_AUTH` isn't a valid value.
4840
4933
  #
@@ -4922,8 +5015,8 @@ module Aws::CognitoIdentityProvider
4922
5015
  # The app client ID.
4923
5016
  #
4924
5017
  # @option params [Types::AnalyticsMetadataType] :analytics_metadata
4925
- # The Amazon Pinpoint analytics metadata for collecting metrics for
4926
- # `InitiateAuth` calls.
5018
+ # The Amazon Pinpoint analytics metadata that contributes to your
5019
+ # metrics for `InitiateAuth` calls.
4927
5020
  #
4928
5021
  # @option params [Types::UserContextDataType] :user_context_data
4929
5022
  # Contextual data such as the user's device fingerprint, IP address, or
@@ -4979,10 +5072,12 @@ module Aws::CognitoIdentityProvider
4979
5072
  req.send_request(options)
4980
5073
  end
4981
5074
 
4982
- # Lists the devices.
5075
+ # Lists the sign-in devices that Amazon Cognito has registered to the
5076
+ # current user.
4983
5077
  #
4984
5078
  # @option params [required, String] :access_token
4985
- # The access tokens for the request to list devices.
5079
+ # A valid access token that Amazon Cognito issued to the user whose list
5080
+ # of devices you want to view.
4986
5081
  #
4987
5082
  # @option params [Integer] :limit
4988
5083
  # The limit of the device request.
@@ -5075,13 +5170,13 @@ module Aws::CognitoIdentityProvider
5075
5170
  req.send_request(options)
5076
5171
  end
5077
5172
 
5078
- # Lists information about all identity providers for a user pool.
5173
+ # Lists information about all IdPs for a user pool.
5079
5174
  #
5080
5175
  # @option params [required, String] :user_pool_id
5081
5176
  # The user pool ID.
5082
5177
  #
5083
5178
  # @option params [Integer] :max_results
5084
- # The maximum number of identity providers to return.
5179
+ # The maximum number of IdPs to return.
5085
5180
  #
5086
5181
  # @option params [String] :next_token
5087
5182
  # A pagination token.
@@ -5425,8 +5520,8 @@ module Aws::CognitoIdentityProvider
5425
5520
  # Custom attributes aren't searchable.
5426
5521
  #
5427
5522
  # <note markdown="1"> You can also list users with a client-side filter. The server-side
5428
- # filter matches no more than 1 attribute. For an advanced search, use a
5429
- # client-side filter with the `--query` parameter of the `list-users`
5523
+ # filter matches no more than one attribute. For an advanced search, use
5524
+ # a client-side filter with the `--query` parameter of the `list-users`
5430
5525
  # action in the CLI. When you use a client-side filter, ListUsers
5431
5526
  # returns a paginated list of zero or more users. You can receive
5432
5527
  # multiple pages in a row with zero results. Repeat the query with each
@@ -5597,8 +5692,8 @@ module Aws::CognitoIdentityProvider
5597
5692
  # confirmation code.
5598
5693
  #
5599
5694
  # @option params [Types::AnalyticsMetadataType] :analytics_metadata
5600
- # The Amazon Pinpoint analytics metadata for collecting metrics for
5601
- # `ResendConfirmationCode` calls.
5695
+ # The Amazon Pinpoint analytics metadata that contributes to your
5696
+ # metrics for `ResendConfirmationCode` calls.
5602
5697
  #
5603
5698
  # @option params [Hash<String,String>] :client_metadata
5604
5699
  # A map of custom key-value pairs that you can provide as input for any
@@ -5734,13 +5829,27 @@ module Aws::CognitoIdentityProvider
5734
5829
  # * `PASSWORD_VERIFIER`\: `PASSWORD_CLAIM_SIGNATURE`,
5735
5830
  # `PASSWORD_CLAIM_SECRET_BLOCK`, `TIMESTAMP`, `USERNAME`.
5736
5831
  #
5737
- # <note markdown="1"> `PASSWORD_VERIFIER` requires `DEVICE_KEY` when signing in with a
5832
+ # <note markdown="1"> `PASSWORD_VERIFIER` requires `DEVICE_KEY` when you sign in with a
5738
5833
  # remembered device.
5739
5834
  #
5740
5835
  # </note>
5741
5836
  #
5742
- # * `NEW_PASSWORD_REQUIRED`\: `NEW_PASSWORD`, any other required
5743
- # attributes, `USERNAME`.
5837
+ # * `NEW_PASSWORD_REQUIRED`\: `NEW_PASSWORD`, `USERNAME`, `SECRET_HASH`
5838
+ # (if app client is configured with client secret). To set any
5839
+ # required attributes that Amazon Cognito returned as
5840
+ # `requiredAttributes` in the `InitiateAuth` response, add a
5841
+ # `userAttributes.attributename ` parameter. This parameter can also
5842
+ # set values for writable attributes that aren't required by your
5843
+ # user pool.
5844
+ #
5845
+ # <note markdown="1"> In a `NEW_PASSWORD_REQUIRED` challenge response, you can't modify a
5846
+ # required attribute that already has a value. In
5847
+ # `RespondToAuthChallenge`, set a value for any keys that Amazon
5848
+ # Cognito returned in the `requiredAttributes` parameter, then use the
5849
+ # `UpdateUserAttributes` API operation to modify the value of any
5850
+ # additional attributes.
5851
+ #
5852
+ # </note>
5744
5853
  #
5745
5854
  # * `SOFTWARE_TOKEN_MFA`\: `USERNAME` and `SOFTWARE_TOKEN_MFA_CODE` are
5746
5855
  # required attributes.
@@ -5755,8 +5864,8 @@ module Aws::CognitoIdentityProvider
5755
5864
  # returned by `VerifySoftwareToken` in the `Session` parameter.
5756
5865
  #
5757
5866
  # @option params [Types::AnalyticsMetadataType] :analytics_metadata
5758
- # The Amazon Pinpoint analytics metadata for collecting metrics for
5759
- # `RespondToAuthChallenge` calls.
5867
+ # The Amazon Pinpoint analytics metadata that contributes to your
5868
+ # metrics for `RespondToAuthChallenge` calls.
5760
5869
  #
5761
5870
  # @option params [Types::UserContextDataType] :user_context_data
5762
5871
  # Contextual data such as the user's device fingerprint, IP address, or
@@ -6089,7 +6198,8 @@ module Aws::CognitoIdentityProvider
6089
6198
  # The time-based one-time password software token MFA settings.
6090
6199
  #
6091
6200
  # @option params [required, String] :access_token
6092
- # The access token for the user.
6201
+ # A valid access token that Amazon Cognito issued to the user whose MFA
6202
+ # preference you want to set.
6093
6203
  #
6094
6204
  # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
6095
6205
  #
@@ -6219,7 +6329,8 @@ module Aws::CognitoIdentityProvider
6219
6329
  # [1]: https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_SetUserMFAPreference.html
6220
6330
  #
6221
6331
  # @option params [required, String] :access_token
6222
- # The access token for the set user settings request.
6332
+ # A valid access token that Amazon Cognito issued to the user whose user
6333
+ # settings you want to configure.
6223
6334
  #
6224
6335
  # @option params [required, Array<Types::MFAOptionType>] :mfa_options
6225
6336
  # You can use this parameter only to set an SMS configuration that uses
@@ -6301,8 +6412,8 @@ module Aws::CognitoIdentityProvider
6301
6412
  # The validation data in the request to register a user.
6302
6413
  #
6303
6414
  # @option params [Types::AnalyticsMetadataType] :analytics_metadata
6304
- # The Amazon Pinpoint analytics metadata for collecting metrics for
6305
- # `SignUp` calls.
6415
+ # The Amazon Pinpoint analytics metadata that contributes to your
6416
+ # metrics for `SignUp` calls.
6306
6417
  #
6307
6418
  # @option params [Types::UserContextDataType] :user_context_data
6308
6419
  # Contextual data such as the user's device fingerprint, IP address, or
@@ -6607,7 +6718,8 @@ module Aws::CognitoIdentityProvider
6607
6718
  # Updates the device status.
6608
6719
  #
6609
6720
  # @option params [required, String] :access_token
6610
- # The access token.
6721
+ # A valid access token that Amazon Cognito issued to the user whose
6722
+ # device status you want to update.
6611
6723
  #
6612
6724
  # @option params [required, String] :device_key
6613
6725
  # The device key.
@@ -6693,23 +6805,23 @@ module Aws::CognitoIdentityProvider
6693
6805
  req.send_request(options)
6694
6806
  end
6695
6807
 
6696
- # Updates identity provider information for a user pool.
6808
+ # Updates IdP information for a user pool.
6697
6809
  #
6698
6810
  # @option params [required, String] :user_pool_id
6699
6811
  # The user pool ID.
6700
6812
  #
6701
6813
  # @option params [required, String] :provider_name
6702
- # The identity provider name.
6814
+ # The IdP name.
6703
6815
  #
6704
6816
  # @option params [Hash<String,String>] :provider_details
6705
- # The identity provider details to be updated, such as `MetadataURL` and
6817
+ # The IdP details to be updated, such as `MetadataURL` and
6706
6818
  # `MetadataFile`.
6707
6819
  #
6708
6820
  # @option params [Hash<String,String>] :attribute_mapping
6709
- # The identity provider attribute mapping to be changed.
6821
+ # The IdP attribute mapping to be changed.
6710
6822
  #
6711
6823
  # @option params [Array<String>] :idp_identifiers
6712
- # A list of identity provider identifiers.
6824
+ # A list of IdP identifiers.
6713
6825
  #
6714
6826
  # @return [Types::UpdateIdentityProviderResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
6715
6827
  #
@@ -6840,8 +6952,16 @@ module Aws::CognitoIdentityProvider
6840
6952
  # For custom attributes, you must prepend the `custom:` prefix to the
6841
6953
  # attribute name.
6842
6954
  #
6955
+ # If you have set an attribute to require verification before Amazon
6956
+ # Cognito updates its value, this request doesn’t immediately update the
6957
+ # value of that attribute. After your user receives and responds to a
6958
+ # verification message to verify the new value, Amazon Cognito updates
6959
+ # the attribute value. Your user can sign in and receive messages with
6960
+ # the original attribute value until they verify the new value.
6961
+ #
6843
6962
  # @option params [required, String] :access_token
6844
- # The access token for the request to update user attributes.
6963
+ # A valid access token that Amazon Cognito issued to the user whose user
6964
+ # attributes you want to update.
6845
6965
  #
6846
6966
  # @option params [Hash<String,String>] :client_metadata
6847
6967
  # A map of custom key-value pairs that you can provide as input for any
@@ -6975,8 +7095,10 @@ module Aws::CognitoIdentityProvider
6975
7095
  # @option params [String] :sms_authentication_message
6976
7096
  # The contents of the SMS authentication message.
6977
7097
  #
7098
+ # @option params [Types::UserAttributeUpdateSettingsType] :user_attribute_update_settings
7099
+ #
6978
7100
  # @option params [String] :mfa_configuration
6979
- # Can be one of the following values:
7101
+ # Possible values include:
6980
7102
  #
6981
7103
  # * `OFF` - MFA tokens aren't required and can't be specified during
6982
7104
  # user registration.
@@ -7082,6 +7204,9 @@ module Aws::CognitoIdentityProvider
7082
7204
  # default_email_option: "CONFIRM_WITH_LINK", # accepts CONFIRM_WITH_LINK, CONFIRM_WITH_CODE
7083
7205
  # },
7084
7206
  # sms_authentication_message: "SmsVerificationMessageType",
7207
+ # user_attribute_update_settings: {
7208
+ # attributes_require_verification_before_update: ["phone_number"], # accepts phone_number, email
7209
+ # },
7085
7210
  # mfa_configuration: "OFF", # accepts OFF, ON, OPTIONAL
7086
7211
  # device_configuration: {
7087
7212
  # challenge_required_on_new_device: false,
@@ -7160,20 +7285,50 @@ module Aws::CognitoIdentityProvider
7160
7285
  # The client name from the update user pool client request.
7161
7286
  #
7162
7287
  # @option params [Integer] :refresh_token_validity
7163
- # The time limit, in days, after which the refresh token is no longer
7164
- # valid and can't be used.
7288
+ # The refresh token time limit. After this limit expires, your user
7289
+ # can't use their refresh token. To specify the time unit for
7290
+ # `RefreshTokenValidity` as `seconds`, `minutes`, `hours`, or `days`,
7291
+ # set a `TokenValidityUnits` value in your API request.
7292
+ #
7293
+ # For example, when you set `RefreshTokenValidity` as `10` and
7294
+ # `TokenValidityUnits` as `days`, your user can refresh their session
7295
+ # and retrieve new access and ID tokens for 10 days.
7296
+ #
7297
+ # The default time unit for `RefreshTokenValidity` in an API request is
7298
+ # days. You can't set `RefreshTokenValidity` to 0. If you do, Amazon
7299
+ # Cognito overrides the value with the default value of 30 days. *Valid
7300
+ # range* is displayed below in seconds.
7165
7301
  #
7166
7302
  # @option params [Integer] :access_token_validity
7167
- # The time limit after which the access token is no longer valid and
7168
- # can't be used.
7303
+ # The access token time limit. After this limit expires, your user
7304
+ # can't use their access token. To specify the time unit for
7305
+ # `AccessTokenValidity` as `seconds`, `minutes`, `hours`, or `days`, set
7306
+ # a `TokenValidityUnits` value in your API request.
7307
+ #
7308
+ # For example, when you set `AccessTokenValidity` to `10` and
7309
+ # `TokenValidityUnits` to `hours`, your user can authorize access with
7310
+ # their access token for 10 hours.
7311
+ #
7312
+ # The default time unit for `AccessTokenValidity` in an API request is
7313
+ # hours. *Valid range* is displayed below in seconds.
7169
7314
  #
7170
7315
  # @option params [Integer] :id_token_validity
7171
- # The time limit after which the ID token is no longer valid and can't
7172
- # be used.
7316
+ # The ID token time limit. After this limit expires, your user can't
7317
+ # use their ID token. To specify the time unit for `IdTokenValidity` as
7318
+ # `seconds`, `minutes`, `hours`, or `days`, set a `TokenValidityUnits`
7319
+ # value in your API request.
7320
+ #
7321
+ # For example, when you set `IdTokenValidity` as `10` and
7322
+ # `TokenValidityUnits` as `hours`, your user can authenticate their
7323
+ # session with their ID token for 10 hours.
7324
+ #
7325
+ # The default time unit for `AccessTokenValidity` in an API request is
7326
+ # hours. *Valid range* is displayed below in seconds.
7173
7327
  #
7174
7328
  # @option params [Types::TokenValidityUnitsType] :token_validity_units
7175
- # The units in which the validity times are represented. Default for
7176
- # RefreshToken is days, and default for ID and access tokens is hours.
7329
+ # The units in which the validity times are represented. The default
7330
+ # unit for RefreshToken is days, and the default for ID and access
7331
+ # tokens is hours.
7177
7332
  #
7178
7333
  # @option params [Array<String>] :read_attributes
7179
7334
  # The read-only attributes of the user pool.
@@ -7208,11 +7363,12 @@ module Aws::CognitoIdentityProvider
7208
7363
  # * `ALLOW_REFRESH_TOKEN_AUTH`\: Enable authflow to refresh tokens.
7209
7364
  #
7210
7365
  # @option params [Array<String>] :supported_identity_providers
7211
- # A list of provider names for the identity providers that are supported
7212
- # on this client.
7366
+ # A list of provider names for the IdPs that this client supports. The
7367
+ # following are supported: `COGNITO`, `Facebook`, `Google`
7368
+ # `LoginWithAmazon`, and the names of your own SAML and OIDC providers.
7213
7369
  #
7214
7370
  # @option params [Array<String>] :callback_urls
7215
- # A list of allowed redirect (callback) URLs for the identity providers.
7371
+ # A list of allowed redirect (callback) URLs for the IdPs.
7216
7372
  #
7217
7373
  # A redirect URI must:
7218
7374
  #
@@ -7234,7 +7390,7 @@ module Aws::CognitoIdentityProvider
7234
7390
  # [1]: https://tools.ietf.org/html/rfc6749#section-3.1.2
7235
7391
  #
7236
7392
  # @option params [Array<String>] :logout_urls
7237
- # A list of allowed logout URLs for the identity providers.
7393
+ # A list of allowed logout URLs for the IdPs.
7238
7394
  #
7239
7395
  # @option params [String] :default_redirect_uri
7240
7396
  # The default redirect URI. Must be in the `CallbackURLs` list.
@@ -7261,30 +7417,36 @@ module Aws::CognitoIdentityProvider
7261
7417
  # @option params [Array<String>] :allowed_o_auth_flows
7262
7418
  # The allowed OAuth flows.
7263
7419
  #
7264
- # Set to `code` to initiate a code grant flow, which provides an
7265
- # authorization code as the response. This code can be exchanged for
7266
- # access tokens with the token endpoint.
7420
+ # code
7421
+ #
7422
+ # : Use a code grant flow, which provides an authorization code as the
7423
+ # response. This code can be exchanged for access tokens with the
7424
+ # `/oauth2/token` endpoint.
7267
7425
  #
7268
- # Set to `implicit` to specify that the client should get the access
7269
- # token (and, optionally, ID token, based on scopes) directly.
7426
+ # implicit
7270
7427
  #
7271
- # Set to `client_credentials` to specify that the client should get the
7272
- # access token (and, optionally, ID token, based on scopes) from the
7273
- # token endpoint using a combination of client and client\_secret.
7428
+ # : Issue the access token (and, optionally, ID token, based on scopes)
7429
+ # directly to your user.
7430
+ #
7431
+ # client\_credentials
7432
+ #
7433
+ # : Issue the access token from the `/oauth2/token` endpoint directly to
7434
+ # a non-person user using a combination of the client ID and client
7435
+ # secret.
7274
7436
  #
7275
7437
  # @option params [Array<String>] :allowed_o_auth_scopes
7276
- # The allowed OAuth scopes. Possible values provided by OAuth are:
7438
+ # The allowed OAuth scopes. Possible values provided by OAuth are
7277
7439
  # `phone`, `email`, `openid`, and `profile`. Possible values provided by
7278
- # Amazon Web Services are: `aws.cognito.signin.user.admin`. Custom
7279
- # scopes created in Resource Servers are also supported.
7440
+ # Amazon Web Services are `aws.cognito.signin.user.admin`. Custom scopes
7441
+ # created in Resource Servers are also supported.
7280
7442
  #
7281
7443
  # @option params [Boolean] :allowed_o_auth_flows_user_pool_client
7282
7444
  # Set to true if the client is allowed to follow the OAuth protocol when
7283
7445
  # interacting with Amazon Cognito user pools.
7284
7446
  #
7285
7447
  # @option params [Types::AnalyticsConfigurationType] :analytics_configuration
7286
- # The Amazon Pinpoint analytics configuration for collecting metrics for
7287
- # this user pool.
7448
+ # The Amazon Pinpoint analytics configuration necessary to collect
7449
+ # metrics for this user pool.
7288
7450
  #
7289
7451
  # <note markdown="1"> In Amazon Web Services Regions where Amazon Pinpoint isn't available,
7290
7452
  # user pools only support sending events to Amazon Pinpoint projects in
@@ -7494,7 +7656,8 @@ module Aws::CognitoIdentityProvider
7494
7656
  # session string, but not both.
7495
7657
  #
7496
7658
  # @option params [String] :access_token
7497
- # The access token.
7659
+ # A valid access token that Amazon Cognito issued to the user whose
7660
+ # software token you want to verify.
7498
7661
  #
7499
7662
  # @option params [String] :session
7500
7663
  # The session that should be passed both ways in challenge-response
@@ -7541,8 +7704,18 @@ module Aws::CognitoIdentityProvider
7541
7704
 
7542
7705
  # Verifies the specified user attributes in the user pool.
7543
7706
  #
7707
+ # If your user pool requires verification before Amazon Cognito updates
7708
+ # the attribute value, VerifyUserAttribute updates the affected
7709
+ # attribute to its pending value. For more information, see [
7710
+ # UserAttributeUpdateSettingsType][1].
7711
+ #
7712
+ #
7713
+ #
7714
+ # [1]: https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_UserAttributeUpdateSettingsType.html
7715
+ #
7544
7716
  # @option params [required, String] :access_token
7545
- # The access token of the request to verify user attributes.
7717
+ # A valid access token that Amazon Cognito issued to the user whose user
7718
+ # attributes you want to verify.
7546
7719
  #
7547
7720
  # @option params [required, String] :attribute_name
7548
7721
  # The attribute name in the request to verify user attributes.
@@ -7582,7 +7755,7 @@ module Aws::CognitoIdentityProvider
7582
7755
  params: params,
7583
7756
  config: config)
7584
7757
  context[:gem_name] = 'aws-sdk-cognitoidentityprovider'
7585
- context[:gem_version] = '1.65.0'
7758
+ context[:gem_version] = '1.66.0'
7586
7759
  Seahorse::Client::Request.new(handlers, context)
7587
7760
  end
7588
7761