// Code generated by smithy-go-codegen DO NOT EDIT. package cognitoidentityprovider import ( "context" awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware" "github.com/aws/aws-sdk-go-v2/service/cognitoidentityprovider/types" "github.com/aws/smithy-go/middleware" smithyhttp "github.com/aws/smithy-go/transport/http" ) // Allows a user to enter a confirmation code to reset a forgotten password. func (c *Client) ConfirmForgotPassword(ctx context.Context, params *ConfirmForgotPasswordInput, optFns ...func(*Options)) (*ConfirmForgotPasswordOutput, error) { if params == nil { params = &ConfirmForgotPasswordInput{} } result, metadata, err := c.invokeOperation(ctx, "ConfirmForgotPassword", params, optFns, c.addOperationConfirmForgotPasswordMiddlewares) if err != nil { return nil, err } out := result.(*ConfirmForgotPasswordOutput) out.ResultMetadata = metadata return out, nil } // The request representing the confirmation for a password reset. type ConfirmForgotPasswordInput struct { // The app client ID of the app associated with the user pool. // // This member is required. ClientId *string // The confirmation code from your user's request to reset their password. For // more information, see ForgotPassword (https://docs.aws.amazon.com/cognito-user-identity-pools/latest/APIReference/API_ForgotPassword.html) // . // // This member is required. ConfirmationCode *string // The new password that your user wants to set. // // This member is required. Password *string // The user name of the user for whom you want to enter a code to retrieve a // forgotten password. // // This member is required. Username *string // The Amazon Pinpoint analytics metadata for collecting metrics for // ConfirmForgotPassword calls. AnalyticsMetadata *types.AnalyticsMetadataType // 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 ConfirmForgotPassword // API action, Amazon Cognito invokes the function that is assigned to the post // confirmation trigger. When Amazon Cognito invokes this function, 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 ConfirmForgotPassword 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 (https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-identity-pools-working-with-aws-lambda-triggers.html) // in the Amazon Cognito Developer Guide. When you use the ClientMetadata // parameter, remember that Amazon Cognito won't do the following: // - 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 doesn't include triggers, the ClientMetadata parameter // serves no purpose. // - Validate the ClientMetadata value. // - Encrypt the ClientMetadata value. Don't use Amazon Cognito to provide // sensitive information. ClientMetadata map[string]string // 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. SecretHash *string // Contextual data about your user session, such as the device fingerprint, IP // address, or location. Amazon Cognito advanced security evaluates the risk of an // authentication event based on the context that your app generates and passes to // Amazon Cognito when it makes API requests. UserContextData *types.UserContextDataType noSmithyDocumentSerde } // The response from the server that results from a user's request to retrieve a // forgotten password. type ConfirmForgotPasswordOutput struct { // Metadata pertaining to the operation's result. ResultMetadata middleware.Metadata noSmithyDocumentSerde } func (c *Client) addOperationConfirmForgotPasswordMiddlewares(stack *middleware.Stack, options Options) (err error) { err = stack.Serialize.Add(&awsAwsjson11_serializeOpConfirmForgotPassword{}, middleware.After) if err != nil { return err } err = stack.Deserialize.Add(&awsAwsjson11_deserializeOpConfirmForgotPassword{}, middleware.After) if err != nil { return err } if err = addSetLoggerMiddleware(stack, options); err != nil { return err } if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil { return err } if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil { return err } if err = addResolveEndpointMiddleware(stack, options); err != nil { return err } if err = addRetryMiddlewares(stack, options); err != nil { return err } if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil { return err } if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil { return err } if err = addClientUserAgent(stack, options); err != nil { return err } if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil { return err } if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil { return err } if err = addOpConfirmForgotPasswordValidationMiddleware(stack); err != nil { return err } if err = stack.Initialize.Add(newServiceMetadataMiddleware_opConfirmForgotPassword(options.Region), middleware.Before); err != nil { return err } if err = awsmiddleware.AddRecursionDetection(stack); err != nil { return err } if err = addRequestIDRetrieverMiddleware(stack); err != nil { return err } if err = addResponseErrorMiddleware(stack); err != nil { return err } if err = addRequestResponseLogging(stack, options); err != nil { return err } return nil } func newServiceMetadataMiddleware_opConfirmForgotPassword(region string) *awsmiddleware.RegisterServiceMetadata { return &awsmiddleware.RegisterServiceMetadata{ Region: region, ServiceID: ServiceID, OperationName: "ConfirmForgotPassword", } }