class Aws::CognitoIdentityProvider::Types::ForgotPasswordRequest

Represents the request to reset a user's password.

@note When making an API call, you may pass ForgotPasswordRequest

data as a hash:

    {
      client_id: "ClientIdType", # required
      secret_hash: "SecretHashType",
      user_context_data: {
        encoded_data: "StringType",
      },
      username: "UsernameType", # required
      analytics_metadata: {
        analytics_endpoint_id: "StringType",
      },
      client_metadata: {
        "StringType" => "StringType",
      },
    }

@!attribute [rw] client_id

The ID of the client associated with the user pool.
@return [String]

@!attribute [rw] secret_hash

A keyed-hash message authentication code (HMAC) calculated using the
secret key of a user pool client and username plus the client ID in
the message.
@return [String]

@!attribute [rw] user_context_data

Contextual data such as the user's device fingerprint, IP address,
or location used for evaluating the risk of an unexpected event by
Amazon Cognito advanced security.
@return [Types::UserContextDataType]

@!attribute [rw] username

The user name of the user for whom you want to enter a code to reset
a forgotten password.
@return [String]

@!attribute [rw] analytics_metadata

The Amazon Pinpoint analytics metadata for collecting metrics for
`ForgotPassword` calls.
@return [Types::AnalyticsMetadataType]

@!attribute [rw] client_metadata

A map of custom key-value pairs that you can provide as input for
any custom workflows that this action triggers.

You create custom workflows by assigning Lambda functions to user
pool triggers. When you use the ForgotPassword API action, Amazon
Cognito invokes any functions that are assigned to the following
triggers: *pre sign-up*, *custom message*, and *user migration*.
When Amazon Cognito invokes any of these functions, it passes a JSON
payload, which the function receives as input. This payload contains
a `clientMetadata` attribute, which provides the data that you
assigned to the ClientMetadata parameter in your ForgotPassword
request. In your function code in Lambda, you can process the
`clientMetadata` value to enhance your workflow for your specific
needs.

For more information, see [Customizing User Pool Workflows with
Lambda Triggers][1] in the *Amazon Cognito Developer Guide*.

<note markdown="1"> Take the following limitations into consideration when you use the
ClientMetadata parameter:

 * Amazon Cognito does not store the ClientMetadata value. This data
  is available only to Lambda triggers that are assigned to a user
  pool to support custom workflows. If your user pool configuration
  does not include triggers, the ClientMetadata parameter serves no
  purpose.

* Amazon Cognito does not validate the ClientMetadata value.

* Amazon Cognito does not encrypt the the ClientMetadata value, so
  don't use it to provide sensitive information.

 </note>

[1]: https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-identity-pools-working-with-aws-lambda-triggers.html
@return [Hash<String,String>]

@see docs.aws.amazon.com/goto/WebAPI/cognito-idp-2016-04-18/ForgotPasswordRequest AWS API Documentation

Constants

SENSITIVE