From 3ef966f648e52ce2abdfc99f06af0f8e49a60e08 Mon Sep 17 00:00:00 2001 From: awstools Date: Fri, 22 Nov 2024 19:18:07 +0000 Subject: [PATCH] feat(client-cognito-identity-provider): Add support for users to sign up and sign in without passwords, using email and SMS OTPs and Passkeys. Add support for Passkeys based on WebAuthn. Add support for enhanced branding customization for hosted authentication pages with Amazon Cognito Managed Login. Add feature tiers with new pricing. --- .../README.md | 80 + .../src/CognitoIdentityProvider.ts | 231 ++ .../src/CognitoIdentityProviderClient.ts | 57 + .../src/auth/httpAuthSchemeProvider.ts | 20 + .../src/commands/AdminCreateUserCommand.ts | 13 +- .../src/commands/AdminGetUserCommand.ts | 3 +- .../src/commands/AdminInitiateAuthCommand.ts | 9 +- .../src/commands/AdminListDevicesCommand.ts | 2 +- .../commands/AdminResetUserPasswordCommand.ts | 4 +- .../AdminRespondToAuthChallengeCommand.ts | 8 +- .../AdminUpdateUserAttributesCommand.ts | 4 +- .../src/commands/ChangePasswordCommand.ts | 2 +- .../CompleteWebAuthnRegistrationCommand.ts | 153 + .../src/commands/ConfirmSignUpCommand.ts | 10 +- .../CreateManagedLoginBrandingCommand.ts | 191 + .../commands/CreateUserPoolClientCommand.ts | 4 +- .../src/commands/CreateUserPoolCommand.ts | 24 +- .../commands/CreateUserPoolDomainCommand.ts | 9 +- .../DeleteManagedLoginBrandingCommand.ts | 138 + .../DeleteWebAuthnCredentialCommand.ts | 119 + ...ribeManagedLoginBrandingByClientCommand.ts | 142 + .../DescribeManagedLoginBrandingCommand.ts | 138 + .../commands/DescribeUserPoolClientCommand.ts | 2 +- .../src/commands/DescribeUserPoolCommand.ts | 6 + .../commands/DescribeUserPoolDomainCommand.ts | 1 + .../src/commands/ForgotPasswordCommand.ts | 4 +- ...GetUserAttributeVerificationCodeCommand.ts | 4 +- .../src/commands/GetUserAuthFactorsCommand.ts | 150 + .../commands/GetUserPoolMfaConfigCommand.ts | 7 +- .../src/commands/GlobalSignOutCommand.ts | 2 +- .../src/commands/InitiateAuthCommand.ts | 14 +- .../src/commands/ListDevicesCommand.ts | 2 +- .../src/commands/ListGroupsCommand.ts | 2 +- .../commands/ListIdentityProvidersCommand.ts | 2 +- .../commands/ListResourceServersCommand.ts | 2 +- .../commands/ListTagsForResourceCommand.ts | 2 +- .../src/commands/ListUserImportJobsCommand.ts | 2 +- .../commands/ListUserPoolClientsCommand.ts | 2 +- .../src/commands/ListUserPoolsCommand.ts | 2 +- .../src/commands/ListUsersCommand.ts | 2 +- .../src/commands/ListUsersInGroupCommand.ts | 2 +- .../ListWebAuthnCredentialsCommand.ts | 129 + .../commands/ResendConfirmationCodeCommand.ts | 6 +- .../commands/RespondToAuthChallengeCommand.ts | 16 +- .../SetLogDeliveryConfigurationCommand.ts | 4 + .../commands/SetUserPoolMfaConfigCommand.ts | 18 +- .../src/commands/SignUpCommand.ts | 23 +- .../StartWebAuthnRegistrationCommand.ts | 136 + .../UpdateManagedLoginBrandingCommand.ts | 175 + .../commands/UpdateUserAttributesCommand.ts | 4 +- .../commands/UpdateUserPoolClientCommand.ts | 4 +- .../src/commands/UpdateUserPoolCommand.ts | 19 +- .../commands/UpdateUserPoolDomainCommand.ts | 6 + .../src/commands/index.ts | 10 + .../src/models/models_0.ts | 3638 ++++++++--------- .../src/models/models_1.ts | 1926 ++++++++- .../src/protocols/Aws_json1_1.ts | 928 ++++- .../aws-models/cognito-identity-provider.json | 2296 +++++++++-- 58 files changed, 8633 insertions(+), 2276 deletions(-) create mode 100644 clients/client-cognito-identity-provider/src/commands/CompleteWebAuthnRegistrationCommand.ts create mode 100644 clients/client-cognito-identity-provider/src/commands/CreateManagedLoginBrandingCommand.ts create mode 100644 clients/client-cognito-identity-provider/src/commands/DeleteManagedLoginBrandingCommand.ts create mode 100644 clients/client-cognito-identity-provider/src/commands/DeleteWebAuthnCredentialCommand.ts create mode 100644 clients/client-cognito-identity-provider/src/commands/DescribeManagedLoginBrandingByClientCommand.ts create mode 100644 clients/client-cognito-identity-provider/src/commands/DescribeManagedLoginBrandingCommand.ts create mode 100644 clients/client-cognito-identity-provider/src/commands/GetUserAuthFactorsCommand.ts create mode 100644 clients/client-cognito-identity-provider/src/commands/ListWebAuthnCredentialsCommand.ts create mode 100644 clients/client-cognito-identity-provider/src/commands/StartWebAuthnRegistrationCommand.ts create mode 100644 clients/client-cognito-identity-provider/src/commands/UpdateManagedLoginBrandingCommand.ts diff --git a/clients/client-cognito-identity-provider/README.md b/clients/client-cognito-identity-provider/README.md index 251f60f38f65..53c82abf55e0 100644 --- a/clients/client-cognito-identity-provider/README.md +++ b/clients/client-cognito-identity-provider/README.md @@ -516,6 +516,14 @@ ChangePassword [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/cognito-identity-provider/command/ChangePasswordCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/ChangePasswordCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/ChangePasswordCommandOutput/) + +
+ +CompleteWebAuthnRegistration + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/cognito-identity-provider/command/CompleteWebAuthnRegistrationCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/CompleteWebAuthnRegistrationCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/CompleteWebAuthnRegistrationCommandOutput/) +
@@ -556,6 +564,14 @@ CreateIdentityProvider [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/cognito-identity-provider/command/CreateIdentityProviderCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/CreateIdentityProviderCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/CreateIdentityProviderCommandOutput/) +
+
+ +CreateManagedLoginBranding + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/cognito-identity-provider/command/CreateManagedLoginBrandingCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/CreateManagedLoginBrandingCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/CreateManagedLoginBrandingCommandOutput/) +
@@ -612,6 +628,14 @@ DeleteIdentityProvider [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/cognito-identity-provider/command/DeleteIdentityProviderCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/DeleteIdentityProviderCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/DeleteIdentityProviderCommandOutput/) +
+
+ +DeleteManagedLoginBranding + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/cognito-identity-provider/command/DeleteManagedLoginBrandingCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/DeleteManagedLoginBrandingCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/DeleteManagedLoginBrandingCommandOutput/) +
@@ -660,6 +684,14 @@ DeleteUserPoolDomain [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/cognito-identity-provider/command/DeleteUserPoolDomainCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/DeleteUserPoolDomainCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/DeleteUserPoolDomainCommandOutput/) +
+
+ +DeleteWebAuthnCredential + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/cognito-identity-provider/command/DeleteWebAuthnCredentialCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/DeleteWebAuthnCredentialCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/DeleteWebAuthnCredentialCommandOutput/) +
@@ -668,6 +700,22 @@ DescribeIdentityProvider [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/cognito-identity-provider/command/DescribeIdentityProviderCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/DescribeIdentityProviderCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/DescribeIdentityProviderCommandOutput/) +
+
+ +DescribeManagedLoginBranding + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/cognito-identity-provider/command/DescribeManagedLoginBrandingCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/DescribeManagedLoginBrandingCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/DescribeManagedLoginBrandingCommandOutput/) + +
+
+ +DescribeManagedLoginBrandingByClient + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/cognito-identity-provider/command/DescribeManagedLoginBrandingByClientCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/DescribeManagedLoginBrandingByClientCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/DescribeManagedLoginBrandingByClientCommandOutput/) +
@@ -804,6 +852,14 @@ GetUserAttributeVerificationCode [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/cognito-identity-provider/command/GetUserAttributeVerificationCodeCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/GetUserAttributeVerificationCodeCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/GetUserAttributeVerificationCodeCommandOutput/) +
+
+ +GetUserAuthFactors + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/cognito-identity-provider/command/GetUserAuthFactorsCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/GetUserAuthFactorsCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/GetUserAuthFactorsCommandOutput/) +
@@ -908,6 +964,14 @@ ListUsersInGroup [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/cognito-identity-provider/command/ListUsersInGroupCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/ListUsersInGroupCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/ListUsersInGroupCommandOutput/) +
+
+ +ListWebAuthnCredentials + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/cognito-identity-provider/command/ListWebAuthnCredentialsCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/ListWebAuthnCredentialsCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/ListWebAuthnCredentialsCommandOutput/) +
@@ -996,6 +1060,14 @@ StartUserImportJob [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/cognito-identity-provider/command/StartUserImportJobCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/StartUserImportJobCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/StartUserImportJobCommandOutput/) +
+
+ +StartWebAuthnRegistration + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/cognito-identity-provider/command/StartWebAuthnRegistrationCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/StartWebAuthnRegistrationCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/StartWebAuthnRegistrationCommandOutput/) +
@@ -1052,6 +1124,14 @@ UpdateIdentityProvider [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/cognito-identity-provider/command/UpdateIdentityProviderCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/UpdateIdentityProviderCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/UpdateIdentityProviderCommandOutput/) +
+
+ +UpdateManagedLoginBranding + + +[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/cognito-identity-provider/command/UpdateManagedLoginBrandingCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/UpdateManagedLoginBrandingCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-cognito-identity-provider/Interface/UpdateManagedLoginBrandingCommandOutput/) +
diff --git a/clients/client-cognito-identity-provider/src/CognitoIdentityProvider.ts b/clients/client-cognito-identity-provider/src/CognitoIdentityProvider.ts index 3f91c3766a35..f41a64e93eb2 100644 --- a/clients/client-cognito-identity-provider/src/CognitoIdentityProvider.ts +++ b/clients/client-cognito-identity-provider/src/CognitoIdentityProvider.ts @@ -148,6 +148,11 @@ import { ChangePasswordCommandInput, ChangePasswordCommandOutput, } from "./commands/ChangePasswordCommand"; +import { + CompleteWebAuthnRegistrationCommand, + CompleteWebAuthnRegistrationCommandInput, + CompleteWebAuthnRegistrationCommandOutput, +} from "./commands/CompleteWebAuthnRegistrationCommand"; import { ConfirmDeviceCommand, ConfirmDeviceCommandInput, @@ -169,6 +174,11 @@ import { CreateIdentityProviderCommandInput, CreateIdentityProviderCommandOutput, } from "./commands/CreateIdentityProviderCommand"; +import { + CreateManagedLoginBrandingCommand, + CreateManagedLoginBrandingCommandInput, + CreateManagedLoginBrandingCommandOutput, +} from "./commands/CreateManagedLoginBrandingCommand"; import { CreateResourceServerCommand, CreateResourceServerCommandInput, @@ -200,6 +210,11 @@ import { DeleteIdentityProviderCommandInput, DeleteIdentityProviderCommandOutput, } from "./commands/DeleteIdentityProviderCommand"; +import { + DeleteManagedLoginBrandingCommand, + DeleteManagedLoginBrandingCommandInput, + DeleteManagedLoginBrandingCommandOutput, +} from "./commands/DeleteManagedLoginBrandingCommand"; import { DeleteResourceServerCommand, DeleteResourceServerCommandInput, @@ -226,11 +241,26 @@ import { DeleteUserPoolDomainCommandInput, DeleteUserPoolDomainCommandOutput, } from "./commands/DeleteUserPoolDomainCommand"; +import { + DeleteWebAuthnCredentialCommand, + DeleteWebAuthnCredentialCommandInput, + DeleteWebAuthnCredentialCommandOutput, +} from "./commands/DeleteWebAuthnCredentialCommand"; import { DescribeIdentityProviderCommand, DescribeIdentityProviderCommandInput, DescribeIdentityProviderCommandOutput, } from "./commands/DescribeIdentityProviderCommand"; +import { + DescribeManagedLoginBrandingByClientCommand, + DescribeManagedLoginBrandingByClientCommandInput, + DescribeManagedLoginBrandingByClientCommandOutput, +} from "./commands/DescribeManagedLoginBrandingByClientCommand"; +import { + DescribeManagedLoginBrandingCommand, + DescribeManagedLoginBrandingCommandInput, + DescribeManagedLoginBrandingCommandOutput, +} from "./commands/DescribeManagedLoginBrandingCommand"; import { DescribeResourceServerCommand, DescribeResourceServerCommandInput, @@ -303,6 +333,11 @@ import { GetUserAttributeVerificationCodeCommandInput, GetUserAttributeVerificationCodeCommandOutput, } from "./commands/GetUserAttributeVerificationCodeCommand"; +import { + GetUserAuthFactorsCommand, + GetUserAuthFactorsCommandInput, + GetUserAuthFactorsCommandOutput, +} from "./commands/GetUserAuthFactorsCommand"; import { GetUserCommand, GetUserCommandInput, GetUserCommandOutput } from "./commands/GetUserCommand"; import { GetUserPoolMfaConfigCommand, @@ -357,6 +392,11 @@ import { ListUsersInGroupCommandInput, ListUsersInGroupCommandOutput, } from "./commands/ListUsersInGroupCommand"; +import { + ListWebAuthnCredentialsCommand, + ListWebAuthnCredentialsCommandInput, + ListWebAuthnCredentialsCommandOutput, +} from "./commands/ListWebAuthnCredentialsCommand"; import { ResendConfirmationCodeCommand, ResendConfirmationCodeCommandInput, @@ -404,6 +444,11 @@ import { StartUserImportJobCommandInput, StartUserImportJobCommandOutput, } from "./commands/StartUserImportJobCommand"; +import { + StartWebAuthnRegistrationCommand, + StartWebAuthnRegistrationCommandInput, + StartWebAuthnRegistrationCommandOutput, +} from "./commands/StartWebAuthnRegistrationCommand"; import { StopUserImportJobCommand, StopUserImportJobCommandInput, @@ -431,6 +476,11 @@ import { UpdateIdentityProviderCommandInput, UpdateIdentityProviderCommandOutput, } from "./commands/UpdateIdentityProviderCommand"; +import { + UpdateManagedLoginBrandingCommand, + UpdateManagedLoginBrandingCommandInput, + UpdateManagedLoginBrandingCommandOutput, +} from "./commands/UpdateManagedLoginBrandingCommand"; import { UpdateResourceServerCommand, UpdateResourceServerCommandInput, @@ -497,11 +547,13 @@ const commands = { AdminUserGlobalSignOutCommand, AssociateSoftwareTokenCommand, ChangePasswordCommand, + CompleteWebAuthnRegistrationCommand, ConfirmDeviceCommand, ConfirmForgotPasswordCommand, ConfirmSignUpCommand, CreateGroupCommand, CreateIdentityProviderCommand, + CreateManagedLoginBrandingCommand, CreateResourceServerCommand, CreateUserImportJobCommand, CreateUserPoolCommand, @@ -509,13 +561,17 @@ const commands = { CreateUserPoolDomainCommand, DeleteGroupCommand, DeleteIdentityProviderCommand, + DeleteManagedLoginBrandingCommand, DeleteResourceServerCommand, DeleteUserCommand, DeleteUserAttributesCommand, DeleteUserPoolCommand, DeleteUserPoolClientCommand, DeleteUserPoolDomainCommand, + DeleteWebAuthnCredentialCommand, DescribeIdentityProviderCommand, + DescribeManagedLoginBrandingCommand, + DescribeManagedLoginBrandingByClientCommand, DescribeResourceServerCommand, DescribeRiskConfigurationCommand, DescribeUserImportJobCommand, @@ -533,6 +589,7 @@ const commands = { GetUICustomizationCommand, GetUserCommand, GetUserAttributeVerificationCodeCommand, + GetUserAuthFactorsCommand, GetUserPoolMfaConfigCommand, GlobalSignOutCommand, InitiateAuthCommand, @@ -546,6 +603,7 @@ const commands = { ListUserPoolsCommand, ListUsersCommand, ListUsersInGroupCommand, + ListWebAuthnCredentialsCommand, ResendConfirmationCodeCommand, RespondToAuthChallengeCommand, RevokeTokenCommand, @@ -557,6 +615,7 @@ const commands = { SetUserSettingsCommand, SignUpCommand, StartUserImportJobCommand, + StartWebAuthnRegistrationCommand, StopUserImportJobCommand, TagResourceCommand, UntagResourceCommand, @@ -564,6 +623,7 @@ const commands = { UpdateDeviceStatusCommand, UpdateGroupCommand, UpdateIdentityProviderCommand, + UpdateManagedLoginBrandingCommand, UpdateResourceServerCommand, UpdateUserAttributesCommand, UpdateUserPoolCommand, @@ -1047,6 +1107,23 @@ export interface CognitoIdentityProvider { cb: (err: any, data?: ChangePasswordCommandOutput) => void ): void; + /** + * @see {@link CompleteWebAuthnRegistrationCommand} + */ + completeWebAuthnRegistration( + args: CompleteWebAuthnRegistrationCommandInput, + options?: __HttpHandlerOptions + ): Promise; + completeWebAuthnRegistration( + args: CompleteWebAuthnRegistrationCommandInput, + cb: (err: any, data?: CompleteWebAuthnRegistrationCommandOutput) => void + ): void; + completeWebAuthnRegistration( + args: CompleteWebAuthnRegistrationCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: CompleteWebAuthnRegistrationCommandOutput) => void + ): void; + /** * @see {@link ConfirmDeviceCommand} */ @@ -1114,6 +1191,23 @@ export interface CognitoIdentityProvider { cb: (err: any, data?: CreateIdentityProviderCommandOutput) => void ): void; + /** + * @see {@link CreateManagedLoginBrandingCommand} + */ + createManagedLoginBranding( + args: CreateManagedLoginBrandingCommandInput, + options?: __HttpHandlerOptions + ): Promise; + createManagedLoginBranding( + args: CreateManagedLoginBrandingCommandInput, + cb: (err: any, data?: CreateManagedLoginBrandingCommandOutput) => void + ): void; + createManagedLoginBranding( + args: CreateManagedLoginBrandingCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: CreateManagedLoginBrandingCommandOutput) => void + ): void; + /** * @see {@link CreateResourceServerCommand} */ @@ -1224,6 +1318,23 @@ export interface CognitoIdentityProvider { cb: (err: any, data?: DeleteIdentityProviderCommandOutput) => void ): void; + /** + * @see {@link DeleteManagedLoginBrandingCommand} + */ + deleteManagedLoginBranding( + args: DeleteManagedLoginBrandingCommandInput, + options?: __HttpHandlerOptions + ): Promise; + deleteManagedLoginBranding( + args: DeleteManagedLoginBrandingCommandInput, + cb: (err: any, data?: DeleteManagedLoginBrandingCommandOutput) => void + ): void; + deleteManagedLoginBranding( + args: DeleteManagedLoginBrandingCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: DeleteManagedLoginBrandingCommandOutput) => void + ): void; + /** * @see {@link DeleteResourceServerCommand} */ @@ -1317,6 +1428,23 @@ export interface CognitoIdentityProvider { cb: (err: any, data?: DeleteUserPoolDomainCommandOutput) => void ): void; + /** + * @see {@link DeleteWebAuthnCredentialCommand} + */ + deleteWebAuthnCredential( + args: DeleteWebAuthnCredentialCommandInput, + options?: __HttpHandlerOptions + ): Promise; + deleteWebAuthnCredential( + args: DeleteWebAuthnCredentialCommandInput, + cb: (err: any, data?: DeleteWebAuthnCredentialCommandOutput) => void + ): void; + deleteWebAuthnCredential( + args: DeleteWebAuthnCredentialCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: DeleteWebAuthnCredentialCommandOutput) => void + ): void; + /** * @see {@link DescribeIdentityProviderCommand} */ @@ -1334,6 +1462,40 @@ export interface CognitoIdentityProvider { cb: (err: any, data?: DescribeIdentityProviderCommandOutput) => void ): void; + /** + * @see {@link DescribeManagedLoginBrandingCommand} + */ + describeManagedLoginBranding( + args: DescribeManagedLoginBrandingCommandInput, + options?: __HttpHandlerOptions + ): Promise; + describeManagedLoginBranding( + args: DescribeManagedLoginBrandingCommandInput, + cb: (err: any, data?: DescribeManagedLoginBrandingCommandOutput) => void + ): void; + describeManagedLoginBranding( + args: DescribeManagedLoginBrandingCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: DescribeManagedLoginBrandingCommandOutput) => void + ): void; + + /** + * @see {@link DescribeManagedLoginBrandingByClientCommand} + */ + describeManagedLoginBrandingByClient( + args: DescribeManagedLoginBrandingByClientCommandInput, + options?: __HttpHandlerOptions + ): Promise; + describeManagedLoginBrandingByClient( + args: DescribeManagedLoginBrandingByClientCommandInput, + cb: (err: any, data?: DescribeManagedLoginBrandingByClientCommandOutput) => void + ): void; + describeManagedLoginBrandingByClient( + args: DescribeManagedLoginBrandingByClientCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: DescribeManagedLoginBrandingByClientCommandOutput) => void + ): void; + /** * @see {@link DescribeResourceServerCommand} */ @@ -1590,6 +1752,23 @@ export interface CognitoIdentityProvider { cb: (err: any, data?: GetUserAttributeVerificationCodeCommandOutput) => void ): void; + /** + * @see {@link GetUserAuthFactorsCommand} + */ + getUserAuthFactors( + args: GetUserAuthFactorsCommandInput, + options?: __HttpHandlerOptions + ): Promise; + getUserAuthFactors( + args: GetUserAuthFactorsCommandInput, + cb: (err: any, data?: GetUserAuthFactorsCommandOutput) => void + ): void; + getUserAuthFactors( + args: GetUserAuthFactorsCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: GetUserAuthFactorsCommandOutput) => void + ): void; + /** * @see {@link GetUserPoolMfaConfigCommand} */ @@ -1775,6 +1954,23 @@ export interface CognitoIdentityProvider { cb: (err: any, data?: ListUsersInGroupCommandOutput) => void ): void; + /** + * @see {@link ListWebAuthnCredentialsCommand} + */ + listWebAuthnCredentials( + args: ListWebAuthnCredentialsCommandInput, + options?: __HttpHandlerOptions + ): Promise; + listWebAuthnCredentials( + args: ListWebAuthnCredentialsCommandInput, + cb: (err: any, data?: ListWebAuthnCredentialsCommandOutput) => void + ): void; + listWebAuthnCredentials( + args: ListWebAuthnCredentialsCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: ListWebAuthnCredentialsCommandOutput) => void + ): void; + /** * @see {@link ResendConfirmationCodeCommand} */ @@ -1947,6 +2143,23 @@ export interface CognitoIdentityProvider { cb: (err: any, data?: StartUserImportJobCommandOutput) => void ): void; + /** + * @see {@link StartWebAuthnRegistrationCommand} + */ + startWebAuthnRegistration( + args: StartWebAuthnRegistrationCommandInput, + options?: __HttpHandlerOptions + ): Promise; + startWebAuthnRegistration( + args: StartWebAuthnRegistrationCommandInput, + cb: (err: any, data?: StartWebAuthnRegistrationCommandOutput) => void + ): void; + startWebAuthnRegistration( + args: StartWebAuthnRegistrationCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: StartWebAuthnRegistrationCommandOutput) => void + ): void; + /** * @see {@link StopUserImportJobCommand} */ @@ -2048,6 +2261,24 @@ export interface CognitoIdentityProvider { cb: (err: any, data?: UpdateIdentityProviderCommandOutput) => void ): void; + /** + * @see {@link UpdateManagedLoginBrandingCommand} + */ + updateManagedLoginBranding(): Promise; + updateManagedLoginBranding( + args: UpdateManagedLoginBrandingCommandInput, + options?: __HttpHandlerOptions + ): Promise; + updateManagedLoginBranding( + args: UpdateManagedLoginBrandingCommandInput, + cb: (err: any, data?: UpdateManagedLoginBrandingCommandOutput) => void + ): void; + updateManagedLoginBranding( + args: UpdateManagedLoginBrandingCommandInput, + options: __HttpHandlerOptions, + cb: (err: any, data?: UpdateManagedLoginBrandingCommandOutput) => void + ): void; + /** * @see {@link UpdateResourceServerCommand} */ diff --git a/clients/client-cognito-identity-provider/src/CognitoIdentityProviderClient.ts b/clients/client-cognito-identity-provider/src/CognitoIdentityProviderClient.ts index aadd6087b22a..f36925f0313e 100644 --- a/clients/client-cognito-identity-provider/src/CognitoIdentityProviderClient.ts +++ b/clients/client-cognito-identity-provider/src/CognitoIdentityProviderClient.ts @@ -136,6 +136,10 @@ import { AssociateSoftwareTokenCommandOutput, } from "./commands/AssociateSoftwareTokenCommand"; import { ChangePasswordCommandInput, ChangePasswordCommandOutput } from "./commands/ChangePasswordCommand"; +import { + CompleteWebAuthnRegistrationCommandInput, + CompleteWebAuthnRegistrationCommandOutput, +} from "./commands/CompleteWebAuthnRegistrationCommand"; import { ConfirmDeviceCommandInput, ConfirmDeviceCommandOutput } from "./commands/ConfirmDeviceCommand"; import { ConfirmForgotPasswordCommandInput, @@ -147,6 +151,10 @@ import { CreateIdentityProviderCommandInput, CreateIdentityProviderCommandOutput, } from "./commands/CreateIdentityProviderCommand"; +import { + CreateManagedLoginBrandingCommandInput, + CreateManagedLoginBrandingCommandOutput, +} from "./commands/CreateManagedLoginBrandingCommand"; import { CreateResourceServerCommandInput, CreateResourceServerCommandOutput, @@ -169,6 +177,10 @@ import { DeleteIdentityProviderCommandInput, DeleteIdentityProviderCommandOutput, } from "./commands/DeleteIdentityProviderCommand"; +import { + DeleteManagedLoginBrandingCommandInput, + DeleteManagedLoginBrandingCommandOutput, +} from "./commands/DeleteManagedLoginBrandingCommand"; import { DeleteResourceServerCommandInput, DeleteResourceServerCommandOutput, @@ -187,10 +199,22 @@ import { DeleteUserPoolDomainCommandInput, DeleteUserPoolDomainCommandOutput, } from "./commands/DeleteUserPoolDomainCommand"; +import { + DeleteWebAuthnCredentialCommandInput, + DeleteWebAuthnCredentialCommandOutput, +} from "./commands/DeleteWebAuthnCredentialCommand"; import { DescribeIdentityProviderCommandInput, DescribeIdentityProviderCommandOutput, } from "./commands/DescribeIdentityProviderCommand"; +import { + DescribeManagedLoginBrandingByClientCommandInput, + DescribeManagedLoginBrandingByClientCommandOutput, +} from "./commands/DescribeManagedLoginBrandingByClientCommand"; +import { + DescribeManagedLoginBrandingCommandInput, + DescribeManagedLoginBrandingCommandOutput, +} from "./commands/DescribeManagedLoginBrandingCommand"; import { DescribeResourceServerCommandInput, DescribeResourceServerCommandOutput, @@ -234,6 +258,7 @@ import { GetUserAttributeVerificationCodeCommandInput, GetUserAttributeVerificationCodeCommandOutput, } from "./commands/GetUserAttributeVerificationCodeCommand"; +import { GetUserAuthFactorsCommandInput, GetUserAuthFactorsCommandOutput } from "./commands/GetUserAuthFactorsCommand"; import { GetUserCommandInput, GetUserCommandOutput } from "./commands/GetUserCommand"; import { GetUserPoolMfaConfigCommandInput, @@ -263,6 +288,10 @@ import { import { ListUserPoolsCommandInput, ListUserPoolsCommandOutput } from "./commands/ListUserPoolsCommand"; import { ListUsersCommandInput, ListUsersCommandOutput } from "./commands/ListUsersCommand"; import { ListUsersInGroupCommandInput, ListUsersInGroupCommandOutput } from "./commands/ListUsersInGroupCommand"; +import { + ListWebAuthnCredentialsCommandInput, + ListWebAuthnCredentialsCommandOutput, +} from "./commands/ListWebAuthnCredentialsCommand"; import { ResendConfirmationCodeCommandInput, ResendConfirmationCodeCommandOutput, @@ -292,6 +321,10 @@ import { import { SetUserSettingsCommandInput, SetUserSettingsCommandOutput } from "./commands/SetUserSettingsCommand"; import { SignUpCommandInput, SignUpCommandOutput } from "./commands/SignUpCommand"; import { StartUserImportJobCommandInput, StartUserImportJobCommandOutput } from "./commands/StartUserImportJobCommand"; +import { + StartWebAuthnRegistrationCommandInput, + StartWebAuthnRegistrationCommandOutput, +} from "./commands/StartWebAuthnRegistrationCommand"; import { StopUserImportJobCommandInput, StopUserImportJobCommandOutput } from "./commands/StopUserImportJobCommand"; import { TagResourceCommandInput, TagResourceCommandOutput } from "./commands/TagResourceCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "./commands/UntagResourceCommand"; @@ -305,6 +338,10 @@ import { UpdateIdentityProviderCommandInput, UpdateIdentityProviderCommandOutput, } from "./commands/UpdateIdentityProviderCommand"; +import { + UpdateManagedLoginBrandingCommandInput, + UpdateManagedLoginBrandingCommandOutput, +} from "./commands/UpdateManagedLoginBrandingCommand"; import { UpdateResourceServerCommandInput, UpdateResourceServerCommandOutput, @@ -374,11 +411,13 @@ export type ServiceInputTypes = | AdminUserGlobalSignOutCommandInput | AssociateSoftwareTokenCommandInput | ChangePasswordCommandInput + | CompleteWebAuthnRegistrationCommandInput | ConfirmDeviceCommandInput | ConfirmForgotPasswordCommandInput | ConfirmSignUpCommandInput | CreateGroupCommandInput | CreateIdentityProviderCommandInput + | CreateManagedLoginBrandingCommandInput | CreateResourceServerCommandInput | CreateUserImportJobCommandInput | CreateUserPoolClientCommandInput @@ -386,13 +425,17 @@ export type ServiceInputTypes = | CreateUserPoolDomainCommandInput | DeleteGroupCommandInput | DeleteIdentityProviderCommandInput + | DeleteManagedLoginBrandingCommandInput | DeleteResourceServerCommandInput | DeleteUserAttributesCommandInput | DeleteUserCommandInput | DeleteUserPoolClientCommandInput | DeleteUserPoolCommandInput | DeleteUserPoolDomainCommandInput + | DeleteWebAuthnCredentialCommandInput | DescribeIdentityProviderCommandInput + | DescribeManagedLoginBrandingByClientCommandInput + | DescribeManagedLoginBrandingCommandInput | DescribeResourceServerCommandInput | DescribeRiskConfigurationCommandInput | DescribeUserImportJobCommandInput @@ -409,6 +452,7 @@ export type ServiceInputTypes = | GetSigningCertificateCommandInput | GetUICustomizationCommandInput | GetUserAttributeVerificationCodeCommandInput + | GetUserAuthFactorsCommandInput | GetUserCommandInput | GetUserPoolMfaConfigCommandInput | GlobalSignOutCommandInput @@ -423,6 +467,7 @@ export type ServiceInputTypes = | ListUserPoolsCommandInput | ListUsersCommandInput | ListUsersInGroupCommandInput + | ListWebAuthnCredentialsCommandInput | ResendConfirmationCodeCommandInput | RespondToAuthChallengeCommandInput | RevokeTokenCommandInput @@ -434,6 +479,7 @@ export type ServiceInputTypes = | SetUserSettingsCommandInput | SignUpCommandInput | StartUserImportJobCommandInput + | StartWebAuthnRegistrationCommandInput | StopUserImportJobCommandInput | TagResourceCommandInput | UntagResourceCommandInput @@ -441,6 +487,7 @@ export type ServiceInputTypes = | UpdateDeviceStatusCommandInput | UpdateGroupCommandInput | UpdateIdentityProviderCommandInput + | UpdateManagedLoginBrandingCommandInput | UpdateResourceServerCommandInput | UpdateUserAttributesCommandInput | UpdateUserPoolClientCommandInput @@ -482,11 +529,13 @@ export type ServiceOutputTypes = | AdminUserGlobalSignOutCommandOutput | AssociateSoftwareTokenCommandOutput | ChangePasswordCommandOutput + | CompleteWebAuthnRegistrationCommandOutput | ConfirmDeviceCommandOutput | ConfirmForgotPasswordCommandOutput | ConfirmSignUpCommandOutput | CreateGroupCommandOutput | CreateIdentityProviderCommandOutput + | CreateManagedLoginBrandingCommandOutput | CreateResourceServerCommandOutput | CreateUserImportJobCommandOutput | CreateUserPoolClientCommandOutput @@ -494,13 +543,17 @@ export type ServiceOutputTypes = | CreateUserPoolDomainCommandOutput | DeleteGroupCommandOutput | DeleteIdentityProviderCommandOutput + | DeleteManagedLoginBrandingCommandOutput | DeleteResourceServerCommandOutput | DeleteUserAttributesCommandOutput | DeleteUserCommandOutput | DeleteUserPoolClientCommandOutput | DeleteUserPoolCommandOutput | DeleteUserPoolDomainCommandOutput + | DeleteWebAuthnCredentialCommandOutput | DescribeIdentityProviderCommandOutput + | DescribeManagedLoginBrandingByClientCommandOutput + | DescribeManagedLoginBrandingCommandOutput | DescribeResourceServerCommandOutput | DescribeRiskConfigurationCommandOutput | DescribeUserImportJobCommandOutput @@ -517,6 +570,7 @@ export type ServiceOutputTypes = | GetSigningCertificateCommandOutput | GetUICustomizationCommandOutput | GetUserAttributeVerificationCodeCommandOutput + | GetUserAuthFactorsCommandOutput | GetUserCommandOutput | GetUserPoolMfaConfigCommandOutput | GlobalSignOutCommandOutput @@ -531,6 +585,7 @@ export type ServiceOutputTypes = | ListUserPoolsCommandOutput | ListUsersCommandOutput | ListUsersInGroupCommandOutput + | ListWebAuthnCredentialsCommandOutput | ResendConfirmationCodeCommandOutput | RespondToAuthChallengeCommandOutput | RevokeTokenCommandOutput @@ -542,6 +597,7 @@ export type ServiceOutputTypes = | SetUserSettingsCommandOutput | SignUpCommandOutput | StartUserImportJobCommandOutput + | StartWebAuthnRegistrationCommandOutput | StopUserImportJobCommandOutput | TagResourceCommandOutput | UntagResourceCommandOutput @@ -549,6 +605,7 @@ export type ServiceOutputTypes = | UpdateDeviceStatusCommandOutput | UpdateGroupCommandOutput | UpdateIdentityProviderCommandOutput + | UpdateManagedLoginBrandingCommandOutput | UpdateResourceServerCommandOutput | UpdateUserAttributesCommandOutput | UpdateUserPoolClientCommandOutput diff --git a/clients/client-cognito-identity-provider/src/auth/httpAuthSchemeProvider.ts b/clients/client-cognito-identity-provider/src/auth/httpAuthSchemeProvider.ts index b1754f1389a0..232ede813427 100644 --- a/clients/client-cognito-identity-provider/src/auth/httpAuthSchemeProvider.ts +++ b/clients/client-cognito-identity-provider/src/auth/httpAuthSchemeProvider.ts @@ -107,6 +107,10 @@ export const defaultCognitoIdentityProviderHttpAuthSchemeProvider: CognitoIdenti options.push(createSmithyApiNoAuthHttpAuthOption(authParameters)); break; } + case "CompleteWebAuthnRegistration": { + options.push(createSmithyApiNoAuthHttpAuthOption(authParameters)); + break; + } case "ConfirmDevice": { options.push(createSmithyApiNoAuthHttpAuthOption(authParameters)); break; @@ -127,6 +131,10 @@ export const defaultCognitoIdentityProviderHttpAuthSchemeProvider: CognitoIdenti options.push(createSmithyApiNoAuthHttpAuthOption(authParameters)); break; } + case "DeleteWebAuthnCredential": { + options.push(createSmithyApiNoAuthHttpAuthOption(authParameters)); + break; + } case "ForgetDevice": { options.push(createSmithyApiNoAuthHttpAuthOption(authParameters)); break; @@ -147,6 +155,10 @@ export const defaultCognitoIdentityProviderHttpAuthSchemeProvider: CognitoIdenti options.push(createSmithyApiNoAuthHttpAuthOption(authParameters)); break; } + case "GetUserAuthFactors": { + options.push(createSmithyApiNoAuthHttpAuthOption(authParameters)); + break; + } case "GlobalSignOut": { options.push(createSmithyApiNoAuthHttpAuthOption(authParameters)); break; @@ -159,6 +171,10 @@ export const defaultCognitoIdentityProviderHttpAuthSchemeProvider: CognitoIdenti options.push(createSmithyApiNoAuthHttpAuthOption(authParameters)); break; } + case "ListWebAuthnCredentials": { + options.push(createSmithyApiNoAuthHttpAuthOption(authParameters)); + break; + } case "ResendConfirmationCode": { options.push(createSmithyApiNoAuthHttpAuthOption(authParameters)); break; @@ -183,6 +199,10 @@ export const defaultCognitoIdentityProviderHttpAuthSchemeProvider: CognitoIdenti options.push(createSmithyApiNoAuthHttpAuthOption(authParameters)); break; } + case "StartWebAuthnRegistration": { + options.push(createSmithyApiNoAuthHttpAuthOption(authParameters)); + break; + } case "UpdateAuthEventFeedback": { options.push(createSmithyApiNoAuthHttpAuthOption(authParameters)); break; diff --git a/clients/client-cognito-identity-provider/src/commands/AdminCreateUserCommand.ts b/clients/client-cognito-identity-provider/src/commands/AdminCreateUserCommand.ts index d9479780a715..fa93c848a0c8 100644 --- a/clients/client-cognito-identity-provider/src/commands/AdminCreateUserCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/AdminCreateUserCommand.ts @@ -48,7 +48,7 @@ export interface AdminCreateUserCommandOutput extends AdminCreateUserResponse, _ * Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must * receive SMS messages might not be able to sign up, activate their accounts, or sign * in.

- *

If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Servicesservice, + *

If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Services service, * Amazon Simple Notification Service might place your account in the SMS sandbox. In * sandbox * mode @@ -62,8 +62,13 @@ export interface AdminCreateUserCommandOutput extends AdminCreateUserResponse, _ * placeholders for user name and temporary password.

*

Alternatively, you can call AdminCreateUser with SUPPRESS * for the MessageAction parameter, and Amazon Cognito won't send any email.

- *

In either case, the user will be in the FORCE_CHANGE_PASSWORD state until - * they sign in and change their password.

+ *

In either case, if the user has a password, they will be in the + * FORCE_CHANGE_PASSWORD state until they sign in and set their password. + * Your invitation message template must have the \{####\} password placeholder + * if your users have passwords. If your template doesn't have this placeholder, Amazon Cognito + * doesn't deliver the invitation message. In this case, you must update your message + * template and resend the password with a new AdminCreateUser request with a + * MessageAction value of RESEND.

* *

Amazon Cognito evaluates Identity and Access Management (IAM) policies in requests for this API operation. For * this operation, you must use IAM credentials to authorize requests, and you must @@ -171,7 +176,7 @@ export interface AdminCreateUserCommandOutput extends AdminCreateUserResponse, _ * @throws {@link InvalidSmsRoleTrustRelationshipException} (client fault) *

This exception is thrown when the trust relationship is not valid for the role * provided for SMS configuration. This can happen if you don't trust - * cognito-idp.amazonaws.com or the external ID provided in the role does + * cognito-idp.amazonaws.com or the external ID provided in the role does * not match what is provided in the SMS configuration for the user pool.

* * @throws {@link NotAuthorizedException} (client fault) diff --git a/clients/client-cognito-identity-provider/src/commands/AdminGetUserCommand.ts b/clients/client-cognito-identity-provider/src/commands/AdminGetUserCommand.ts index 66f3f6fef715..dfa3206c8c6b 100644 --- a/clients/client-cognito-identity-provider/src/commands/AdminGetUserCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/AdminGetUserCommand.ts @@ -38,7 +38,8 @@ export interface AdminGetUserCommandOutput extends AdminGetUserResponse, __Metad /** *

Gets the specified user by user name in a user pool as an administrator. Works on any - * user.

+ * user. This operation contributes to your monthly active user (MAU) count for the purpose + * of billing.

* *

Amazon Cognito evaluates Identity and Access Management (IAM) policies in requests for this API operation. For * this operation, you must use IAM credentials to authorize requests, and you must diff --git a/clients/client-cognito-identity-provider/src/commands/AdminInitiateAuthCommand.ts b/clients/client-cognito-identity-provider/src/commands/AdminInitiateAuthCommand.ts index 58b3f6b788e4..31691d63725e 100644 --- a/clients/client-cognito-identity-provider/src/commands/AdminInitiateAuthCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/AdminInitiateAuthCommand.ts @@ -46,7 +46,7 @@ export interface AdminInitiateAuthCommandOutput extends AdminInitiateAuthRespons * Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must * receive SMS messages might not be able to sign up, activate their accounts, or sign * in.

- *

If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Servicesservice, + *

If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Services service, * Amazon Simple Notification Service might place your account in the SMS sandbox. In * sandbox * mode @@ -84,7 +84,7 @@ export interface AdminInitiateAuthCommandOutput extends AdminInitiateAuthRespons * const input = { // AdminInitiateAuthRequest * UserPoolId: "STRING_VALUE", // required * ClientId: "STRING_VALUE", // required - * AuthFlow: "USER_SRP_AUTH" || "REFRESH_TOKEN_AUTH" || "REFRESH_TOKEN" || "CUSTOM_AUTH" || "ADMIN_NO_SRP_AUTH" || "USER_PASSWORD_AUTH" || "ADMIN_USER_PASSWORD_AUTH", // required + * AuthFlow: "USER_SRP_AUTH" || "REFRESH_TOKEN_AUTH" || "REFRESH_TOKEN" || "CUSTOM_AUTH" || "ADMIN_NO_SRP_AUTH" || "USER_PASSWORD_AUTH" || "ADMIN_USER_PASSWORD_AUTH" || "USER_AUTH", // required * AuthParameters: { // AuthParametersType * "": "STRING_VALUE", * }, @@ -106,11 +106,12 @@ export interface AdminInitiateAuthCommandOutput extends AdminInitiateAuthRespons * ], * EncodedData: "STRING_VALUE", * }, + * Session: "STRING_VALUE", * }; * const command = new AdminInitiateAuthCommand(input); * const response = await client.send(command); * // { // AdminInitiateAuthResponse - * // ChallengeName: "SMS_MFA" || "EMAIL_OTP" || "SOFTWARE_TOKEN_MFA" || "SELECT_MFA_TYPE" || "MFA_SETUP" || "PASSWORD_VERIFIER" || "CUSTOM_CHALLENGE" || "DEVICE_SRP_AUTH" || "DEVICE_PASSWORD_VERIFIER" || "ADMIN_NO_SRP_AUTH" || "NEW_PASSWORD_REQUIRED", + * // ChallengeName: "SMS_MFA" || "EMAIL_OTP" || "SOFTWARE_TOKEN_MFA" || "SELECT_MFA_TYPE" || "MFA_SETUP" || "PASSWORD_VERIFIER" || "CUSTOM_CHALLENGE" || "SELECT_CHALLENGE" || "DEVICE_SRP_AUTH" || "DEVICE_PASSWORD_VERIFIER" || "ADMIN_NO_SRP_AUTH" || "NEW_PASSWORD_REQUIRED" || "SMS_OTP" || "PASSWORD" || "WEB_AUTHN" || "PASSWORD_SRP", * // Session: "STRING_VALUE", * // ChallengeParameters: { // ChallengeParametersType * // "": "STRING_VALUE", @@ -157,7 +158,7 @@ export interface AdminInitiateAuthCommandOutput extends AdminInitiateAuthRespons * @throws {@link InvalidSmsRoleTrustRelationshipException} (client fault) *

This exception is thrown when the trust relationship is not valid for the role * provided for SMS configuration. This can happen if you don't trust - * cognito-idp.amazonaws.com or the external ID provided in the role does + * cognito-idp.amazonaws.com or the external ID provided in the role does * not match what is provided in the SMS configuration for the user pool.

* * @throws {@link InvalidUserPoolConfigurationException} (client fault) diff --git a/clients/client-cognito-identity-provider/src/commands/AdminListDevicesCommand.ts b/clients/client-cognito-identity-provider/src/commands/AdminListDevicesCommand.ts index 41e8cc8d0064..fc5a23111b62 100644 --- a/clients/client-cognito-identity-provider/src/commands/AdminListDevicesCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/AdminListDevicesCommand.ts @@ -37,7 +37,7 @@ export interface AdminListDevicesCommandInput extends AdminListDevicesRequest {} export interface AdminListDevicesCommandOutput extends AdminListDevicesResponse, __MetadataBearer {} /** - *

Lists devices, as an administrator.

+ *

Lists a user's registered devices.

* *

Amazon Cognito evaluates Identity and Access Management (IAM) policies in requests for this API operation. For * this operation, you must use IAM credentials to authorize requests, and you must diff --git a/clients/client-cognito-identity-provider/src/commands/AdminResetUserPasswordCommand.ts b/clients/client-cognito-identity-provider/src/commands/AdminResetUserPasswordCommand.ts index 3b2b3b183fd9..46422675b737 100644 --- a/clients/client-cognito-identity-provider/src/commands/AdminResetUserPasswordCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/AdminResetUserPasswordCommand.ts @@ -48,7 +48,7 @@ export interface AdminResetUserPasswordCommandOutput extends AdminResetUserPassw * Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must * receive SMS messages might not be able to sign up, activate their accounts, or sign * in.

- *

If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Servicesservice, + *

If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Services service, * Amazon Simple Notification Service might place your account in the SMS sandbox. In * sandbox * mode @@ -131,7 +131,7 @@ export interface AdminResetUserPasswordCommandOutput extends AdminResetUserPassw * @throws {@link InvalidSmsRoleTrustRelationshipException} (client fault) *

This exception is thrown when the trust relationship is not valid for the role * provided for SMS configuration. This can happen if you don't trust - * cognito-idp.amazonaws.com or the external ID provided in the role does + * cognito-idp.amazonaws.com or the external ID provided in the role does * not match what is provided in the SMS configuration for the user pool.

* * @throws {@link LimitExceededException} (client fault) diff --git a/clients/client-cognito-identity-provider/src/commands/AdminRespondToAuthChallengeCommand.ts b/clients/client-cognito-identity-provider/src/commands/AdminRespondToAuthChallengeCommand.ts index eba9b83da479..cbb68792c6cf 100644 --- a/clients/client-cognito-identity-provider/src/commands/AdminRespondToAuthChallengeCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/AdminRespondToAuthChallengeCommand.ts @@ -54,7 +54,7 @@ export interface AdminRespondToAuthChallengeCommandOutput * Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must * receive SMS messages might not be able to sign up, activate their accounts, or sign * in.

- *

If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Servicesservice, + *

If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Services service, * Amazon Simple Notification Service might place your account in the SMS sandbox. In * sandbox * mode @@ -92,7 +92,7 @@ export interface AdminRespondToAuthChallengeCommandOutput * const input = { // AdminRespondToAuthChallengeRequest * UserPoolId: "STRING_VALUE", // required * ClientId: "STRING_VALUE", // required - * ChallengeName: "SMS_MFA" || "EMAIL_OTP" || "SOFTWARE_TOKEN_MFA" || "SELECT_MFA_TYPE" || "MFA_SETUP" || "PASSWORD_VERIFIER" || "CUSTOM_CHALLENGE" || "DEVICE_SRP_AUTH" || "DEVICE_PASSWORD_VERIFIER" || "ADMIN_NO_SRP_AUTH" || "NEW_PASSWORD_REQUIRED", // required + * ChallengeName: "SMS_MFA" || "EMAIL_OTP" || "SOFTWARE_TOKEN_MFA" || "SELECT_MFA_TYPE" || "MFA_SETUP" || "PASSWORD_VERIFIER" || "CUSTOM_CHALLENGE" || "SELECT_CHALLENGE" || "DEVICE_SRP_AUTH" || "DEVICE_PASSWORD_VERIFIER" || "ADMIN_NO_SRP_AUTH" || "NEW_PASSWORD_REQUIRED" || "SMS_OTP" || "PASSWORD" || "WEB_AUTHN" || "PASSWORD_SRP", // required * ChallengeResponses: { // ChallengeResponsesType * "": "STRING_VALUE", * }, @@ -119,7 +119,7 @@ export interface AdminRespondToAuthChallengeCommandOutput * const command = new AdminRespondToAuthChallengeCommand(input); * const response = await client.send(command); * // { // AdminRespondToAuthChallengeResponse - * // ChallengeName: "SMS_MFA" || "EMAIL_OTP" || "SOFTWARE_TOKEN_MFA" || "SELECT_MFA_TYPE" || "MFA_SETUP" || "PASSWORD_VERIFIER" || "CUSTOM_CHALLENGE" || "DEVICE_SRP_AUTH" || "DEVICE_PASSWORD_VERIFIER" || "ADMIN_NO_SRP_AUTH" || "NEW_PASSWORD_REQUIRED", + * // ChallengeName: "SMS_MFA" || "EMAIL_OTP" || "SOFTWARE_TOKEN_MFA" || "SELECT_MFA_TYPE" || "MFA_SETUP" || "PASSWORD_VERIFIER" || "CUSTOM_CHALLENGE" || "SELECT_CHALLENGE" || "DEVICE_SRP_AUTH" || "DEVICE_PASSWORD_VERIFIER" || "ADMIN_NO_SRP_AUTH" || "NEW_PASSWORD_REQUIRED" || "SMS_OTP" || "PASSWORD" || "WEB_AUTHN" || "PASSWORD_SRP", * // Session: "STRING_VALUE", * // ChallengeParameters: { // ChallengeParametersType * // "": "STRING_VALUE", @@ -183,7 +183,7 @@ export interface AdminRespondToAuthChallengeCommandOutput * @throws {@link InvalidSmsRoleTrustRelationshipException} (client fault) *

This exception is thrown when the trust relationship is not valid for the role * provided for SMS configuration. This can happen if you don't trust - * cognito-idp.amazonaws.com or the external ID provided in the role does + * cognito-idp.amazonaws.com or the external ID provided in the role does * not match what is provided in the SMS configuration for the user pool.

* * @throws {@link InvalidUserPoolConfigurationException} (client fault) diff --git a/clients/client-cognito-identity-provider/src/commands/AdminUpdateUserAttributesCommand.ts b/clients/client-cognito-identity-provider/src/commands/AdminUpdateUserAttributesCommand.ts index 94fbd0ee83f0..1e802778ca71 100644 --- a/clients/client-cognito-identity-provider/src/commands/AdminUpdateUserAttributesCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/AdminUpdateUserAttributesCommand.ts @@ -44,7 +44,7 @@ export interface AdminUpdateUserAttributesCommandOutput extends AdminUpdateUserA * Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must * receive SMS messages might not be able to sign up, activate their accounts, or sign * in.

- *

If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Servicesservice, + *

If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Services service, * Amazon Simple Notification Service might place your account in the SMS sandbox. In * sandbox * mode @@ -139,7 +139,7 @@ export interface AdminUpdateUserAttributesCommandOutput extends AdminUpdateUserA * @throws {@link InvalidSmsRoleTrustRelationshipException} (client fault) *

This exception is thrown when the trust relationship is not valid for the role * provided for SMS configuration. This can happen if you don't trust - * cognito-idp.amazonaws.com or the external ID provided in the role does + * cognito-idp.amazonaws.com or the external ID provided in the role does * not match what is provided in the SMS configuration for the user pool.

* * @throws {@link NotAuthorizedException} (client fault) diff --git a/clients/client-cognito-identity-provider/src/commands/ChangePasswordCommand.ts b/clients/client-cognito-identity-provider/src/commands/ChangePasswordCommand.ts index 53c59c3afa35..24fb1b9ad7c6 100644 --- a/clients/client-cognito-identity-provider/src/commands/ChangePasswordCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/ChangePasswordCommand.ts @@ -51,7 +51,7 @@ export interface ChangePasswordCommandOutput extends ChangePasswordResponse, __M * // const { CognitoIdentityProviderClient, ChangePasswordCommand } = require("@aws-sdk/client-cognito-identity-provider"); // CommonJS import * const client = new CognitoIdentityProviderClient(config); * const input = { // ChangePasswordRequest - * PreviousPassword: "STRING_VALUE", // required + * PreviousPassword: "STRING_VALUE", * ProposedPassword: "STRING_VALUE", // required * AccessToken: "STRING_VALUE", // required * }; diff --git a/clients/client-cognito-identity-provider/src/commands/CompleteWebAuthnRegistrationCommand.ts b/clients/client-cognito-identity-provider/src/commands/CompleteWebAuthnRegistrationCommand.ts new file mode 100644 index 000000000000..9b586196e7f0 --- /dev/null +++ b/clients/client-cognito-identity-provider/src/commands/CompleteWebAuthnRegistrationCommand.ts @@ -0,0 +1,153 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { + CognitoIdentityProviderClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes, +} from "../CognitoIdentityProviderClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { + CompleteWebAuthnRegistrationRequest, + CompleteWebAuthnRegistrationRequestFilterSensitiveLog, + CompleteWebAuthnRegistrationResponse, +} from "../models/models_0"; +import { + de_CompleteWebAuthnRegistrationCommand, + se_CompleteWebAuthnRegistrationCommand, +} from "../protocols/Aws_json1_1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link CompleteWebAuthnRegistrationCommand}. + */ +export interface CompleteWebAuthnRegistrationCommandInput extends CompleteWebAuthnRegistrationRequest {} +/** + * @public + * + * The output of {@link CompleteWebAuthnRegistrationCommand}. + */ +export interface CompleteWebAuthnRegistrationCommandOutput + extends CompleteWebAuthnRegistrationResponse, + __MetadataBearer {} + +/** + *

Completes registration of a passkey authenticator for the current user. Your + * application provides data from a successful registration request with the data from the + * output of a StartWebAuthnRegistration.

+ *

Authorize this action with a signed-in user's access token. It must include the scope aws.cognito.signin.user.admin.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { CognitoIdentityProviderClient, CompleteWebAuthnRegistrationCommand } from "@aws-sdk/client-cognito-identity-provider"; // ES Modules import + * // const { CognitoIdentityProviderClient, CompleteWebAuthnRegistrationCommand } = require("@aws-sdk/client-cognito-identity-provider"); // CommonJS import + * const client = new CognitoIdentityProviderClient(config); + * const input = { // CompleteWebAuthnRegistrationRequest + * AccessToken: "STRING_VALUE", // required + * Credential: "DOCUMENT_VALUE", // required + * }; + * const command = new CompleteWebAuthnRegistrationCommand(input); + * const response = await client.send(command); + * // {}; + * + * ``` + * + * @param CompleteWebAuthnRegistrationCommandInput - {@link CompleteWebAuthnRegistrationCommandInput} + * @returns {@link CompleteWebAuthnRegistrationCommandOutput} + * @see {@link CompleteWebAuthnRegistrationCommandInput} for command's `input` shape. + * @see {@link CompleteWebAuthnRegistrationCommandOutput} for command's `response` shape. + * @see {@link CognitoIdentityProviderClientResolvedConfig | config} for CognitoIdentityProviderClient's `config` shape. + * + * @throws {@link ForbiddenException} (client fault) + *

This exception is thrown when WAF doesn't allow your request based on a web + * ACL that's associated with your user pool.

+ * + * @throws {@link InternalErrorException} (server fault) + *

This exception is thrown when Amazon Cognito encounters an internal error.

+ * + * @throws {@link InvalidParameterException} (client fault) + *

This exception is thrown when the Amazon Cognito service encounters an invalid + * parameter.

+ * + * @throws {@link LimitExceededException} (client fault) + *

This exception is thrown when a user exceeds the limit for a requested Amazon Web Services + * resource.

+ * + * @throws {@link NotAuthorizedException} (client fault) + *

This exception is thrown when a user isn't authorized.

+ * + * @throws {@link TooManyRequestsException} (client fault) + *

This exception is thrown when the user has made too many requests for a given + * operation.

+ * + * @throws {@link WebAuthnChallengeNotFoundException} (client fault) + *

This exception is thrown when the challenge from StartWebAuthn + * registration has expired.

+ * + * @throws {@link WebAuthnClientMismatchException} (client fault) + *

This exception is thrown when the access token is for a different client than the one + * in the original StartWebAuthnRegistration request.

+ * + * @throws {@link WebAuthnCredentialNotSupportedException} (client fault) + *

This exception is thrown when a user presents passkey credentials from an unsupported + * device or provider.

+ * + * @throws {@link WebAuthnNotEnabledException} (client fault) + *

This exception is thrown when the passkey feature isn't enabled for the user + * pool.

+ * + * @throws {@link WebAuthnOriginNotAllowedException} (client fault) + *

This exception is thrown when the passkey credential's registration origin does not + * align with the user pool relying party id.

+ * + * @throws {@link WebAuthnRelyingPartyMismatchException} (client fault) + *

This exception is thrown when the given passkey credential is associated with a + * different relying party ID than the user pool relying party ID.

+ * + * @throws {@link CognitoIdentityProviderServiceException} + *

Base exception class for all service exceptions from CognitoIdentityProvider service.

+ * + * @public + */ +export class CompleteWebAuthnRegistrationCommand extends $Command + .classBuilder< + CompleteWebAuthnRegistrationCommandInput, + CompleteWebAuthnRegistrationCommandOutput, + CognitoIdentityProviderClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: CognitoIdentityProviderClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AWSCognitoIdentityProviderService", "CompleteWebAuthnRegistration", {}) + .n("CognitoIdentityProviderClient", "CompleteWebAuthnRegistrationCommand") + .f(CompleteWebAuthnRegistrationRequestFilterSensitiveLog, void 0) + .ser(se_CompleteWebAuthnRegistrationCommand) + .de(de_CompleteWebAuthnRegistrationCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: CompleteWebAuthnRegistrationRequest; + output: {}; + }; + sdk: { + input: CompleteWebAuthnRegistrationCommandInput; + output: CompleteWebAuthnRegistrationCommandOutput; + }; + }; +} diff --git a/clients/client-cognito-identity-provider/src/commands/ConfirmSignUpCommand.ts b/clients/client-cognito-identity-provider/src/commands/ConfirmSignUpCommand.ts index 005570f9fe69..a06ff99befd5 100644 --- a/clients/client-cognito-identity-provider/src/commands/ConfirmSignUpCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/ConfirmSignUpCommand.ts @@ -14,6 +14,7 @@ import { ConfirmSignUpRequest, ConfirmSignUpRequestFilterSensitiveLog, ConfirmSignUpResponse, + ConfirmSignUpResponseFilterSensitiveLog, } from "../models/models_0"; import { de_ConfirmSignUpCommand, se_ConfirmSignUpCommand } from "../protocols/Aws_json1_1"; @@ -76,10 +77,13 @@ export interface ConfirmSignUpCommandOutput extends ConfirmSignUpResponse, __Met * ClientMetadata: { // ClientMetadataType * "": "STRING_VALUE", * }, + * Session: "STRING_VALUE", * }; * const command = new ConfirmSignUpCommand(input); * const response = await client.send(command); - * // {}; + * // { // ConfirmSignUpResponse + * // Session: "STRING_VALUE", + * // }; * * ``` * @@ -169,7 +173,7 @@ export class ConfirmSignUpCommand extends $Command }) .s("AWSCognitoIdentityProviderService", "ConfirmSignUp", {}) .n("CognitoIdentityProviderClient", "ConfirmSignUpCommand") - .f(ConfirmSignUpRequestFilterSensitiveLog, void 0) + .f(ConfirmSignUpRequestFilterSensitiveLog, ConfirmSignUpResponseFilterSensitiveLog) .ser(se_ConfirmSignUpCommand) .de(de_ConfirmSignUpCommand) .build() { @@ -177,7 +181,7 @@ export class ConfirmSignUpCommand extends $Command protected declare static __types: { api: { input: ConfirmSignUpRequest; - output: {}; + output: ConfirmSignUpResponse; }; sdk: { input: ConfirmSignUpCommandInput; diff --git a/clients/client-cognito-identity-provider/src/commands/CreateManagedLoginBrandingCommand.ts b/clients/client-cognito-identity-provider/src/commands/CreateManagedLoginBrandingCommand.ts new file mode 100644 index 000000000000..e80d6ad287b1 --- /dev/null +++ b/clients/client-cognito-identity-provider/src/commands/CreateManagedLoginBrandingCommand.ts @@ -0,0 +1,191 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { + CognitoIdentityProviderClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes, +} from "../CognitoIdentityProviderClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { + CreateManagedLoginBrandingRequest, + CreateManagedLoginBrandingRequestFilterSensitiveLog, + CreateManagedLoginBrandingResponse, +} from "../models/models_0"; +import { de_CreateManagedLoginBrandingCommand, se_CreateManagedLoginBrandingCommand } from "../protocols/Aws_json1_1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link CreateManagedLoginBrandingCommand}. + */ +export interface CreateManagedLoginBrandingCommandInput extends CreateManagedLoginBrandingRequest {} +/** + * @public + * + * The output of {@link CreateManagedLoginBrandingCommand}. + */ +export interface CreateManagedLoginBrandingCommandOutput extends CreateManagedLoginBrandingResponse, __MetadataBearer {} + +/** + *

Creates a new set of branding settings for a user pool style and associates it with an + * app client. This operation is the programmatic option for the creation of a new style in + * the branding designer.

+ *

Provides values for UI customization in a Settings JSON object and image + * files in an Assets array. To send the JSON object Document + * type parameter in Settings, you might need to update to the most recent + * version of your Amazon Web Services SDK.

+ *

This operation has a 2-megabyte request-size limit and include the CSS settings and + * image assets for your app client. Your branding settings might exceed 2MB in size. Amazon Cognito + * doesn't require that you pass all parameters in one request and preserves existing + * style settings that you don't specify. If your request is larger than 2MB, separate it + * into multiple requests, each with a size smaller than the limit.

+ *

For more information, see API and SDK operations for managed login branding + *

+ * + *

Amazon Cognito evaluates Identity and Access Management (IAM) policies in requests for this API operation. For + * this operation, you must use IAM credentials to authorize requests, and you must + * grant yourself the corresponding IAM permission in a policy.

+ *

+ * Learn more + *

+ * + *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { CognitoIdentityProviderClient, CreateManagedLoginBrandingCommand } from "@aws-sdk/client-cognito-identity-provider"; // ES Modules import + * // const { CognitoIdentityProviderClient, CreateManagedLoginBrandingCommand } = require("@aws-sdk/client-cognito-identity-provider"); // CommonJS import + * const client = new CognitoIdentityProviderClient(config); + * const input = { // CreateManagedLoginBrandingRequest + * UserPoolId: "STRING_VALUE", // required + * ClientId: "STRING_VALUE", // required + * UseCognitoProvidedValues: true || false, + * Settings: "DOCUMENT_VALUE", + * Assets: [ // AssetListType + * { // AssetType + * Category: "FAVICON_ICO" || "FAVICON_SVG" || "EMAIL_GRAPHIC" || "SMS_GRAPHIC" || "AUTH_APP_GRAPHIC" || "PASSWORD_GRAPHIC" || "PASSKEY_GRAPHIC" || "PAGE_HEADER_LOGO" || "PAGE_HEADER_BACKGROUND" || "PAGE_FOOTER_LOGO" || "PAGE_FOOTER_BACKGROUND" || "PAGE_BACKGROUND" || "FORM_BACKGROUND" || "FORM_LOGO" || "IDP_BUTTON_ICON", // required + * ColorMode: "LIGHT" || "DARK" || "DYNAMIC", // required + * Extension: "ICO" || "JPEG" || "PNG" || "SVG" || "WEBP", // required + * Bytes: new Uint8Array(), // e.g. Buffer.from("") or new TextEncoder().encode("") + * ResourceId: "STRING_VALUE", + * }, + * ], + * }; + * const command = new CreateManagedLoginBrandingCommand(input); + * const response = await client.send(command); + * // { // CreateManagedLoginBrandingResponse + * // ManagedLoginBranding: { // ManagedLoginBrandingType + * // ManagedLoginBrandingId: "STRING_VALUE", + * // UserPoolId: "STRING_VALUE", + * // UseCognitoProvidedValues: true || false, + * // Settings: "DOCUMENT_VALUE", + * // Assets: [ // AssetListType + * // { // AssetType + * // Category: "FAVICON_ICO" || "FAVICON_SVG" || "EMAIL_GRAPHIC" || "SMS_GRAPHIC" || "AUTH_APP_GRAPHIC" || "PASSWORD_GRAPHIC" || "PASSKEY_GRAPHIC" || "PAGE_HEADER_LOGO" || "PAGE_HEADER_BACKGROUND" || "PAGE_FOOTER_LOGO" || "PAGE_FOOTER_BACKGROUND" || "PAGE_BACKGROUND" || "FORM_BACKGROUND" || "FORM_LOGO" || "IDP_BUTTON_ICON", // required + * // ColorMode: "LIGHT" || "DARK" || "DYNAMIC", // required + * // Extension: "ICO" || "JPEG" || "PNG" || "SVG" || "WEBP", // required + * // Bytes: new Uint8Array(), + * // ResourceId: "STRING_VALUE", + * // }, + * // ], + * // CreationDate: new Date("TIMESTAMP"), + * // LastModifiedDate: new Date("TIMESTAMP"), + * // }, + * // }; + * + * ``` + * + * @param CreateManagedLoginBrandingCommandInput - {@link CreateManagedLoginBrandingCommandInput} + * @returns {@link CreateManagedLoginBrandingCommandOutput} + * @see {@link CreateManagedLoginBrandingCommandInput} for command's `input` shape. + * @see {@link CreateManagedLoginBrandingCommandOutput} for command's `response` shape. + * @see {@link CognitoIdentityProviderClientResolvedConfig | config} for CognitoIdentityProviderClient's `config` shape. + * + * @throws {@link ConcurrentModificationException} (client fault) + *

This exception is thrown if two or more modifications are happening + * concurrently.

+ * + * @throws {@link InternalErrorException} (server fault) + *

This exception is thrown when Amazon Cognito encounters an internal error.

+ * + * @throws {@link InvalidParameterException} (client fault) + *

This exception is thrown when the Amazon Cognito service encounters an invalid + * parameter.

+ * + * @throws {@link LimitExceededException} (client fault) + *

This exception is thrown when a user exceeds the limit for a requested Amazon Web Services + * resource.

+ * + * @throws {@link ManagedLoginBrandingExistsException} (client fault) + *

This exception is thrown when you attempt to apply a managed login branding style to + * an app client that already has an assigned style.

+ * + * @throws {@link NotAuthorizedException} (client fault) + *

This exception is thrown when a user isn't authorized.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

This exception is thrown when the Amazon Cognito service can't find the requested + * resource.

+ * + * @throws {@link TooManyRequestsException} (client fault) + *

This exception is thrown when the user has made too many requests for a given + * operation.

+ * + * @throws {@link CognitoIdentityProviderServiceException} + *

Base exception class for all service exceptions from CognitoIdentityProvider service.

+ * + * @public + */ +export class CreateManagedLoginBrandingCommand extends $Command + .classBuilder< + CreateManagedLoginBrandingCommandInput, + CreateManagedLoginBrandingCommandOutput, + CognitoIdentityProviderClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: CognitoIdentityProviderClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AWSCognitoIdentityProviderService", "CreateManagedLoginBranding", {}) + .n("CognitoIdentityProviderClient", "CreateManagedLoginBrandingCommand") + .f(CreateManagedLoginBrandingRequestFilterSensitiveLog, void 0) + .ser(se_CreateManagedLoginBrandingCommand) + .de(de_CreateManagedLoginBrandingCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: CreateManagedLoginBrandingRequest; + output: CreateManagedLoginBrandingResponse; + }; + sdk: { + input: CreateManagedLoginBrandingCommandInput; + output: CreateManagedLoginBrandingCommandOutput; + }; + }; +} diff --git a/clients/client-cognito-identity-provider/src/commands/CreateUserPoolClientCommand.ts b/clients/client-cognito-identity-provider/src/commands/CreateUserPoolClientCommand.ts index 6233eec1002b..b8d92ff15c1e 100644 --- a/clients/client-cognito-identity-provider/src/commands/CreateUserPoolClientCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/CreateUserPoolClientCommand.ts @@ -87,7 +87,7 @@ export interface CreateUserPoolClientCommandOutput extends CreateUserPoolClientR * "STRING_VALUE", * ], * ExplicitAuthFlows: [ // ExplicitAuthFlowsListType - * "ADMIN_NO_SRP_AUTH" || "CUSTOM_AUTH_FLOW_ONLY" || "USER_PASSWORD_AUTH" || "ALLOW_ADMIN_USER_PASSWORD_AUTH" || "ALLOW_CUSTOM_AUTH" || "ALLOW_USER_PASSWORD_AUTH" || "ALLOW_USER_SRP_AUTH" || "ALLOW_REFRESH_TOKEN_AUTH", + * "ADMIN_NO_SRP_AUTH" || "CUSTOM_AUTH_FLOW_ONLY" || "USER_PASSWORD_AUTH" || "ALLOW_ADMIN_USER_PASSWORD_AUTH" || "ALLOW_CUSTOM_AUTH" || "ALLOW_USER_PASSWORD_AUTH" || "ALLOW_USER_SRP_AUTH" || "ALLOW_REFRESH_TOKEN_AUTH" || "ALLOW_USER_AUTH", * ], * SupportedIdentityProviders: [ // SupportedIdentityProvidersListType * "STRING_VALUE", @@ -143,7 +143,7 @@ export interface CreateUserPoolClientCommandOutput extends CreateUserPoolClientR * // "STRING_VALUE", * // ], * // ExplicitAuthFlows: [ // ExplicitAuthFlowsListType - * // "ADMIN_NO_SRP_AUTH" || "CUSTOM_AUTH_FLOW_ONLY" || "USER_PASSWORD_AUTH" || "ALLOW_ADMIN_USER_PASSWORD_AUTH" || "ALLOW_CUSTOM_AUTH" || "ALLOW_USER_PASSWORD_AUTH" || "ALLOW_USER_SRP_AUTH" || "ALLOW_REFRESH_TOKEN_AUTH", + * // "ADMIN_NO_SRP_AUTH" || "CUSTOM_AUTH_FLOW_ONLY" || "USER_PASSWORD_AUTH" || "ALLOW_ADMIN_USER_PASSWORD_AUTH" || "ALLOW_CUSTOM_AUTH" || "ALLOW_USER_PASSWORD_AUTH" || "ALLOW_USER_SRP_AUTH" || "ALLOW_REFRESH_TOKEN_AUTH" || "ALLOW_USER_AUTH", * // ], * // SupportedIdentityProviders: [ // SupportedIdentityProvidersListType * // "STRING_VALUE", diff --git a/clients/client-cognito-identity-provider/src/commands/CreateUserPoolCommand.ts b/clients/client-cognito-identity-provider/src/commands/CreateUserPoolCommand.ts index b692a7c42340..de67982aaae7 100644 --- a/clients/client-cognito-identity-provider/src/commands/CreateUserPoolCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/CreateUserPoolCommand.ts @@ -40,7 +40,7 @@ export interface CreateUserPoolCommandOutput extends CreateUserPoolResponse, __M * Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must * receive SMS messages might not be able to sign up, activate their accounts, or sign * in.

- *

If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Servicesservice, + *

If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Services service, * Amazon Simple Notification Service might place your account in the SMS sandbox. In * sandbox * mode @@ -92,6 +92,11 @@ export interface CreateUserPoolCommandOutput extends CreateUserPoolResponse, __M * PasswordHistorySize: Number("int"), * TemporaryPasswordValidityDays: Number("int"), * }, + * SignInPolicy: { // SignInPolicyType + * AllowedFirstAuthFactors: [ // AllowedFirstAuthFactorsListType + * "PASSWORD" || "EMAIL_OTP" || "SMS_OTP" || "WEB_AUTHN", + * ], + * }, * }, * DeletionProtection: "ACTIVE" || "INACTIVE", * LambdaConfig: { // LambdaConfigType @@ -208,6 +213,7 @@ export interface CreateUserPoolCommandOutput extends CreateUserPoolResponse, __M * }, * ], * }, + * UserPoolTier: "LITE" || "ESSENTIALS" || "PLUS", * }; * const command = new CreateUserPoolCommand(input); * const response = await client.send(command); @@ -225,6 +231,11 @@ export interface CreateUserPoolCommandOutput extends CreateUserPoolResponse, __M * // PasswordHistorySize: Number("int"), * // TemporaryPasswordValidityDays: Number("int"), * // }, + * // SignInPolicy: { // SignInPolicyType + * // AllowedFirstAuthFactors: [ // AllowedFirstAuthFactorsListType + * // "PASSWORD" || "EMAIL_OTP" || "SMS_OTP" || "WEB_AUTHN", + * // ], + * // }, * // }, * // DeletionProtection: "ACTIVE" || "INACTIVE", * // LambdaConfig: { // LambdaConfigType @@ -350,6 +361,7 @@ export interface CreateUserPoolCommandOutput extends CreateUserPoolResponse, __M * // }, * // ], * // }, + * // UserPoolTier: "LITE" || "ESSENTIALS" || "PLUS", * // }, * // }; * @@ -361,6 +373,10 @@ export interface CreateUserPoolCommandOutput extends CreateUserPoolResponse, __M * @see {@link CreateUserPoolCommandOutput} for command's `response` shape. * @see {@link CognitoIdentityProviderClientResolvedConfig | config} for CognitoIdentityProviderClient's `config` shape. * + * @throws {@link FeatureUnavailableInTierException} (client fault) + *

This exception is thrown when a feature you attempted to configure isn't + * available in your current feature plan.

+ * * @throws {@link InternalErrorException} (server fault) *

This exception is thrown when Amazon Cognito encounters an internal error.

* @@ -379,7 +395,7 @@ export interface CreateUserPoolCommandOutput extends CreateUserPoolResponse, __M * @throws {@link InvalidSmsRoleTrustRelationshipException} (client fault) *

This exception is thrown when the trust relationship is not valid for the role * provided for SMS configuration. This can happen if you don't trust - * cognito-idp.amazonaws.com or the external ID provided in the role does + * cognito-idp.amazonaws.com or the external ID provided in the role does * not match what is provided in the SMS configuration for the user pool.

* * @throws {@link LimitExceededException} (client fault) @@ -389,6 +405,10 @@ export interface CreateUserPoolCommandOutput extends CreateUserPoolResponse, __M * @throws {@link NotAuthorizedException} (client fault) *

This exception is thrown when a user isn't authorized.

* + * @throws {@link TierChangeNotAllowedException} (client fault) + *

This exception is thrown when you've attempted to change your feature plan but + * the operation isn't permitted.

+ * * @throws {@link TooManyRequestsException} (client fault) *

This exception is thrown when the user has made too many requests for a given * operation.

diff --git a/clients/client-cognito-identity-provider/src/commands/CreateUserPoolDomainCommand.ts b/clients/client-cognito-identity-provider/src/commands/CreateUserPoolDomainCommand.ts index 99b9d5aee225..16276e6abc34 100644 --- a/clients/client-cognito-identity-provider/src/commands/CreateUserPoolDomainCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/CreateUserPoolDomainCommand.ts @@ -32,7 +32,8 @@ export interface CreateUserPoolDomainCommandInput extends CreateUserPoolDomainRe export interface CreateUserPoolDomainCommandOutput extends CreateUserPoolDomainResponse, __MetadataBearer {} /** - *

Creates a new domain for a user pool.

+ *

Creates a new domain for a user pool. The domain hosts user pool domain services like + * managed login, the hosted UI (classic), and the user pool authorization server.

* *

Amazon Cognito evaluates Identity and Access Management (IAM) policies in requests for this API operation. For * this operation, you must use IAM credentials to authorize requests, and you must @@ -62,6 +63,7 @@ export interface CreateUserPoolDomainCommandOutput extends CreateUserPoolDomainR * const input = { // CreateUserPoolDomainRequest * Domain: "STRING_VALUE", // required * UserPoolId: "STRING_VALUE", // required + * ManagedLoginVersion: Number("int"), * CustomDomainConfig: { // CustomDomainConfigType * CertificateArn: "STRING_VALUE", // required * }, @@ -69,6 +71,7 @@ export interface CreateUserPoolDomainCommandOutput extends CreateUserPoolDomainR * const command = new CreateUserPoolDomainCommand(input); * const response = await client.send(command); * // { // CreateUserPoolDomainResponse + * // ManagedLoginVersion: Number("int"), * // CloudFrontDomain: "STRING_VALUE", * // }; * @@ -80,6 +83,10 @@ export interface CreateUserPoolDomainCommandOutput extends CreateUserPoolDomainR * @see {@link CreateUserPoolDomainCommandOutput} for command's `response` shape. * @see {@link CognitoIdentityProviderClientResolvedConfig | config} for CognitoIdentityProviderClient's `config` shape. * + * @throws {@link FeatureUnavailableInTierException} (client fault) + *

This exception is thrown when a feature you attempted to configure isn't + * available in your current feature plan.

+ * * @throws {@link InternalErrorException} (server fault) *

This exception is thrown when Amazon Cognito encounters an internal error.

* diff --git a/clients/client-cognito-identity-provider/src/commands/DeleteManagedLoginBrandingCommand.ts b/clients/client-cognito-identity-provider/src/commands/DeleteManagedLoginBrandingCommand.ts new file mode 100644 index 000000000000..bde924e88598 --- /dev/null +++ b/clients/client-cognito-identity-provider/src/commands/DeleteManagedLoginBrandingCommand.ts @@ -0,0 +1,138 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { + CognitoIdentityProviderClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes, +} from "../CognitoIdentityProviderClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { DeleteManagedLoginBrandingRequest } from "../models/models_0"; +import { de_DeleteManagedLoginBrandingCommand, se_DeleteManagedLoginBrandingCommand } from "../protocols/Aws_json1_1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link DeleteManagedLoginBrandingCommand}. + */ +export interface DeleteManagedLoginBrandingCommandInput extends DeleteManagedLoginBrandingRequest {} +/** + * @public + * + * The output of {@link DeleteManagedLoginBrandingCommand}. + */ +export interface DeleteManagedLoginBrandingCommandOutput extends __MetadataBearer {} + +/** + *

Deletes a managed login branding style. When you delete a style, you delete the + * branding association for an app client and restore it to default settings.

+ * + *

Amazon Cognito evaluates Identity and Access Management (IAM) policies in requests for this API operation. For + * this operation, you must use IAM credentials to authorize requests, and you must + * grant yourself the corresponding IAM permission in a policy.

+ *

+ * Learn more + *

+ * + *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { CognitoIdentityProviderClient, DeleteManagedLoginBrandingCommand } from "@aws-sdk/client-cognito-identity-provider"; // ES Modules import + * // const { CognitoIdentityProviderClient, DeleteManagedLoginBrandingCommand } = require("@aws-sdk/client-cognito-identity-provider"); // CommonJS import + * const client = new CognitoIdentityProviderClient(config); + * const input = { // DeleteManagedLoginBrandingRequest + * ManagedLoginBrandingId: "STRING_VALUE", // required + * UserPoolId: "STRING_VALUE", // required + * }; + * const command = new DeleteManagedLoginBrandingCommand(input); + * const response = await client.send(command); + * // {}; + * + * ``` + * + * @param DeleteManagedLoginBrandingCommandInput - {@link DeleteManagedLoginBrandingCommandInput} + * @returns {@link DeleteManagedLoginBrandingCommandOutput} + * @see {@link DeleteManagedLoginBrandingCommandInput} for command's `input` shape. + * @see {@link DeleteManagedLoginBrandingCommandOutput} for command's `response` shape. + * @see {@link CognitoIdentityProviderClientResolvedConfig | config} for CognitoIdentityProviderClient's `config` shape. + * + * @throws {@link ConcurrentModificationException} (client fault) + *

This exception is thrown if two or more modifications are happening + * concurrently.

+ * + * @throws {@link InternalErrorException} (server fault) + *

This exception is thrown when Amazon Cognito encounters an internal error.

+ * + * @throws {@link InvalidParameterException} (client fault) + *

This exception is thrown when the Amazon Cognito service encounters an invalid + * parameter.

+ * + * @throws {@link NotAuthorizedException} (client fault) + *

This exception is thrown when a user isn't authorized.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

This exception is thrown when the Amazon Cognito service can't find the requested + * resource.

+ * + * @throws {@link TooManyRequestsException} (client fault) + *

This exception is thrown when the user has made too many requests for a given + * operation.

+ * + * @throws {@link CognitoIdentityProviderServiceException} + *

Base exception class for all service exceptions from CognitoIdentityProvider service.

+ * + * @public + */ +export class DeleteManagedLoginBrandingCommand extends $Command + .classBuilder< + DeleteManagedLoginBrandingCommandInput, + DeleteManagedLoginBrandingCommandOutput, + CognitoIdentityProviderClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: CognitoIdentityProviderClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AWSCognitoIdentityProviderService", "DeleteManagedLoginBranding", {}) + .n("CognitoIdentityProviderClient", "DeleteManagedLoginBrandingCommand") + .f(void 0, void 0) + .ser(se_DeleteManagedLoginBrandingCommand) + .de(de_DeleteManagedLoginBrandingCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: DeleteManagedLoginBrandingRequest; + output: {}; + }; + sdk: { + input: DeleteManagedLoginBrandingCommandInput; + output: DeleteManagedLoginBrandingCommandOutput; + }; + }; +} diff --git a/clients/client-cognito-identity-provider/src/commands/DeleteWebAuthnCredentialCommand.ts b/clients/client-cognito-identity-provider/src/commands/DeleteWebAuthnCredentialCommand.ts new file mode 100644 index 000000000000..ccca388c1521 --- /dev/null +++ b/clients/client-cognito-identity-provider/src/commands/DeleteWebAuthnCredentialCommand.ts @@ -0,0 +1,119 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { + CognitoIdentityProviderClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes, +} from "../CognitoIdentityProviderClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { + DeleteWebAuthnCredentialRequest, + DeleteWebAuthnCredentialRequestFilterSensitiveLog, + DeleteWebAuthnCredentialResponse, +} from "../models/models_0"; +import { de_DeleteWebAuthnCredentialCommand, se_DeleteWebAuthnCredentialCommand } from "../protocols/Aws_json1_1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link DeleteWebAuthnCredentialCommand}. + */ +export interface DeleteWebAuthnCredentialCommandInput extends DeleteWebAuthnCredentialRequest {} +/** + * @public + * + * The output of {@link DeleteWebAuthnCredentialCommand}. + */ +export interface DeleteWebAuthnCredentialCommandOutput extends DeleteWebAuthnCredentialResponse, __MetadataBearer {} + +/** + *

Deletes a registered passkey, or webauthN, device for the currently signed-in + * user.

+ *

Authorize this action with a signed-in user's access token. It must include the scope aws.cognito.signin.user.admin.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { CognitoIdentityProviderClient, DeleteWebAuthnCredentialCommand } from "@aws-sdk/client-cognito-identity-provider"; // ES Modules import + * // const { CognitoIdentityProviderClient, DeleteWebAuthnCredentialCommand } = require("@aws-sdk/client-cognito-identity-provider"); // CommonJS import + * const client = new CognitoIdentityProviderClient(config); + * const input = { // DeleteWebAuthnCredentialRequest + * AccessToken: "STRING_VALUE", // required + * CredentialId: "STRING_VALUE", // required + * }; + * const command = new DeleteWebAuthnCredentialCommand(input); + * const response = await client.send(command); + * // {}; + * + * ``` + * + * @param DeleteWebAuthnCredentialCommandInput - {@link DeleteWebAuthnCredentialCommandInput} + * @returns {@link DeleteWebAuthnCredentialCommandOutput} + * @see {@link DeleteWebAuthnCredentialCommandInput} for command's `input` shape. + * @see {@link DeleteWebAuthnCredentialCommandOutput} for command's `response` shape. + * @see {@link CognitoIdentityProviderClientResolvedConfig | config} for CognitoIdentityProviderClient's `config` shape. + * + * @throws {@link ForbiddenException} (client fault) + *

This exception is thrown when WAF doesn't allow your request based on a web + * ACL that's associated with your user pool.

+ * + * @throws {@link InternalErrorException} (server fault) + *

This exception is thrown when Amazon Cognito encounters an internal error.

+ * + * @throws {@link InvalidParameterException} (client fault) + *

This exception is thrown when the Amazon Cognito service encounters an invalid + * parameter.

+ * + * @throws {@link NotAuthorizedException} (client fault) + *

This exception is thrown when a user isn't authorized.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

This exception is thrown when the Amazon Cognito service can't find the requested + * resource.

+ * + * @throws {@link CognitoIdentityProviderServiceException} + *

Base exception class for all service exceptions from CognitoIdentityProvider service.

+ * + * @public + */ +export class DeleteWebAuthnCredentialCommand extends $Command + .classBuilder< + DeleteWebAuthnCredentialCommandInput, + DeleteWebAuthnCredentialCommandOutput, + CognitoIdentityProviderClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: CognitoIdentityProviderClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AWSCognitoIdentityProviderService", "DeleteWebAuthnCredential", {}) + .n("CognitoIdentityProviderClient", "DeleteWebAuthnCredentialCommand") + .f(DeleteWebAuthnCredentialRequestFilterSensitiveLog, void 0) + .ser(se_DeleteWebAuthnCredentialCommand) + .de(de_DeleteWebAuthnCredentialCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: DeleteWebAuthnCredentialRequest; + output: {}; + }; + sdk: { + input: DeleteWebAuthnCredentialCommandInput; + output: DeleteWebAuthnCredentialCommandOutput; + }; + }; +} diff --git a/clients/client-cognito-identity-provider/src/commands/DescribeManagedLoginBrandingByClientCommand.ts b/clients/client-cognito-identity-provider/src/commands/DescribeManagedLoginBrandingByClientCommand.ts new file mode 100644 index 000000000000..9012db91f0e8 --- /dev/null +++ b/clients/client-cognito-identity-provider/src/commands/DescribeManagedLoginBrandingByClientCommand.ts @@ -0,0 +1,142 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { + CognitoIdentityProviderClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes, +} from "../CognitoIdentityProviderClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { + DescribeManagedLoginBrandingByClientRequest, + DescribeManagedLoginBrandingByClientRequestFilterSensitiveLog, + DescribeManagedLoginBrandingByClientResponse, +} from "../models/models_0"; +import { + de_DescribeManagedLoginBrandingByClientCommand, + se_DescribeManagedLoginBrandingByClientCommand, +} from "../protocols/Aws_json1_1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link DescribeManagedLoginBrandingByClientCommand}. + */ +export interface DescribeManagedLoginBrandingByClientCommandInput extends DescribeManagedLoginBrandingByClientRequest {} +/** + * @public + * + * The output of {@link DescribeManagedLoginBrandingByClientCommand}. + */ +export interface DescribeManagedLoginBrandingByClientCommandOutput + extends DescribeManagedLoginBrandingByClientResponse, + __MetadataBearer {} + +/** + *

When given the ID of a user pool app client, returns detailed information about the + * style assigned to the app client.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { CognitoIdentityProviderClient, DescribeManagedLoginBrandingByClientCommand } from "@aws-sdk/client-cognito-identity-provider"; // ES Modules import + * // const { CognitoIdentityProviderClient, DescribeManagedLoginBrandingByClientCommand } = require("@aws-sdk/client-cognito-identity-provider"); // CommonJS import + * const client = new CognitoIdentityProviderClient(config); + * const input = { // DescribeManagedLoginBrandingByClientRequest + * UserPoolId: "STRING_VALUE", // required + * ClientId: "STRING_VALUE", // required + * ReturnMergedResources: true || false, + * }; + * const command = new DescribeManagedLoginBrandingByClientCommand(input); + * const response = await client.send(command); + * // { // DescribeManagedLoginBrandingByClientResponse + * // ManagedLoginBranding: { // ManagedLoginBrandingType + * // ManagedLoginBrandingId: "STRING_VALUE", + * // UserPoolId: "STRING_VALUE", + * // UseCognitoProvidedValues: true || false, + * // Settings: "DOCUMENT_VALUE", + * // Assets: [ // AssetListType + * // { // AssetType + * // Category: "FAVICON_ICO" || "FAVICON_SVG" || "EMAIL_GRAPHIC" || "SMS_GRAPHIC" || "AUTH_APP_GRAPHIC" || "PASSWORD_GRAPHIC" || "PASSKEY_GRAPHIC" || "PAGE_HEADER_LOGO" || "PAGE_HEADER_BACKGROUND" || "PAGE_FOOTER_LOGO" || "PAGE_FOOTER_BACKGROUND" || "PAGE_BACKGROUND" || "FORM_BACKGROUND" || "FORM_LOGO" || "IDP_BUTTON_ICON", // required + * // ColorMode: "LIGHT" || "DARK" || "DYNAMIC", // required + * // Extension: "ICO" || "JPEG" || "PNG" || "SVG" || "WEBP", // required + * // Bytes: new Uint8Array(), + * // ResourceId: "STRING_VALUE", + * // }, + * // ], + * // CreationDate: new Date("TIMESTAMP"), + * // LastModifiedDate: new Date("TIMESTAMP"), + * // }, + * // }; + * + * ``` + * + * @param DescribeManagedLoginBrandingByClientCommandInput - {@link DescribeManagedLoginBrandingByClientCommandInput} + * @returns {@link DescribeManagedLoginBrandingByClientCommandOutput} + * @see {@link DescribeManagedLoginBrandingByClientCommandInput} for command's `input` shape. + * @see {@link DescribeManagedLoginBrandingByClientCommandOutput} for command's `response` shape. + * @see {@link CognitoIdentityProviderClientResolvedConfig | config} for CognitoIdentityProviderClient's `config` shape. + * + * @throws {@link InternalErrorException} (server fault) + *

This exception is thrown when Amazon Cognito encounters an internal error.

+ * + * @throws {@link InvalidParameterException} (client fault) + *

This exception is thrown when the Amazon Cognito service encounters an invalid + * parameter.

+ * + * @throws {@link NotAuthorizedException} (client fault) + *

This exception is thrown when a user isn't authorized.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

This exception is thrown when the Amazon Cognito service can't find the requested + * resource.

+ * + * @throws {@link TooManyRequestsException} (client fault) + *

This exception is thrown when the user has made too many requests for a given + * operation.

+ * + * @throws {@link CognitoIdentityProviderServiceException} + *

Base exception class for all service exceptions from CognitoIdentityProvider service.

+ * + * @public + */ +export class DescribeManagedLoginBrandingByClientCommand extends $Command + .classBuilder< + DescribeManagedLoginBrandingByClientCommandInput, + DescribeManagedLoginBrandingByClientCommandOutput, + CognitoIdentityProviderClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: CognitoIdentityProviderClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AWSCognitoIdentityProviderService", "DescribeManagedLoginBrandingByClient", {}) + .n("CognitoIdentityProviderClient", "DescribeManagedLoginBrandingByClientCommand") + .f(DescribeManagedLoginBrandingByClientRequestFilterSensitiveLog, void 0) + .ser(se_DescribeManagedLoginBrandingByClientCommand) + .de(de_DescribeManagedLoginBrandingByClientCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: DescribeManagedLoginBrandingByClientRequest; + output: DescribeManagedLoginBrandingByClientResponse; + }; + sdk: { + input: DescribeManagedLoginBrandingByClientCommandInput; + output: DescribeManagedLoginBrandingByClientCommandOutput; + }; + }; +} diff --git a/clients/client-cognito-identity-provider/src/commands/DescribeManagedLoginBrandingCommand.ts b/clients/client-cognito-identity-provider/src/commands/DescribeManagedLoginBrandingCommand.ts new file mode 100644 index 000000000000..3a671042aba5 --- /dev/null +++ b/clients/client-cognito-identity-provider/src/commands/DescribeManagedLoginBrandingCommand.ts @@ -0,0 +1,138 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { + CognitoIdentityProviderClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes, +} from "../CognitoIdentityProviderClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { DescribeManagedLoginBrandingRequest, DescribeManagedLoginBrandingResponse } from "../models/models_0"; +import { + de_DescribeManagedLoginBrandingCommand, + se_DescribeManagedLoginBrandingCommand, +} from "../protocols/Aws_json1_1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link DescribeManagedLoginBrandingCommand}. + */ +export interface DescribeManagedLoginBrandingCommandInput extends DescribeManagedLoginBrandingRequest {} +/** + * @public + * + * The output of {@link DescribeManagedLoginBrandingCommand}. + */ +export interface DescribeManagedLoginBrandingCommandOutput + extends DescribeManagedLoginBrandingResponse, + __MetadataBearer {} + +/** + *

When given the ID of a managed login branding style, returns detailed information + * about the style.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { CognitoIdentityProviderClient, DescribeManagedLoginBrandingCommand } from "@aws-sdk/client-cognito-identity-provider"; // ES Modules import + * // const { CognitoIdentityProviderClient, DescribeManagedLoginBrandingCommand } = require("@aws-sdk/client-cognito-identity-provider"); // CommonJS import + * const client = new CognitoIdentityProviderClient(config); + * const input = { // DescribeManagedLoginBrandingRequest + * UserPoolId: "STRING_VALUE", // required + * ManagedLoginBrandingId: "STRING_VALUE", // required + * ReturnMergedResources: true || false, + * }; + * const command = new DescribeManagedLoginBrandingCommand(input); + * const response = await client.send(command); + * // { // DescribeManagedLoginBrandingResponse + * // ManagedLoginBranding: { // ManagedLoginBrandingType + * // ManagedLoginBrandingId: "STRING_VALUE", + * // UserPoolId: "STRING_VALUE", + * // UseCognitoProvidedValues: true || false, + * // Settings: "DOCUMENT_VALUE", + * // Assets: [ // AssetListType + * // { // AssetType + * // Category: "FAVICON_ICO" || "FAVICON_SVG" || "EMAIL_GRAPHIC" || "SMS_GRAPHIC" || "AUTH_APP_GRAPHIC" || "PASSWORD_GRAPHIC" || "PASSKEY_GRAPHIC" || "PAGE_HEADER_LOGO" || "PAGE_HEADER_BACKGROUND" || "PAGE_FOOTER_LOGO" || "PAGE_FOOTER_BACKGROUND" || "PAGE_BACKGROUND" || "FORM_BACKGROUND" || "FORM_LOGO" || "IDP_BUTTON_ICON", // required + * // ColorMode: "LIGHT" || "DARK" || "DYNAMIC", // required + * // Extension: "ICO" || "JPEG" || "PNG" || "SVG" || "WEBP", // required + * // Bytes: new Uint8Array(), + * // ResourceId: "STRING_VALUE", + * // }, + * // ], + * // CreationDate: new Date("TIMESTAMP"), + * // LastModifiedDate: new Date("TIMESTAMP"), + * // }, + * // }; + * + * ``` + * + * @param DescribeManagedLoginBrandingCommandInput - {@link DescribeManagedLoginBrandingCommandInput} + * @returns {@link DescribeManagedLoginBrandingCommandOutput} + * @see {@link DescribeManagedLoginBrandingCommandInput} for command's `input` shape. + * @see {@link DescribeManagedLoginBrandingCommandOutput} for command's `response` shape. + * @see {@link CognitoIdentityProviderClientResolvedConfig | config} for CognitoIdentityProviderClient's `config` shape. + * + * @throws {@link InternalErrorException} (server fault) + *

This exception is thrown when Amazon Cognito encounters an internal error.

+ * + * @throws {@link InvalidParameterException} (client fault) + *

This exception is thrown when the Amazon Cognito service encounters an invalid + * parameter.

+ * + * @throws {@link NotAuthorizedException} (client fault) + *

This exception is thrown when a user isn't authorized.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

This exception is thrown when the Amazon Cognito service can't find the requested + * resource.

+ * + * @throws {@link TooManyRequestsException} (client fault) + *

This exception is thrown when the user has made too many requests for a given + * operation.

+ * + * @throws {@link CognitoIdentityProviderServiceException} + *

Base exception class for all service exceptions from CognitoIdentityProvider service.

+ * + * @public + */ +export class DescribeManagedLoginBrandingCommand extends $Command + .classBuilder< + DescribeManagedLoginBrandingCommandInput, + DescribeManagedLoginBrandingCommandOutput, + CognitoIdentityProviderClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: CognitoIdentityProviderClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AWSCognitoIdentityProviderService", "DescribeManagedLoginBranding", {}) + .n("CognitoIdentityProviderClient", "DescribeManagedLoginBrandingCommand") + .f(void 0, void 0) + .ser(se_DescribeManagedLoginBrandingCommand) + .de(de_DescribeManagedLoginBrandingCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: DescribeManagedLoginBrandingRequest; + output: DescribeManagedLoginBrandingResponse; + }; + sdk: { + input: DescribeManagedLoginBrandingCommandInput; + output: DescribeManagedLoginBrandingCommandOutput; + }; + }; +} diff --git a/clients/client-cognito-identity-provider/src/commands/DescribeUserPoolClientCommand.ts b/clients/client-cognito-identity-provider/src/commands/DescribeUserPoolClientCommand.ts index b68bdb4530b7..fa8966c152c8 100644 --- a/clients/client-cognito-identity-provider/src/commands/DescribeUserPoolClientCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/DescribeUserPoolClientCommand.ts @@ -94,7 +94,7 @@ export interface DescribeUserPoolClientCommandOutput extends DescribeUserPoolCli * // "STRING_VALUE", * // ], * // ExplicitAuthFlows: [ // ExplicitAuthFlowsListType - * // "ADMIN_NO_SRP_AUTH" || "CUSTOM_AUTH_FLOW_ONLY" || "USER_PASSWORD_AUTH" || "ALLOW_ADMIN_USER_PASSWORD_AUTH" || "ALLOW_CUSTOM_AUTH" || "ALLOW_USER_PASSWORD_AUTH" || "ALLOW_USER_SRP_AUTH" || "ALLOW_REFRESH_TOKEN_AUTH", + * // "ADMIN_NO_SRP_AUTH" || "CUSTOM_AUTH_FLOW_ONLY" || "USER_PASSWORD_AUTH" || "ALLOW_ADMIN_USER_PASSWORD_AUTH" || "ALLOW_CUSTOM_AUTH" || "ALLOW_USER_PASSWORD_AUTH" || "ALLOW_USER_SRP_AUTH" || "ALLOW_REFRESH_TOKEN_AUTH" || "ALLOW_USER_AUTH", * // ], * // SupportedIdentityProviders: [ // SupportedIdentityProvidersListType * // "STRING_VALUE", diff --git a/clients/client-cognito-identity-provider/src/commands/DescribeUserPoolCommand.ts b/clients/client-cognito-identity-provider/src/commands/DescribeUserPoolCommand.ts index b9ff553e5f2d..b3b5b7378a13 100644 --- a/clients/client-cognito-identity-provider/src/commands/DescribeUserPoolCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/DescribeUserPoolCommand.ts @@ -78,6 +78,11 @@ export interface DescribeUserPoolCommandOutput extends DescribeUserPoolResponse, * // PasswordHistorySize: Number("int"), * // TemporaryPasswordValidityDays: Number("int"), * // }, + * // SignInPolicy: { // SignInPolicyType + * // AllowedFirstAuthFactors: [ // AllowedFirstAuthFactorsListType + * // "PASSWORD" || "EMAIL_OTP" || "SMS_OTP" || "WEB_AUTHN", + * // ], + * // }, * // }, * // DeletionProtection: "ACTIVE" || "INACTIVE", * // LambdaConfig: { // LambdaConfigType @@ -203,6 +208,7 @@ export interface DescribeUserPoolCommandOutput extends DescribeUserPoolResponse, * // }, * // ], * // }, + * // UserPoolTier: "LITE" || "ESSENTIALS" || "PLUS", * // }, * // }; * diff --git a/clients/client-cognito-identity-provider/src/commands/DescribeUserPoolDomainCommand.ts b/clients/client-cognito-identity-provider/src/commands/DescribeUserPoolDomainCommand.ts index 993c4a4409fd..2d4fa1a3ae17 100644 --- a/clients/client-cognito-identity-provider/src/commands/DescribeUserPoolDomainCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/DescribeUserPoolDomainCommand.ts @@ -56,6 +56,7 @@ export interface DescribeUserPoolDomainCommandOutput extends DescribeUserPoolDom * // CustomDomainConfig: { // CustomDomainConfigType * // CertificateArn: "STRING_VALUE", // required * // }, + * // ManagedLoginVersion: Number("int"), * // }, * // }; * diff --git a/clients/client-cognito-identity-provider/src/commands/ForgotPasswordCommand.ts b/clients/client-cognito-identity-provider/src/commands/ForgotPasswordCommand.ts index be5e30841fa0..54f84918c1a4 100644 --- a/clients/client-cognito-identity-provider/src/commands/ForgotPasswordCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/ForgotPasswordCommand.ts @@ -62,7 +62,7 @@ export interface ForgotPasswordCommandOutput extends ForgotPasswordResponse, __M * Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must * receive SMS messages might not be able to sign up, activate their accounts, or sign * in.

- *

If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Servicesservice, + *

If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Services service, * Amazon Simple Notification Service might place your account in the SMS sandbox. In * sandbox * mode @@ -139,7 +139,7 @@ export interface ForgotPasswordCommandOutput extends ForgotPasswordResponse, __M * @throws {@link InvalidSmsRoleTrustRelationshipException} (client fault) *

This exception is thrown when the trust relationship is not valid for the role * provided for SMS configuration. This can happen if you don't trust - * cognito-idp.amazonaws.com or the external ID provided in the role does + * cognito-idp.amazonaws.com or the external ID provided in the role does * not match what is provided in the SMS configuration for the user pool.

* * @throws {@link LimitExceededException} (client fault) diff --git a/clients/client-cognito-identity-provider/src/commands/GetUserAttributeVerificationCodeCommand.ts b/clients/client-cognito-identity-provider/src/commands/GetUserAttributeVerificationCodeCommand.ts index acf352f458b1..91cb3270c9f1 100644 --- a/clients/client-cognito-identity-provider/src/commands/GetUserAttributeVerificationCodeCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/GetUserAttributeVerificationCodeCommand.ts @@ -59,7 +59,7 @@ export interface GetUserAttributeVerificationCodeCommandOutput * Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must * receive SMS messages might not be able to sign up, activate their accounts, or sign * in.

- *

If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Servicesservice, + *

If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Services service, * Amazon Simple Notification Service might place your account in the SMS sandbox. In * sandbox * mode @@ -128,7 +128,7 @@ export interface GetUserAttributeVerificationCodeCommandOutput * @throws {@link InvalidSmsRoleTrustRelationshipException} (client fault) *

This exception is thrown when the trust relationship is not valid for the role * provided for SMS configuration. This can happen if you don't trust - * cognito-idp.amazonaws.com or the external ID provided in the role does + * cognito-idp.amazonaws.com or the external ID provided in the role does * not match what is provided in the SMS configuration for the user pool.

* * @throws {@link LimitExceededException} (client fault) diff --git a/clients/client-cognito-identity-provider/src/commands/GetUserAuthFactorsCommand.ts b/clients/client-cognito-identity-provider/src/commands/GetUserAuthFactorsCommand.ts new file mode 100644 index 000000000000..8770abffead4 --- /dev/null +++ b/clients/client-cognito-identity-provider/src/commands/GetUserAuthFactorsCommand.ts @@ -0,0 +1,150 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { + CognitoIdentityProviderClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes, +} from "../CognitoIdentityProviderClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { + GetUserAuthFactorsRequest, + GetUserAuthFactorsRequestFilterSensitiveLog, + GetUserAuthFactorsResponse, + GetUserAuthFactorsResponseFilterSensitiveLog, +} from "../models/models_0"; +import { de_GetUserAuthFactorsCommand, se_GetUserAuthFactorsCommand } from "../protocols/Aws_json1_1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link GetUserAuthFactorsCommand}. + */ +export interface GetUserAuthFactorsCommandInput extends GetUserAuthFactorsRequest {} +/** + * @public + * + * The output of {@link GetUserAuthFactorsCommand}. + */ +export interface GetUserAuthFactorsCommandOutput extends GetUserAuthFactorsResponse, __MetadataBearer {} + +/** + *

Lists the authentication options for the currently signed-in user. Returns the + * following:

+ *
    + *
  1. + *

    The user's multi-factor authentication (MFA) preferences.

    + *
  2. + *
  3. + *

    The user's options in the USER_AUTH flow that they can + * select in a SELECT_CHALLENGE response or request in a + * PREFERRED_CHALLENGErequest.

    + *
  4. + *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { CognitoIdentityProviderClient, GetUserAuthFactorsCommand } from "@aws-sdk/client-cognito-identity-provider"; // ES Modules import + * // const { CognitoIdentityProviderClient, GetUserAuthFactorsCommand } = require("@aws-sdk/client-cognito-identity-provider"); // CommonJS import + * const client = new CognitoIdentityProviderClient(config); + * const input = { // GetUserAuthFactorsRequest + * AccessToken: "STRING_VALUE", // required + * }; + * const command = new GetUserAuthFactorsCommand(input); + * const response = await client.send(command); + * // { // GetUserAuthFactorsResponse + * // Username: "STRING_VALUE", // required + * // PreferredMfaSetting: "STRING_VALUE", + * // UserMFASettingList: [ // UserMFASettingListType + * // "STRING_VALUE", + * // ], + * // ConfiguredUserAuthFactors: [ // ConfiguredUserAuthFactorsListType + * // "PASSWORD" || "EMAIL_OTP" || "SMS_OTP" || "WEB_AUTHN", + * // ], + * // }; + * + * ``` + * + * @param GetUserAuthFactorsCommandInput - {@link GetUserAuthFactorsCommandInput} + * @returns {@link GetUserAuthFactorsCommandOutput} + * @see {@link GetUserAuthFactorsCommandInput} for command's `input` shape. + * @see {@link GetUserAuthFactorsCommandOutput} for command's `response` shape. + * @see {@link CognitoIdentityProviderClientResolvedConfig | config} for CognitoIdentityProviderClient's `config` shape. + * + * @throws {@link ForbiddenException} (client fault) + *

This exception is thrown when WAF doesn't allow your request based on a web + * ACL that's associated with your user pool.

+ * + * @throws {@link InternalErrorException} (server fault) + *

This exception is thrown when Amazon Cognito encounters an internal error.

+ * + * @throws {@link InvalidParameterException} (client fault) + *

This exception is thrown when the Amazon Cognito service encounters an invalid + * parameter.

+ * + * @throws {@link NotAuthorizedException} (client fault) + *

This exception is thrown when a user isn't authorized.

+ * + * @throws {@link PasswordResetRequiredException} (client fault) + *

This exception is thrown when a password reset is required.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

This exception is thrown when the Amazon Cognito service can't find the requested + * resource.

+ * + * @throws {@link TooManyRequestsException} (client fault) + *

This exception is thrown when the user has made too many requests for a given + * operation.

+ * + * @throws {@link UserNotConfirmedException} (client fault) + *

This exception is thrown when a user isn't confirmed successfully.

+ * + * @throws {@link UserNotFoundException} (client fault) + *

This exception is thrown when a user isn't found.

+ * + * @throws {@link CognitoIdentityProviderServiceException} + *

Base exception class for all service exceptions from CognitoIdentityProvider service.

+ * + * @public + */ +export class GetUserAuthFactorsCommand extends $Command + .classBuilder< + GetUserAuthFactorsCommandInput, + GetUserAuthFactorsCommandOutput, + CognitoIdentityProviderClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: CognitoIdentityProviderClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AWSCognitoIdentityProviderService", "GetUserAuthFactors", {}) + .n("CognitoIdentityProviderClient", "GetUserAuthFactorsCommand") + .f(GetUserAuthFactorsRequestFilterSensitiveLog, GetUserAuthFactorsResponseFilterSensitiveLog) + .ser(se_GetUserAuthFactorsCommand) + .de(de_GetUserAuthFactorsCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: GetUserAuthFactorsRequest; + output: GetUserAuthFactorsResponse; + }; + sdk: { + input: GetUserAuthFactorsCommandInput; + output: GetUserAuthFactorsCommandOutput; + }; + }; +} diff --git a/clients/client-cognito-identity-provider/src/commands/GetUserPoolMfaConfigCommand.ts b/clients/client-cognito-identity-provider/src/commands/GetUserPoolMfaConfigCommand.ts index 9f944e455c39..f409045e13be 100644 --- a/clients/client-cognito-identity-provider/src/commands/GetUserPoolMfaConfigCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/GetUserPoolMfaConfigCommand.ts @@ -10,7 +10,8 @@ import { ServiceOutputTypes, } from "../CognitoIdentityProviderClient"; import { commonParams } from "../endpoint/EndpointParameters"; -import { GetUserPoolMfaConfigRequest, GetUserPoolMfaConfigResponse } from "../models/models_0"; +import { GetUserPoolMfaConfigRequest } from "../models/models_0"; +import { GetUserPoolMfaConfigResponse } from "../models/models_1"; import { de_GetUserPoolMfaConfigCommand, se_GetUserPoolMfaConfigCommand } from "../protocols/Aws_json1_1"; /** @@ -61,6 +62,10 @@ export interface GetUserPoolMfaConfigCommandOutput extends GetUserPoolMfaConfigR * // Subject: "STRING_VALUE", * // }, * // MfaConfiguration: "OFF" || "ON" || "OPTIONAL", + * // WebAuthnConfiguration: { // WebAuthnConfigurationType + * // RelyingPartyId: "STRING_VALUE", + * // UserVerification: "required" || "preferred", + * // }, * // }; * * ``` diff --git a/clients/client-cognito-identity-provider/src/commands/GlobalSignOutCommand.ts b/clients/client-cognito-identity-provider/src/commands/GlobalSignOutCommand.ts index 8d31f1c1b12e..42a0d6238067 100644 --- a/clients/client-cognito-identity-provider/src/commands/GlobalSignOutCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/GlobalSignOutCommand.ts @@ -14,7 +14,7 @@ import { GlobalSignOutRequest, GlobalSignOutRequestFilterSensitiveLog, GlobalSignOutResponse, -} from "../models/models_0"; +} from "../models/models_1"; import { de_GlobalSignOutCommand, se_GlobalSignOutCommand } from "../protocols/Aws_json1_1"; /** diff --git a/clients/client-cognito-identity-provider/src/commands/InitiateAuthCommand.ts b/clients/client-cognito-identity-provider/src/commands/InitiateAuthCommand.ts index 99e39ffc6321..667e3ba19a67 100644 --- a/clients/client-cognito-identity-provider/src/commands/InitiateAuthCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/InitiateAuthCommand.ts @@ -15,7 +15,7 @@ import { InitiateAuthRequestFilterSensitiveLog, InitiateAuthResponse, InitiateAuthResponseFilterSensitiveLog, -} from "../models/models_0"; +} from "../models/models_1"; import { de_InitiateAuthCommand, se_InitiateAuthCommand } from "../protocols/Aws_json1_1"; /** @@ -53,7 +53,7 @@ export interface InitiateAuthCommandOutput extends InitiateAuthResponse, __Metad * Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must * receive SMS messages might not be able to sign up, activate their accounts, or sign * in.

- *

If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Servicesservice, + *

If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Services service, * Amazon Simple Notification Service might place your account in the SMS sandbox. In * sandbox * mode @@ -69,7 +69,7 @@ export interface InitiateAuthCommandOutput extends InitiateAuthResponse, __Metad * // const { CognitoIdentityProviderClient, InitiateAuthCommand } = require("@aws-sdk/client-cognito-identity-provider"); // CommonJS import * const client = new CognitoIdentityProviderClient(config); * const input = { // InitiateAuthRequest - * AuthFlow: "USER_SRP_AUTH" || "REFRESH_TOKEN_AUTH" || "REFRESH_TOKEN" || "CUSTOM_AUTH" || "ADMIN_NO_SRP_AUTH" || "USER_PASSWORD_AUTH" || "ADMIN_USER_PASSWORD_AUTH", // required + * AuthFlow: "USER_SRP_AUTH" || "REFRESH_TOKEN_AUTH" || "REFRESH_TOKEN" || "CUSTOM_AUTH" || "ADMIN_NO_SRP_AUTH" || "USER_PASSWORD_AUTH" || "ADMIN_USER_PASSWORD_AUTH" || "USER_AUTH", // required * AuthParameters: { // AuthParametersType * "": "STRING_VALUE", * }, @@ -84,11 +84,12 @@ export interface InitiateAuthCommandOutput extends InitiateAuthResponse, __Metad * IpAddress: "STRING_VALUE", * EncodedData: "STRING_VALUE", * }, + * Session: "STRING_VALUE", * }; * const command = new InitiateAuthCommand(input); * const response = await client.send(command); * // { // InitiateAuthResponse - * // ChallengeName: "SMS_MFA" || "EMAIL_OTP" || "SOFTWARE_TOKEN_MFA" || "SELECT_MFA_TYPE" || "MFA_SETUP" || "PASSWORD_VERIFIER" || "CUSTOM_CHALLENGE" || "DEVICE_SRP_AUTH" || "DEVICE_PASSWORD_VERIFIER" || "ADMIN_NO_SRP_AUTH" || "NEW_PASSWORD_REQUIRED", + * // ChallengeName: "SMS_MFA" || "EMAIL_OTP" || "SOFTWARE_TOKEN_MFA" || "SELECT_MFA_TYPE" || "MFA_SETUP" || "PASSWORD_VERIFIER" || "CUSTOM_CHALLENGE" || "SELECT_CHALLENGE" || "DEVICE_SRP_AUTH" || "DEVICE_PASSWORD_VERIFIER" || "ADMIN_NO_SRP_AUTH" || "NEW_PASSWORD_REQUIRED" || "SMS_OTP" || "PASSWORD" || "WEB_AUTHN" || "PASSWORD_SRP", * // Session: "STRING_VALUE", * // ChallengeParameters: { // ChallengeParametersType * // "": "STRING_VALUE", @@ -104,6 +105,9 @@ export interface InitiateAuthCommandOutput extends InitiateAuthResponse, __Metad * // DeviceGroupKey: "STRING_VALUE", * // }, * // }, + * // AvailableChallenges: [ // AvailableChallengeListType + * // "SMS_MFA" || "EMAIL_OTP" || "SOFTWARE_TOKEN_MFA" || "SELECT_MFA_TYPE" || "MFA_SETUP" || "PASSWORD_VERIFIER" || "CUSTOM_CHALLENGE" || "SELECT_CHALLENGE" || "DEVICE_SRP_AUTH" || "DEVICE_PASSWORD_VERIFIER" || "ADMIN_NO_SRP_AUTH" || "NEW_PASSWORD_REQUIRED" || "SMS_OTP" || "PASSWORD" || "WEB_AUTHN" || "PASSWORD_SRP", + * // ], * // }; * * ``` @@ -139,7 +143,7 @@ export interface InitiateAuthCommandOutput extends InitiateAuthResponse, __Metad * @throws {@link InvalidSmsRoleTrustRelationshipException} (client fault) *

This exception is thrown when the trust relationship is not valid for the role * provided for SMS configuration. This can happen if you don't trust - * cognito-idp.amazonaws.com or the external ID provided in the role does + * cognito-idp.amazonaws.com or the external ID provided in the role does * not match what is provided in the SMS configuration for the user pool.

* * @throws {@link InvalidUserPoolConfigurationException} (client fault) diff --git a/clients/client-cognito-identity-provider/src/commands/ListDevicesCommand.ts b/clients/client-cognito-identity-provider/src/commands/ListDevicesCommand.ts index fc2e49bfda02..4a241d35cb0f 100644 --- a/clients/client-cognito-identity-provider/src/commands/ListDevicesCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/ListDevicesCommand.ts @@ -15,7 +15,7 @@ import { ListDevicesRequestFilterSensitiveLog, ListDevicesResponse, ListDevicesResponseFilterSensitiveLog, -} from "../models/models_0"; +} from "../models/models_1"; import { de_ListDevicesCommand, se_ListDevicesCommand } from "../protocols/Aws_json1_1"; /** diff --git a/clients/client-cognito-identity-provider/src/commands/ListGroupsCommand.ts b/clients/client-cognito-identity-provider/src/commands/ListGroupsCommand.ts index cddcf95c6faa..b26d8fbe1631 100644 --- a/clients/client-cognito-identity-provider/src/commands/ListGroupsCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/ListGroupsCommand.ts @@ -10,7 +10,7 @@ import { ServiceOutputTypes, } from "../CognitoIdentityProviderClient"; import { commonParams } from "../endpoint/EndpointParameters"; -import { ListGroupsRequest, ListGroupsResponse } from "../models/models_0"; +import { ListGroupsRequest, ListGroupsResponse } from "../models/models_1"; import { de_ListGroupsCommand, se_ListGroupsCommand } from "../protocols/Aws_json1_1"; /** diff --git a/clients/client-cognito-identity-provider/src/commands/ListIdentityProvidersCommand.ts b/clients/client-cognito-identity-provider/src/commands/ListIdentityProvidersCommand.ts index 041a2f468ac8..e286d582b6f1 100644 --- a/clients/client-cognito-identity-provider/src/commands/ListIdentityProvidersCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/ListIdentityProvidersCommand.ts @@ -10,7 +10,7 @@ import { ServiceOutputTypes, } from "../CognitoIdentityProviderClient"; import { commonParams } from "../endpoint/EndpointParameters"; -import { ListIdentityProvidersRequest, ListIdentityProvidersResponse } from "../models/models_0"; +import { ListIdentityProvidersRequest, ListIdentityProvidersResponse } from "../models/models_1"; import { de_ListIdentityProvidersCommand, se_ListIdentityProvidersCommand } from "../protocols/Aws_json1_1"; /** diff --git a/clients/client-cognito-identity-provider/src/commands/ListResourceServersCommand.ts b/clients/client-cognito-identity-provider/src/commands/ListResourceServersCommand.ts index f4c2d2029e27..8c789cf804fb 100644 --- a/clients/client-cognito-identity-provider/src/commands/ListResourceServersCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/ListResourceServersCommand.ts @@ -10,7 +10,7 @@ import { ServiceOutputTypes, } from "../CognitoIdentityProviderClient"; import { commonParams } from "../endpoint/EndpointParameters"; -import { ListResourceServersRequest, ListResourceServersResponse } from "../models/models_0"; +import { ListResourceServersRequest, ListResourceServersResponse } from "../models/models_1"; import { de_ListResourceServersCommand, se_ListResourceServersCommand } from "../protocols/Aws_json1_1"; /** diff --git a/clients/client-cognito-identity-provider/src/commands/ListTagsForResourceCommand.ts b/clients/client-cognito-identity-provider/src/commands/ListTagsForResourceCommand.ts index 17f6bcafd5db..e6e9bb2305db 100644 --- a/clients/client-cognito-identity-provider/src/commands/ListTagsForResourceCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/ListTagsForResourceCommand.ts @@ -10,7 +10,7 @@ import { ServiceOutputTypes, } from "../CognitoIdentityProviderClient"; import { commonParams } from "../endpoint/EndpointParameters"; -import { ListTagsForResourceRequest, ListTagsForResourceResponse } from "../models/models_0"; +import { ListTagsForResourceRequest, ListTagsForResourceResponse } from "../models/models_1"; import { de_ListTagsForResourceCommand, se_ListTagsForResourceCommand } from "../protocols/Aws_json1_1"; /** diff --git a/clients/client-cognito-identity-provider/src/commands/ListUserImportJobsCommand.ts b/clients/client-cognito-identity-provider/src/commands/ListUserImportJobsCommand.ts index add38d4e8568..4ecf06af5b98 100644 --- a/clients/client-cognito-identity-provider/src/commands/ListUserImportJobsCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/ListUserImportJobsCommand.ts @@ -10,7 +10,7 @@ import { ServiceOutputTypes, } from "../CognitoIdentityProviderClient"; import { commonParams } from "../endpoint/EndpointParameters"; -import { ListUserImportJobsRequest, ListUserImportJobsResponse } from "../models/models_0"; +import { ListUserImportJobsRequest, ListUserImportJobsResponse } from "../models/models_1"; import { de_ListUserImportJobsCommand, se_ListUserImportJobsCommand } from "../protocols/Aws_json1_1"; /** diff --git a/clients/client-cognito-identity-provider/src/commands/ListUserPoolClientsCommand.ts b/clients/client-cognito-identity-provider/src/commands/ListUserPoolClientsCommand.ts index a8f74e22e155..f4bb2a857bc4 100644 --- a/clients/client-cognito-identity-provider/src/commands/ListUserPoolClientsCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/ListUserPoolClientsCommand.ts @@ -14,7 +14,7 @@ import { ListUserPoolClientsRequest, ListUserPoolClientsResponse, ListUserPoolClientsResponseFilterSensitiveLog, -} from "../models/models_0"; +} from "../models/models_1"; import { de_ListUserPoolClientsCommand, se_ListUserPoolClientsCommand } from "../protocols/Aws_json1_1"; /** diff --git a/clients/client-cognito-identity-provider/src/commands/ListUserPoolsCommand.ts b/clients/client-cognito-identity-provider/src/commands/ListUserPoolsCommand.ts index d4d10d93581a..ff4d6c515f4e 100644 --- a/clients/client-cognito-identity-provider/src/commands/ListUserPoolsCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/ListUserPoolsCommand.ts @@ -10,7 +10,7 @@ import { ServiceOutputTypes, } from "../CognitoIdentityProviderClient"; import { commonParams } from "../endpoint/EndpointParameters"; -import { ListUserPoolsRequest, ListUserPoolsResponse } from "../models/models_0"; +import { ListUserPoolsRequest, ListUserPoolsResponse } from "../models/models_1"; import { de_ListUserPoolsCommand, se_ListUserPoolsCommand } from "../protocols/Aws_json1_1"; /** diff --git a/clients/client-cognito-identity-provider/src/commands/ListUsersCommand.ts b/clients/client-cognito-identity-provider/src/commands/ListUsersCommand.ts index 103abba18d71..24a8b5c02864 100644 --- a/clients/client-cognito-identity-provider/src/commands/ListUsersCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/ListUsersCommand.ts @@ -10,7 +10,7 @@ import { ServiceOutputTypes, } from "../CognitoIdentityProviderClient"; import { commonParams } from "../endpoint/EndpointParameters"; -import { ListUsersRequest, ListUsersResponse, ListUsersResponseFilterSensitiveLog } from "../models/models_0"; +import { ListUsersRequest, ListUsersResponse, ListUsersResponseFilterSensitiveLog } from "../models/models_1"; import { de_ListUsersCommand, se_ListUsersCommand } from "../protocols/Aws_json1_1"; /** diff --git a/clients/client-cognito-identity-provider/src/commands/ListUsersInGroupCommand.ts b/clients/client-cognito-identity-provider/src/commands/ListUsersInGroupCommand.ts index f5b9415a2f3a..8ebce7420211 100644 --- a/clients/client-cognito-identity-provider/src/commands/ListUsersInGroupCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/ListUsersInGroupCommand.ts @@ -14,7 +14,7 @@ import { ListUsersInGroupRequest, ListUsersInGroupResponse, ListUsersInGroupResponseFilterSensitiveLog, -} from "../models/models_0"; +} from "../models/models_1"; import { de_ListUsersInGroupCommand, se_ListUsersInGroupCommand } from "../protocols/Aws_json1_1"; /** diff --git a/clients/client-cognito-identity-provider/src/commands/ListWebAuthnCredentialsCommand.ts b/clients/client-cognito-identity-provider/src/commands/ListWebAuthnCredentialsCommand.ts new file mode 100644 index 000000000000..c3458e496d50 --- /dev/null +++ b/clients/client-cognito-identity-provider/src/commands/ListWebAuthnCredentialsCommand.ts @@ -0,0 +1,129 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { + CognitoIdentityProviderClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes, +} from "../CognitoIdentityProviderClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { + ListWebAuthnCredentialsRequest, + ListWebAuthnCredentialsRequestFilterSensitiveLog, + ListWebAuthnCredentialsResponse, +} from "../models/models_1"; +import { de_ListWebAuthnCredentialsCommand, se_ListWebAuthnCredentialsCommand } from "../protocols/Aws_json1_1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link ListWebAuthnCredentialsCommand}. + */ +export interface ListWebAuthnCredentialsCommandInput extends ListWebAuthnCredentialsRequest {} +/** + * @public + * + * The output of {@link ListWebAuthnCredentialsCommand}. + */ +export interface ListWebAuthnCredentialsCommandOutput extends ListWebAuthnCredentialsResponse, __MetadataBearer {} + +/** + *

Generates a list of the current user's registered passkey, or webauthN, + * credentials.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { CognitoIdentityProviderClient, ListWebAuthnCredentialsCommand } from "@aws-sdk/client-cognito-identity-provider"; // ES Modules import + * // const { CognitoIdentityProviderClient, ListWebAuthnCredentialsCommand } = require("@aws-sdk/client-cognito-identity-provider"); // CommonJS import + * const client = new CognitoIdentityProviderClient(config); + * const input = { // ListWebAuthnCredentialsRequest + * AccessToken: "STRING_VALUE", // required + * NextToken: "STRING_VALUE", + * MaxResults: Number("int"), + * }; + * const command = new ListWebAuthnCredentialsCommand(input); + * const response = await client.send(command); + * // { // ListWebAuthnCredentialsResponse + * // Credentials: [ // WebAuthnCredentialDescriptionListType // required + * // { // WebAuthnCredentialDescription + * // CredentialId: "STRING_VALUE", // required + * // FriendlyCredentialName: "STRING_VALUE", // required + * // RelyingPartyId: "STRING_VALUE", // required + * // AuthenticatorAttachment: "STRING_VALUE", + * // AuthenticatorTransports: [ // WebAuthnAuthenticatorTransportsList // required + * // "STRING_VALUE", + * // ], + * // CreatedAt: new Date("TIMESTAMP"), // required + * // }, + * // ], + * // NextToken: "STRING_VALUE", + * // }; + * + * ``` + * + * @param ListWebAuthnCredentialsCommandInput - {@link ListWebAuthnCredentialsCommandInput} + * @returns {@link ListWebAuthnCredentialsCommandOutput} + * @see {@link ListWebAuthnCredentialsCommandInput} for command's `input` shape. + * @see {@link ListWebAuthnCredentialsCommandOutput} for command's `response` shape. + * @see {@link CognitoIdentityProviderClientResolvedConfig | config} for CognitoIdentityProviderClient's `config` shape. + * + * @throws {@link ForbiddenException} (client fault) + *

This exception is thrown when WAF doesn't allow your request based on a web + * ACL that's associated with your user pool.

+ * + * @throws {@link InternalErrorException} (server fault) + *

This exception is thrown when Amazon Cognito encounters an internal error.

+ * + * @throws {@link InvalidParameterException} (client fault) + *

This exception is thrown when the Amazon Cognito service encounters an invalid + * parameter.

+ * + * @throws {@link NotAuthorizedException} (client fault) + *

This exception is thrown when a user isn't authorized.

+ * + * @throws {@link CognitoIdentityProviderServiceException} + *

Base exception class for all service exceptions from CognitoIdentityProvider service.

+ * + * @public + */ +export class ListWebAuthnCredentialsCommand extends $Command + .classBuilder< + ListWebAuthnCredentialsCommandInput, + ListWebAuthnCredentialsCommandOutput, + CognitoIdentityProviderClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: CognitoIdentityProviderClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AWSCognitoIdentityProviderService", "ListWebAuthnCredentials", {}) + .n("CognitoIdentityProviderClient", "ListWebAuthnCredentialsCommand") + .f(ListWebAuthnCredentialsRequestFilterSensitiveLog, void 0) + .ser(se_ListWebAuthnCredentialsCommand) + .de(de_ListWebAuthnCredentialsCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: ListWebAuthnCredentialsRequest; + output: ListWebAuthnCredentialsResponse; + }; + sdk: { + input: ListWebAuthnCredentialsCommandInput; + output: ListWebAuthnCredentialsCommandOutput; + }; + }; +} diff --git a/clients/client-cognito-identity-provider/src/commands/ResendConfirmationCodeCommand.ts b/clients/client-cognito-identity-provider/src/commands/ResendConfirmationCodeCommand.ts index 8879356dcf41..5d6e0d013f24 100644 --- a/clients/client-cognito-identity-provider/src/commands/ResendConfirmationCodeCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/ResendConfirmationCodeCommand.ts @@ -14,7 +14,7 @@ import { ResendConfirmationCodeRequest, ResendConfirmationCodeRequestFilterSensitiveLog, ResendConfirmationCodeResponse, -} from "../models/models_0"; +} from "../models/models_1"; import { de_ResendConfirmationCodeCommand, se_ResendConfirmationCodeCommand } from "../protocols/Aws_json1_1"; /** @@ -52,7 +52,7 @@ export interface ResendConfirmationCodeCommandOutput extends ResendConfirmationC * Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must * receive SMS messages might not be able to sign up, activate their accounts, or sign * in.

- *

If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Servicesservice, + *

If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Services service, * Amazon Simple Notification Service might place your account in the SMS sandbox. In * sandbox * mode @@ -129,7 +129,7 @@ export interface ResendConfirmationCodeCommandOutput extends ResendConfirmationC * @throws {@link InvalidSmsRoleTrustRelationshipException} (client fault) *

This exception is thrown when the trust relationship is not valid for the role * provided for SMS configuration. This can happen if you don't trust - * cognito-idp.amazonaws.com or the external ID provided in the role does + * cognito-idp.amazonaws.com or the external ID provided in the role does * not match what is provided in the SMS configuration for the user pool.

* * @throws {@link LimitExceededException} (client fault) diff --git a/clients/client-cognito-identity-provider/src/commands/RespondToAuthChallengeCommand.ts b/clients/client-cognito-identity-provider/src/commands/RespondToAuthChallengeCommand.ts index a20e2e65cfa2..bea71336555c 100644 --- a/clients/client-cognito-identity-provider/src/commands/RespondToAuthChallengeCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/RespondToAuthChallengeCommand.ts @@ -10,8 +10,12 @@ import { ServiceOutputTypes, } from "../CognitoIdentityProviderClient"; import { commonParams } from "../endpoint/EndpointParameters"; -import { RespondToAuthChallengeRequest, RespondToAuthChallengeRequestFilterSensitiveLog } from "../models/models_0"; -import { RespondToAuthChallengeResponse, RespondToAuthChallengeResponseFilterSensitiveLog } from "../models/models_1"; +import { + RespondToAuthChallengeRequest, + RespondToAuthChallengeRequestFilterSensitiveLog, + RespondToAuthChallengeResponse, + RespondToAuthChallengeResponseFilterSensitiveLog, +} from "../models/models_1"; import { de_RespondToAuthChallengeCommand, se_RespondToAuthChallengeCommand } from "../protocols/Aws_json1_1"; /** @@ -54,7 +58,7 @@ export interface RespondToAuthChallengeCommandOutput extends RespondToAuthChalle * Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must * receive SMS messages might not be able to sign up, activate their accounts, or sign * in.

- *

If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Servicesservice, + *

If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Services service, * Amazon Simple Notification Service might place your account in the SMS sandbox. In * sandbox * mode @@ -71,7 +75,7 @@ export interface RespondToAuthChallengeCommandOutput extends RespondToAuthChalle * const client = new CognitoIdentityProviderClient(config); * const input = { // RespondToAuthChallengeRequest * ClientId: "STRING_VALUE", // required - * ChallengeName: "SMS_MFA" || "EMAIL_OTP" || "SOFTWARE_TOKEN_MFA" || "SELECT_MFA_TYPE" || "MFA_SETUP" || "PASSWORD_VERIFIER" || "CUSTOM_CHALLENGE" || "DEVICE_SRP_AUTH" || "DEVICE_PASSWORD_VERIFIER" || "ADMIN_NO_SRP_AUTH" || "NEW_PASSWORD_REQUIRED", // required + * ChallengeName: "SMS_MFA" || "EMAIL_OTP" || "SOFTWARE_TOKEN_MFA" || "SELECT_MFA_TYPE" || "MFA_SETUP" || "PASSWORD_VERIFIER" || "CUSTOM_CHALLENGE" || "SELECT_CHALLENGE" || "DEVICE_SRP_AUTH" || "DEVICE_PASSWORD_VERIFIER" || "ADMIN_NO_SRP_AUTH" || "NEW_PASSWORD_REQUIRED" || "SMS_OTP" || "PASSWORD" || "WEB_AUTHN" || "PASSWORD_SRP", // required * Session: "STRING_VALUE", * ChallengeResponses: { // ChallengeResponsesType * "": "STRING_VALUE", @@ -90,7 +94,7 @@ export interface RespondToAuthChallengeCommandOutput extends RespondToAuthChalle * const command = new RespondToAuthChallengeCommand(input); * const response = await client.send(command); * // { // RespondToAuthChallengeResponse - * // ChallengeName: "SMS_MFA" || "EMAIL_OTP" || "SOFTWARE_TOKEN_MFA" || "SELECT_MFA_TYPE" || "MFA_SETUP" || "PASSWORD_VERIFIER" || "CUSTOM_CHALLENGE" || "DEVICE_SRP_AUTH" || "DEVICE_PASSWORD_VERIFIER" || "ADMIN_NO_SRP_AUTH" || "NEW_PASSWORD_REQUIRED", + * // ChallengeName: "SMS_MFA" || "EMAIL_OTP" || "SOFTWARE_TOKEN_MFA" || "SELECT_MFA_TYPE" || "MFA_SETUP" || "PASSWORD_VERIFIER" || "CUSTOM_CHALLENGE" || "SELECT_CHALLENGE" || "DEVICE_SRP_AUTH" || "DEVICE_PASSWORD_VERIFIER" || "ADMIN_NO_SRP_AUTH" || "NEW_PASSWORD_REQUIRED" || "SMS_OTP" || "PASSWORD" || "WEB_AUTHN" || "PASSWORD_SRP", * // Session: "STRING_VALUE", * // ChallengeParameters: { // ChallengeParametersType * // "": "STRING_VALUE", @@ -158,7 +162,7 @@ export interface RespondToAuthChallengeCommandOutput extends RespondToAuthChalle * @throws {@link InvalidSmsRoleTrustRelationshipException} (client fault) *

This exception is thrown when the trust relationship is not valid for the role * provided for SMS configuration. This can happen if you don't trust - * cognito-idp.amazonaws.com or the external ID provided in the role does + * cognito-idp.amazonaws.com or the external ID provided in the role does * not match what is provided in the SMS configuration for the user pool.

* * @throws {@link InvalidUserPoolConfigurationException} (client fault) diff --git a/clients/client-cognito-identity-provider/src/commands/SetLogDeliveryConfigurationCommand.ts b/clients/client-cognito-identity-provider/src/commands/SetLogDeliveryConfigurationCommand.ts index c2a585397e13..40f6d9d4e245 100644 --- a/clients/client-cognito-identity-provider/src/commands/SetLogDeliveryConfigurationCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/SetLogDeliveryConfigurationCommand.ts @@ -91,6 +91,10 @@ export interface SetLogDeliveryConfigurationCommandOutput * @see {@link SetLogDeliveryConfigurationCommandOutput} for command's `response` shape. * @see {@link CognitoIdentityProviderClientResolvedConfig | config} for CognitoIdentityProviderClient's `config` shape. * + * @throws {@link FeatureUnavailableInTierException} (client fault) + *

This exception is thrown when a feature you attempted to configure isn't + * available in your current feature plan.

+ * * @throws {@link InternalErrorException} (server fault) *

This exception is thrown when Amazon Cognito encounters an internal error.

* diff --git a/clients/client-cognito-identity-provider/src/commands/SetUserPoolMfaConfigCommand.ts b/clients/client-cognito-identity-provider/src/commands/SetUserPoolMfaConfigCommand.ts index f63dab15dee1..2254a0304ff8 100644 --- a/clients/client-cognito-identity-provider/src/commands/SetUserPoolMfaConfigCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/SetUserPoolMfaConfigCommand.ts @@ -32,7 +32,7 @@ export interface SetUserPoolMfaConfigCommandInput extends SetUserPoolMfaConfigRe export interface SetUserPoolMfaConfigCommandOutput extends SetUserPoolMfaConfigResponse, __MetadataBearer {} /** - *

Sets the user pool multi-factor authentication (MFA) configuration.

+ *

Sets the user pool multi-factor authentication (MFA) and passkey configuration.

* *

This action might generate an SMS text message. Starting June 1, 2021, US telecom carriers * require you to register an origination phone number before you can send SMS messages @@ -41,7 +41,7 @@ export interface SetUserPoolMfaConfigCommandOutput extends SetUserPoolMfaConfigR * Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must * receive SMS messages might not be able to sign up, activate their accounts, or sign * in.

- *

If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Servicesservice, + *

If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Services service, * Amazon Simple Notification Service might place your account in the SMS sandbox. In * sandbox * mode @@ -74,6 +74,10 @@ export interface SetUserPoolMfaConfigCommandOutput extends SetUserPoolMfaConfigR * Subject: "STRING_VALUE", * }, * MfaConfiguration: "OFF" || "ON" || "OPTIONAL", + * WebAuthnConfiguration: { // WebAuthnConfigurationType + * RelyingPartyId: "STRING_VALUE", + * UserVerification: "required" || "preferred", + * }, * }; * const command = new SetUserPoolMfaConfigCommand(input); * const response = await client.send(command); @@ -94,6 +98,10 @@ export interface SetUserPoolMfaConfigCommandOutput extends SetUserPoolMfaConfigR * // Subject: "STRING_VALUE", * // }, * // MfaConfiguration: "OFF" || "ON" || "OPTIONAL", + * // WebAuthnConfiguration: { // WebAuthnConfigurationType + * // RelyingPartyId: "STRING_VALUE", + * // UserVerification: "required" || "preferred", + * // }, * // }; * * ``` @@ -108,6 +116,10 @@ export interface SetUserPoolMfaConfigCommandOutput extends SetUserPoolMfaConfigR *

This exception is thrown if two or more modifications are happening * concurrently.

* + * @throws {@link FeatureUnavailableInTierException} (client fault) + *

This exception is thrown when a feature you attempted to configure isn't + * available in your current feature plan.

+ * * @throws {@link InternalErrorException} (server fault) *

This exception is thrown when Amazon Cognito encounters an internal error.

* @@ -122,7 +134,7 @@ export interface SetUserPoolMfaConfigCommandOutput extends SetUserPoolMfaConfigR * @throws {@link InvalidSmsRoleTrustRelationshipException} (client fault) *

This exception is thrown when the trust relationship is not valid for the role * provided for SMS configuration. This can happen if you don't trust - * cognito-idp.amazonaws.com or the external ID provided in the role does + * cognito-idp.amazonaws.com or the external ID provided in the role does * not match what is provided in the SMS configuration for the user pool.

* * @throws {@link NotAuthorizedException} (client fault) diff --git a/clients/client-cognito-identity-provider/src/commands/SignUpCommand.ts b/clients/client-cognito-identity-provider/src/commands/SignUpCommand.ts index e528f4960bdb..b31ef0f7451d 100644 --- a/clients/client-cognito-identity-provider/src/commands/SignUpCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/SignUpCommand.ts @@ -10,7 +10,12 @@ import { ServiceOutputTypes, } from "../CognitoIdentityProviderClient"; import { commonParams } from "../endpoint/EndpointParameters"; -import { SignUpRequest, SignUpRequestFilterSensitiveLog, SignUpResponse } from "../models/models_1"; +import { + SignUpRequest, + SignUpRequestFilterSensitiveLog, + SignUpResponse, + SignUpResponseFilterSensitiveLog, +} from "../models/models_1"; import { de_SignUpCommand, se_SignUpCommand } from "../protocols/Aws_json1_1"; /** @@ -48,7 +53,7 @@ export interface SignUpCommandOutput extends SignUpResponse, __MetadataBearer {} * Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must * receive SMS messages might not be able to sign up, activate their accounts, or sign * in.

- *

If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Servicesservice, + *

If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Services service, * Amazon Simple Notification Service might place your account in the SMS sandbox. In * sandbox * mode @@ -57,6 +62,13 @@ export interface SignUpCommandOutput extends SignUpResponse, __MetadataBearer {} * of the sandbox and into production. For more information, see SMS message settings for Amazon Cognito user pools in the Amazon Cognito * Developer Guide.

*
+ *

You might receive a LimitExceeded exception in response to this request + * if you have exceeded a rate quota for email or SMS messages, and if your user pool + * automatically verifies email addresses or phone numbers. When you get this exception in + * the response, the user is successfully created and is in an UNCONFIRMED + * state. You can send a new code with the ResendConfirmationCode request, or confirm the user as an administrator + * with an + * AdminConfirmSignUp request.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript @@ -67,7 +79,7 @@ export interface SignUpCommandOutput extends SignUpResponse, __MetadataBearer {} * ClientId: "STRING_VALUE", // required * SecretHash: "STRING_VALUE", * Username: "STRING_VALUE", // required - * Password: "STRING_VALUE", // required + * Password: "STRING_VALUE", * UserAttributes: [ // AttributeListType * { // AttributeType * Name: "STRING_VALUE", // required @@ -101,6 +113,7 @@ export interface SignUpCommandOutput extends SignUpResponse, __MetadataBearer {} * // AttributeName: "STRING_VALUE", * // }, * // UserSub: "STRING_VALUE", // required + * // Session: "STRING_VALUE", * // }; * * ``` @@ -143,7 +156,7 @@ export interface SignUpCommandOutput extends SignUpResponse, __MetadataBearer {} * @throws {@link InvalidSmsRoleTrustRelationshipException} (client fault) *

This exception is thrown when the trust relationship is not valid for the role * provided for SMS configuration. This can happen if you don't trust - * cognito-idp.amazonaws.com or the external ID provided in the role does + * cognito-idp.amazonaws.com or the external ID provided in the role does * not match what is provided in the SMS configuration for the user pool.

* * @throws {@link LimitExceededException} (client fault) @@ -195,7 +208,7 @@ export class SignUpCommand extends $Command }) .s("AWSCognitoIdentityProviderService", "SignUp", {}) .n("CognitoIdentityProviderClient", "SignUpCommand") - .f(SignUpRequestFilterSensitiveLog, void 0) + .f(SignUpRequestFilterSensitiveLog, SignUpResponseFilterSensitiveLog) .ser(se_SignUpCommand) .de(de_SignUpCommand) .build() { diff --git a/clients/client-cognito-identity-provider/src/commands/StartWebAuthnRegistrationCommand.ts b/clients/client-cognito-identity-provider/src/commands/StartWebAuthnRegistrationCommand.ts new file mode 100644 index 000000000000..a97f2d6e0f46 --- /dev/null +++ b/clients/client-cognito-identity-provider/src/commands/StartWebAuthnRegistrationCommand.ts @@ -0,0 +1,136 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { + CognitoIdentityProviderClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes, +} from "../CognitoIdentityProviderClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { + StartWebAuthnRegistrationRequest, + StartWebAuthnRegistrationRequestFilterSensitiveLog, + StartWebAuthnRegistrationResponse, +} from "../models/models_1"; +import { de_StartWebAuthnRegistrationCommand, se_StartWebAuthnRegistrationCommand } from "../protocols/Aws_json1_1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link StartWebAuthnRegistrationCommand}. + */ +export interface StartWebAuthnRegistrationCommandInput extends StartWebAuthnRegistrationRequest {} +/** + * @public + * + * The output of {@link StartWebAuthnRegistrationCommand}. + */ +export interface StartWebAuthnRegistrationCommandOutput extends StartWebAuthnRegistrationResponse, __MetadataBearer {} + +/** + *

Requests credential creation options from your user pool for registration of a passkey + * authenticator. Returns information about the user pool, the user profile, and + * authentication requirements. Users must provide this information in their request to + * enroll your application with their passkey provider.

+ *

After users present this data and register with their passkey provider, return the + * response to your user pool in a CompleteWebAuthnRegistration API request.

+ *

Authorize this action with a signed-in user's access token. It must include the scope aws.cognito.signin.user.admin.

+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { CognitoIdentityProviderClient, StartWebAuthnRegistrationCommand } from "@aws-sdk/client-cognito-identity-provider"; // ES Modules import + * // const { CognitoIdentityProviderClient, StartWebAuthnRegistrationCommand } = require("@aws-sdk/client-cognito-identity-provider"); // CommonJS import + * const client = new CognitoIdentityProviderClient(config); + * const input = { // StartWebAuthnRegistrationRequest + * AccessToken: "STRING_VALUE", // required + * }; + * const command = new StartWebAuthnRegistrationCommand(input); + * const response = await client.send(command); + * // { // StartWebAuthnRegistrationResponse + * // CredentialCreationOptions: "DOCUMENT_VALUE", // required + * // }; + * + * ``` + * + * @param StartWebAuthnRegistrationCommandInput - {@link StartWebAuthnRegistrationCommandInput} + * @returns {@link StartWebAuthnRegistrationCommandOutput} + * @see {@link StartWebAuthnRegistrationCommandInput} for command's `input` shape. + * @see {@link StartWebAuthnRegistrationCommandOutput} for command's `response` shape. + * @see {@link CognitoIdentityProviderClientResolvedConfig | config} for CognitoIdentityProviderClient's `config` shape. + * + * @throws {@link ForbiddenException} (client fault) + *

This exception is thrown when WAF doesn't allow your request based on a web + * ACL that's associated with your user pool.

+ * + * @throws {@link InternalErrorException} (server fault) + *

This exception is thrown when Amazon Cognito encounters an internal error.

+ * + * @throws {@link InvalidParameterException} (client fault) + *

This exception is thrown when the Amazon Cognito service encounters an invalid + * parameter.

+ * + * @throws {@link LimitExceededException} (client fault) + *

This exception is thrown when a user exceeds the limit for a requested Amazon Web Services + * resource.

+ * + * @throws {@link NotAuthorizedException} (client fault) + *

This exception is thrown when a user isn't authorized.

+ * + * @throws {@link TooManyRequestsException} (client fault) + *

This exception is thrown when the user has made too many requests for a given + * operation.

+ * + * @throws {@link WebAuthnConfigurationMissingException} (client fault) + *

This exception is thrown when a user pool doesn't have a configured relying party + * id or a user pool domain.

+ * + * @throws {@link WebAuthnNotEnabledException} (client fault) + *

This exception is thrown when the passkey feature isn't enabled for the user + * pool.

+ * + * @throws {@link CognitoIdentityProviderServiceException} + *

Base exception class for all service exceptions from CognitoIdentityProvider service.

+ * + * @public + */ +export class StartWebAuthnRegistrationCommand extends $Command + .classBuilder< + StartWebAuthnRegistrationCommandInput, + StartWebAuthnRegistrationCommandOutput, + CognitoIdentityProviderClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: CognitoIdentityProviderClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AWSCognitoIdentityProviderService", "StartWebAuthnRegistration", {}) + .n("CognitoIdentityProviderClient", "StartWebAuthnRegistrationCommand") + .f(StartWebAuthnRegistrationRequestFilterSensitiveLog, void 0) + .ser(se_StartWebAuthnRegistrationCommand) + .de(de_StartWebAuthnRegistrationCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: StartWebAuthnRegistrationRequest; + output: StartWebAuthnRegistrationResponse; + }; + sdk: { + input: StartWebAuthnRegistrationCommandInput; + output: StartWebAuthnRegistrationCommandOutput; + }; + }; +} diff --git a/clients/client-cognito-identity-provider/src/commands/UpdateManagedLoginBrandingCommand.ts b/clients/client-cognito-identity-provider/src/commands/UpdateManagedLoginBrandingCommand.ts new file mode 100644 index 000000000000..3889bdaab388 --- /dev/null +++ b/clients/client-cognito-identity-provider/src/commands/UpdateManagedLoginBrandingCommand.ts @@ -0,0 +1,175 @@ +// smithy-typescript generated code +import { getEndpointPlugin } from "@smithy/middleware-endpoint"; +import { getSerdePlugin } from "@smithy/middleware-serde"; +import { Command as $Command } from "@smithy/smithy-client"; +import { MetadataBearer as __MetadataBearer } from "@smithy/types"; + +import { + CognitoIdentityProviderClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes, +} from "../CognitoIdentityProviderClient"; +import { commonParams } from "../endpoint/EndpointParameters"; +import { UpdateManagedLoginBrandingRequest, UpdateManagedLoginBrandingResponse } from "../models/models_1"; +import { de_UpdateManagedLoginBrandingCommand, se_UpdateManagedLoginBrandingCommand } from "../protocols/Aws_json1_1"; + +/** + * @public + */ +export type { __MetadataBearer }; +export { $Command }; +/** + * @public + * + * The input for {@link UpdateManagedLoginBrandingCommand}. + */ +export interface UpdateManagedLoginBrandingCommandInput extends UpdateManagedLoginBrandingRequest {} +/** + * @public + * + * The output of {@link UpdateManagedLoginBrandingCommand}. + */ +export interface UpdateManagedLoginBrandingCommandOutput extends UpdateManagedLoginBrandingResponse, __MetadataBearer {} + +/** + *

Configures the branding settings for a user pool style. This operation is the + * programmatic option for the configuration of a style in the branding designer.

+ *

Provides values for UI customization in a Settings JSON object and image + * files in an Assets array.

+ *

This operation has a 2-megabyte request-size limit and include the CSS settings and + * image assets for your app client. Your branding settings might exceed 2MB in size. Amazon Cognito + * doesn't require that you pass all parameters in one request and preserves existing + * style settings that you don't specify. If your request is larger than 2MB, separate it + * into multiple requests, each with a size smaller than the limit.

+ *

For more information, see API and SDK operations for managed login branding.

+ * + *

Amazon Cognito evaluates Identity and Access Management (IAM) policies in requests for this API operation. For + * this operation, you must use IAM credentials to authorize requests, and you must + * grant yourself the corresponding IAM permission in a policy.

+ *

+ * Learn more + *

+ * + *
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { CognitoIdentityProviderClient, UpdateManagedLoginBrandingCommand } from "@aws-sdk/client-cognito-identity-provider"; // ES Modules import + * // const { CognitoIdentityProviderClient, UpdateManagedLoginBrandingCommand } = require("@aws-sdk/client-cognito-identity-provider"); // CommonJS import + * const client = new CognitoIdentityProviderClient(config); + * const input = { // UpdateManagedLoginBrandingRequest + * UserPoolId: "STRING_VALUE", + * ManagedLoginBrandingId: "STRING_VALUE", + * UseCognitoProvidedValues: true || false, + * Settings: "DOCUMENT_VALUE", + * Assets: [ // AssetListType + * { // AssetType + * Category: "FAVICON_ICO" || "FAVICON_SVG" || "EMAIL_GRAPHIC" || "SMS_GRAPHIC" || "AUTH_APP_GRAPHIC" || "PASSWORD_GRAPHIC" || "PASSKEY_GRAPHIC" || "PAGE_HEADER_LOGO" || "PAGE_HEADER_BACKGROUND" || "PAGE_FOOTER_LOGO" || "PAGE_FOOTER_BACKGROUND" || "PAGE_BACKGROUND" || "FORM_BACKGROUND" || "FORM_LOGO" || "IDP_BUTTON_ICON", // required + * ColorMode: "LIGHT" || "DARK" || "DYNAMIC", // required + * Extension: "ICO" || "JPEG" || "PNG" || "SVG" || "WEBP", // required + * Bytes: new Uint8Array(), // e.g. Buffer.from("") or new TextEncoder().encode("") + * ResourceId: "STRING_VALUE", + * }, + * ], + * }; + * const command = new UpdateManagedLoginBrandingCommand(input); + * const response = await client.send(command); + * // { // UpdateManagedLoginBrandingResponse + * // ManagedLoginBranding: { // ManagedLoginBrandingType + * // ManagedLoginBrandingId: "STRING_VALUE", + * // UserPoolId: "STRING_VALUE", + * // UseCognitoProvidedValues: true || false, + * // Settings: "DOCUMENT_VALUE", + * // Assets: [ // AssetListType + * // { // AssetType + * // Category: "FAVICON_ICO" || "FAVICON_SVG" || "EMAIL_GRAPHIC" || "SMS_GRAPHIC" || "AUTH_APP_GRAPHIC" || "PASSWORD_GRAPHIC" || "PASSKEY_GRAPHIC" || "PAGE_HEADER_LOGO" || "PAGE_HEADER_BACKGROUND" || "PAGE_FOOTER_LOGO" || "PAGE_FOOTER_BACKGROUND" || "PAGE_BACKGROUND" || "FORM_BACKGROUND" || "FORM_LOGO" || "IDP_BUTTON_ICON", // required + * // ColorMode: "LIGHT" || "DARK" || "DYNAMIC", // required + * // Extension: "ICO" || "JPEG" || "PNG" || "SVG" || "WEBP", // required + * // Bytes: new Uint8Array(), + * // ResourceId: "STRING_VALUE", + * // }, + * // ], + * // CreationDate: new Date("TIMESTAMP"), + * // LastModifiedDate: new Date("TIMESTAMP"), + * // }, + * // }; + * + * ``` + * + * @param UpdateManagedLoginBrandingCommandInput - {@link UpdateManagedLoginBrandingCommandInput} + * @returns {@link UpdateManagedLoginBrandingCommandOutput} + * @see {@link UpdateManagedLoginBrandingCommandInput} for command's `input` shape. + * @see {@link UpdateManagedLoginBrandingCommandOutput} for command's `response` shape. + * @see {@link CognitoIdentityProviderClientResolvedConfig | config} for CognitoIdentityProviderClient's `config` shape. + * + * @throws {@link ConcurrentModificationException} (client fault) + *

This exception is thrown if two or more modifications are happening + * concurrently.

+ * + * @throws {@link InternalErrorException} (server fault) + *

This exception is thrown when Amazon Cognito encounters an internal error.

+ * + * @throws {@link InvalidParameterException} (client fault) + *

This exception is thrown when the Amazon Cognito service encounters an invalid + * parameter.

+ * + * @throws {@link NotAuthorizedException} (client fault) + *

This exception is thrown when a user isn't authorized.

+ * + * @throws {@link ResourceNotFoundException} (client fault) + *

This exception is thrown when the Amazon Cognito service can't find the requested + * resource.

+ * + * @throws {@link TooManyRequestsException} (client fault) + *

This exception is thrown when the user has made too many requests for a given + * operation.

+ * + * @throws {@link CognitoIdentityProviderServiceException} + *

Base exception class for all service exceptions from CognitoIdentityProvider service.

+ * + * @public + */ +export class UpdateManagedLoginBrandingCommand extends $Command + .classBuilder< + UpdateManagedLoginBrandingCommandInput, + UpdateManagedLoginBrandingCommandOutput, + CognitoIdentityProviderClientResolvedConfig, + ServiceInputTypes, + ServiceOutputTypes + >() + .ep(commonParams) + .m(function (this: any, Command: any, cs: any, config: CognitoIdentityProviderClientResolvedConfig, o: any) { + return [ + getSerdePlugin(config, this.serialize, this.deserialize), + getEndpointPlugin(config, Command.getEndpointParameterInstructions()), + ]; + }) + .s("AWSCognitoIdentityProviderService", "UpdateManagedLoginBranding", {}) + .n("CognitoIdentityProviderClient", "UpdateManagedLoginBrandingCommand") + .f(void 0, void 0) + .ser(se_UpdateManagedLoginBrandingCommand) + .de(de_UpdateManagedLoginBrandingCommand) + .build() { + /** @internal type navigation helper, not in runtime. */ + protected declare static __types: { + api: { + input: UpdateManagedLoginBrandingRequest; + output: UpdateManagedLoginBrandingResponse; + }; + sdk: { + input: UpdateManagedLoginBrandingCommandInput; + output: UpdateManagedLoginBrandingCommandOutput; + }; + }; +} diff --git a/clients/client-cognito-identity-provider/src/commands/UpdateUserAttributesCommand.ts b/clients/client-cognito-identity-provider/src/commands/UpdateUserAttributesCommand.ts index e9423589c40a..b12f6f02d379 100644 --- a/clients/client-cognito-identity-provider/src/commands/UpdateUserAttributesCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/UpdateUserAttributesCommand.ts @@ -56,7 +56,7 @@ export interface UpdateUserAttributesCommandOutput extends UpdateUserAttributesR * Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must * receive SMS messages might not be able to sign up, activate their accounts, or sign * in.

- *

If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Servicesservice, + *

If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Services service, * Amazon Simple Notification Service might place your account in the SMS sandbox. In * sandbox * mode @@ -146,7 +146,7 @@ export interface UpdateUserAttributesCommandOutput extends UpdateUserAttributesR * @throws {@link InvalidSmsRoleTrustRelationshipException} (client fault) *

This exception is thrown when the trust relationship is not valid for the role * provided for SMS configuration. This can happen if you don't trust - * cognito-idp.amazonaws.com or the external ID provided in the role does + * cognito-idp.amazonaws.com or the external ID provided in the role does * not match what is provided in the SMS configuration for the user pool.

* * @throws {@link NotAuthorizedException} (client fault) diff --git a/clients/client-cognito-identity-provider/src/commands/UpdateUserPoolClientCommand.ts b/clients/client-cognito-identity-provider/src/commands/UpdateUserPoolClientCommand.ts index f6986ee80b56..426267267247 100644 --- a/clients/client-cognito-identity-provider/src/commands/UpdateUserPoolClientCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/UpdateUserPoolClientCommand.ts @@ -89,7 +89,7 @@ export interface UpdateUserPoolClientCommandOutput extends UpdateUserPoolClientR * "STRING_VALUE", * ], * ExplicitAuthFlows: [ // ExplicitAuthFlowsListType - * "ADMIN_NO_SRP_AUTH" || "CUSTOM_AUTH_FLOW_ONLY" || "USER_PASSWORD_AUTH" || "ALLOW_ADMIN_USER_PASSWORD_AUTH" || "ALLOW_CUSTOM_AUTH" || "ALLOW_USER_PASSWORD_AUTH" || "ALLOW_USER_SRP_AUTH" || "ALLOW_REFRESH_TOKEN_AUTH", + * "ADMIN_NO_SRP_AUTH" || "CUSTOM_AUTH_FLOW_ONLY" || "USER_PASSWORD_AUTH" || "ALLOW_ADMIN_USER_PASSWORD_AUTH" || "ALLOW_CUSTOM_AUTH" || "ALLOW_USER_PASSWORD_AUTH" || "ALLOW_USER_SRP_AUTH" || "ALLOW_REFRESH_TOKEN_AUTH" || "ALLOW_USER_AUTH", * ], * SupportedIdentityProviders: [ // SupportedIdentityProvidersListType * "STRING_VALUE", @@ -145,7 +145,7 @@ export interface UpdateUserPoolClientCommandOutput extends UpdateUserPoolClientR * // "STRING_VALUE", * // ], * // ExplicitAuthFlows: [ // ExplicitAuthFlowsListType - * // "ADMIN_NO_SRP_AUTH" || "CUSTOM_AUTH_FLOW_ONLY" || "USER_PASSWORD_AUTH" || "ALLOW_ADMIN_USER_PASSWORD_AUTH" || "ALLOW_CUSTOM_AUTH" || "ALLOW_USER_PASSWORD_AUTH" || "ALLOW_USER_SRP_AUTH" || "ALLOW_REFRESH_TOKEN_AUTH", + * // "ADMIN_NO_SRP_AUTH" || "CUSTOM_AUTH_FLOW_ONLY" || "USER_PASSWORD_AUTH" || "ALLOW_ADMIN_USER_PASSWORD_AUTH" || "ALLOW_CUSTOM_AUTH" || "ALLOW_USER_PASSWORD_AUTH" || "ALLOW_USER_SRP_AUTH" || "ALLOW_REFRESH_TOKEN_AUTH" || "ALLOW_USER_AUTH", * // ], * // SupportedIdentityProviders: [ // SupportedIdentityProvidersListType * // "STRING_VALUE", diff --git a/clients/client-cognito-identity-provider/src/commands/UpdateUserPoolCommand.ts b/clients/client-cognito-identity-provider/src/commands/UpdateUserPoolCommand.ts index 80d391d10a11..33040f967413 100644 --- a/clients/client-cognito-identity-provider/src/commands/UpdateUserPoolCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/UpdateUserPoolCommand.ts @@ -40,7 +40,7 @@ export interface UpdateUserPoolCommandOutput extends UpdateUserPoolResponse, __M * Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must * receive SMS messages might not be able to sign up, activate their accounts, or sign * in.

- *

If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Servicesservice, + *

If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Services service, * Amazon Simple Notification Service might place your account in the SMS sandbox. In * sandbox * mode @@ -92,6 +92,11 @@ export interface UpdateUserPoolCommandOutput extends UpdateUserPoolResponse, __M * PasswordHistorySize: Number("int"), * TemporaryPasswordValidityDays: Number("int"), * }, + * SignInPolicy: { // SignInPolicyType + * AllowedFirstAuthFactors: [ // AllowedFirstAuthFactorsListType + * "PASSWORD" || "EMAIL_OTP" || "SMS_OTP" || "WEB_AUTHN", + * ], + * }, * }, * DeletionProtection: "ACTIVE" || "INACTIVE", * LambdaConfig: { // LambdaConfigType @@ -182,6 +187,8 @@ export interface UpdateUserPoolCommandOutput extends UpdateUserPoolResponse, __M * }, * ], * }, + * PoolName: "STRING_VALUE", + * UserPoolTier: "LITE" || "ESSENTIALS" || "PLUS", * }; * const command = new UpdateUserPoolCommand(input); * const response = await client.send(command); @@ -199,6 +206,10 @@ export interface UpdateUserPoolCommandOutput extends UpdateUserPoolResponse, __M *

This exception is thrown if two or more modifications are happening * concurrently.

* + * @throws {@link FeatureUnavailableInTierException} (client fault) + *

This exception is thrown when a feature you attempted to configure isn't + * available in your current feature plan.

+ * * @throws {@link InternalErrorException} (server fault) *

This exception is thrown when Amazon Cognito encounters an internal error.

* @@ -217,7 +228,7 @@ export interface UpdateUserPoolCommandOutput extends UpdateUserPoolResponse, __M * @throws {@link InvalidSmsRoleTrustRelationshipException} (client fault) *

This exception is thrown when the trust relationship is not valid for the role * provided for SMS configuration. This can happen if you don't trust - * cognito-idp.amazonaws.com or the external ID provided in the role does + * cognito-idp.amazonaws.com or the external ID provided in the role does * not match what is provided in the SMS configuration for the user pool.

* * @throws {@link NotAuthorizedException} (client fault) @@ -227,6 +238,10 @@ export interface UpdateUserPoolCommandOutput extends UpdateUserPoolResponse, __M *

This exception is thrown when the Amazon Cognito service can't find the requested * resource.

* + * @throws {@link TierChangeNotAllowedException} (client fault) + *

This exception is thrown when you've attempted to change your feature plan but + * the operation isn't permitted.

+ * * @throws {@link TooManyRequestsException} (client fault) *

This exception is thrown when the user has made too many requests for a given * operation.

diff --git a/clients/client-cognito-identity-provider/src/commands/UpdateUserPoolDomainCommand.ts b/clients/client-cognito-identity-provider/src/commands/UpdateUserPoolDomainCommand.ts index 3f753adf200d..f0e0452be9bb 100644 --- a/clients/client-cognito-identity-provider/src/commands/UpdateUserPoolDomainCommand.ts +++ b/clients/client-cognito-identity-provider/src/commands/UpdateUserPoolDomainCommand.ts @@ -80,6 +80,7 @@ export interface UpdateUserPoolDomainCommandOutput extends UpdateUserPoolDomainR * const input = { // UpdateUserPoolDomainRequest * Domain: "STRING_VALUE", // required * UserPoolId: "STRING_VALUE", // required + * ManagedLoginVersion: Number("int"), * CustomDomainConfig: { // CustomDomainConfigType * CertificateArn: "STRING_VALUE", // required * }, @@ -87,6 +88,7 @@ export interface UpdateUserPoolDomainCommandOutput extends UpdateUserPoolDomainR * const command = new UpdateUserPoolDomainCommand(input); * const response = await client.send(command); * // { // UpdateUserPoolDomainResponse + * // ManagedLoginVersion: Number("int"), * // CloudFrontDomain: "STRING_VALUE", * // }; * @@ -98,6 +100,10 @@ export interface UpdateUserPoolDomainCommandOutput extends UpdateUserPoolDomainR * @see {@link UpdateUserPoolDomainCommandOutput} for command's `response` shape. * @see {@link CognitoIdentityProviderClientResolvedConfig | config} for CognitoIdentityProviderClient's `config` shape. * + * @throws {@link FeatureUnavailableInTierException} (client fault) + *

This exception is thrown when a feature you attempted to configure isn't + * available in your current feature plan.

+ * * @throws {@link InternalErrorException} (server fault) *

This exception is thrown when Amazon Cognito encounters an internal error.

* diff --git a/clients/client-cognito-identity-provider/src/commands/index.ts b/clients/client-cognito-identity-provider/src/commands/index.ts index fa54dc3f6a53..ed0343f57db2 100644 --- a/clients/client-cognito-identity-provider/src/commands/index.ts +++ b/clients/client-cognito-identity-provider/src/commands/index.ts @@ -28,11 +28,13 @@ export * from "./AdminUpdateUserAttributesCommand"; export * from "./AdminUserGlobalSignOutCommand"; export * from "./AssociateSoftwareTokenCommand"; export * from "./ChangePasswordCommand"; +export * from "./CompleteWebAuthnRegistrationCommand"; export * from "./ConfirmDeviceCommand"; export * from "./ConfirmForgotPasswordCommand"; export * from "./ConfirmSignUpCommand"; export * from "./CreateGroupCommand"; export * from "./CreateIdentityProviderCommand"; +export * from "./CreateManagedLoginBrandingCommand"; export * from "./CreateResourceServerCommand"; export * from "./CreateUserImportJobCommand"; export * from "./CreateUserPoolClientCommand"; @@ -40,13 +42,17 @@ export * from "./CreateUserPoolCommand"; export * from "./CreateUserPoolDomainCommand"; export * from "./DeleteGroupCommand"; export * from "./DeleteIdentityProviderCommand"; +export * from "./DeleteManagedLoginBrandingCommand"; export * from "./DeleteResourceServerCommand"; export * from "./DeleteUserAttributesCommand"; export * from "./DeleteUserCommand"; export * from "./DeleteUserPoolClientCommand"; export * from "./DeleteUserPoolCommand"; export * from "./DeleteUserPoolDomainCommand"; +export * from "./DeleteWebAuthnCredentialCommand"; export * from "./DescribeIdentityProviderCommand"; +export * from "./DescribeManagedLoginBrandingByClientCommand"; +export * from "./DescribeManagedLoginBrandingCommand"; export * from "./DescribeResourceServerCommand"; export * from "./DescribeRiskConfigurationCommand"; export * from "./DescribeUserImportJobCommand"; @@ -63,6 +69,7 @@ export * from "./GetLogDeliveryConfigurationCommand"; export * from "./GetSigningCertificateCommand"; export * from "./GetUICustomizationCommand"; export * from "./GetUserAttributeVerificationCodeCommand"; +export * from "./GetUserAuthFactorsCommand"; export * from "./GetUserCommand"; export * from "./GetUserPoolMfaConfigCommand"; export * from "./GlobalSignOutCommand"; @@ -77,6 +84,7 @@ export * from "./ListUserPoolClientsCommand"; export * from "./ListUserPoolsCommand"; export * from "./ListUsersCommand"; export * from "./ListUsersInGroupCommand"; +export * from "./ListWebAuthnCredentialsCommand"; export * from "./ResendConfirmationCodeCommand"; export * from "./RespondToAuthChallengeCommand"; export * from "./RevokeTokenCommand"; @@ -88,6 +96,7 @@ export * from "./SetUserPoolMfaConfigCommand"; export * from "./SetUserSettingsCommand"; export * from "./SignUpCommand"; export * from "./StartUserImportJobCommand"; +export * from "./StartWebAuthnRegistrationCommand"; export * from "./StopUserImportJobCommand"; export * from "./TagResourceCommand"; export * from "./UntagResourceCommand"; @@ -95,6 +104,7 @@ export * from "./UpdateAuthEventFeedbackCommand"; export * from "./UpdateDeviceStatusCommand"; export * from "./UpdateGroupCommand"; export * from "./UpdateIdentityProviderCommand"; +export * from "./UpdateManagedLoginBrandingCommand"; export * from "./UpdateResourceServerCommand"; export * from "./UpdateUserAttributesCommand"; export * from "./UpdateUserPoolClientCommand"; diff --git a/clients/client-cognito-identity-provider/src/models/models_0.ts b/clients/client-cognito-identity-provider/src/models/models_0.ts index 63ab14a5dac8..78f9f1d7864f 100644 --- a/clients/client-cognito-identity-provider/src/models/models_0.ts +++ b/clients/client-cognito-identity-provider/src/models/models_0.ts @@ -1,6 +1,8 @@ // smithy-typescript generated code import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@smithy/smithy-client"; +import { DocumentType as __DocumentType } from "@smithy/types"; + import { CognitoIdentityProviderServiceException as __BaseException } from "./CognitoIdentityProviderServiceException"; /** @@ -19,31 +21,45 @@ export const RecoveryOptionNameType = { export type RecoveryOptionNameType = (typeof RecoveryOptionNameType)[keyof typeof RecoveryOptionNameType]; /** - *

A map containing a priority as a key, and recovery method name as a value.

+ *

A recovery option for a user. The AccountRecoverySettingType data type is + * an array of this object. Each RecoveryOptionType has a priority property + * that determines whether it is a primary or secondary option.

+ *

For example, if verified_email has a priority of 1 and + * verified_phone_number has a priority of 2, your user pool + * sends account-recovery messages to a verified email address but falls back to an SMS + * message if the user has a verified phone number. The admin_only option + * prevents self-service account recovery.

+ *

This data type is a request and response parameter of CreateUserPool and UpdateUserPool, and a response parameter of DescribeUserPool.

* @public */ export interface RecoveryOptionType { /** - *

A positive integer specifying priority of a method with 1 being the highest - * priority.

+ *

Your priority preference for using the specified attribute in account recovery. The + * highest priority is 1.

* @public */ Priority: number | undefined; /** - *

The recovery method for a user.

+ *

The recovery method that this object sets a recovery option for.

* @public */ Name: RecoveryOptionNameType | undefined; } /** - *

The data type for AccountRecoverySetting.

+ *

The settings for user message delivery in forgot-password operations. Contains + * preference for email or SMS message delivery of password reset codes, or for admin-only + * password reset.

+ *

This data type is a request and response parameter of CreateUserPool and UpdateUserPool, and a response parameter of DescribeUserPool.

* @public */ export interface AccountRecoverySettingType { /** - *

The list of RecoveryOptionTypes.

+ *

The list of options and priorities for user message delivery in forgot-password + * operations. Sets or displays user pool preferences for email or SMS message priority, + * whether users should fall back to a second delivery method, and whether passwords should + * only be reset by administrators.

* @public */ RecoveryMechanisms?: RecoveryOptionType[] | undefined; @@ -67,37 +83,46 @@ export type AccountTakeoverEventActionType = (typeof AccountTakeoverEventActionType)[keyof typeof AccountTakeoverEventActionType]; /** - *

Account takeover action type.

+ *

The automated response to a risk level for adaptive authentication in full-function, + * or ENFORCED, mode. You can assign an action to each risk level that + * advanced security features evaluates.

+ *

This data type is a request parameter of SetRiskConfiguration and a response parameter of DescribeRiskConfiguration.

* @public */ export interface AccountTakeoverActionType { /** - *

Flag specifying whether to send a notification.

+ *

Determines whether Amazon Cognito sends a user a notification message when your user pools + * assesses a user's session at the associated risk level.

* @public */ Notify: boolean | undefined; /** - *

The action to take in response to the account takeover action. Valid values are as - * follows:

+ *

The action to take for the attempted account takeover action for the associated risk + * level. Valid values are as follows:

*
    *
  • *

    - * BLOCK Choosing this action will block the request.

    + * BLOCK: Block the request.

    *
  • *
  • *

    - * MFA_IF_CONFIGURED Present an MFA challenge if user has configured - * it, else allow the request.

    + * MFA_IF_CONFIGURED: Present an MFA challenge if possible. MFA is + * possible if the user pool has active MFA methods that the user can set up. For + * example, if the user pool only supports SMS message MFA but the user + * doesn't have a phone number attribute, MFA setup isn't possible. If MFA + * setup isn't possible, allow the request.

    *
  • *
  • *

    - * MFA_REQUIRED Present an MFA challenge if user has configured it, - * else block the request.

    + * MFA_REQUIRED: Present an MFA challenge if possible. Block the + * request if a user hasn't set up MFA. To sign in with required MFA, users must + * have an email address or phone number attribute, or a registered TOTP + * factor.

    *
  • *
  • *

    - * NO_ACTION Allow the user to sign in.

    + * NO_ACTION: Take no action. Permit sign-in.

    *
  • *
* @public @@ -106,67 +131,83 @@ export interface AccountTakeoverActionType { } /** - *

Account takeover actions type.

+ *

A list of account-takeover actions for each level of risk that Amazon Cognito might assess with + * advanced security features.

+ *

This data type is a request parameter of SetRiskConfiguration and a response parameter of DescribeRiskConfiguration.

* @public */ export interface AccountTakeoverActionsType { /** - *

Action to take for a low risk.

+ *

The action that you assign to a low-risk assessment by advanced security + * features.

* @public */ LowAction?: AccountTakeoverActionType | undefined; /** - *

Action to take for a medium risk.

+ *

The action that you assign to a medium-risk assessment by advanced security + * features.

* @public */ MediumAction?: AccountTakeoverActionType | undefined; /** - *

Action to take for a high risk.

+ *

The action that you assign to a high-risk assessment by advanced security + * features.

* @public */ HighAction?: AccountTakeoverActionType | undefined; } /** - *

The notify email type.

+ *

The template for email messages that advanced security features sends to a user when + * your threat protection automated response has a Notify + * action.

+ *

This data type is a request parameter of SetRiskConfiguration and a response parameter of DescribeRiskConfiguration.

* @public */ export interface NotifyEmailType { /** - *

The email subject.

+ *

The subject of the threat protection email notification.

* @public */ Subject: string | undefined; /** - *

The email HTML body.

+ *

The body of an email notification formatted in HTML. Choose an HtmlBody + * or a TextBody to send an HTML-formatted or plaintext message, + * respectively.

* @public */ HtmlBody?: string | undefined; /** - *

The email text body.

+ *

The body of an email notification formatted in plaintext. Choose an + * HtmlBody or a TextBody to send an HTML-formatted or + * plaintext message, respectively.

* @public */ TextBody?: string | undefined; } /** - *

The notify configuration type.

+ *

The configuration for Amazon SES email messages that advanced security features sends to a + * user when your adaptive authentication automated response has a + * Notify action.

+ *

This data type is a request parameter of SetRiskConfiguration and a response parameter of DescribeRiskConfiguration.

* @public */ export interface NotifyConfigurationType { /** - *

The email address that is sending the email. The address must be either individually - * verified with Amazon Simple Email Service, or from a domain that has been verified with Amazon SES.

+ *

The email address that sends the email message. The address must be either + * individually verified with Amazon Simple Email Service, or from a domain that has been verified with + * Amazon SES.

* @public */ From?: string | undefined; /** - *

The destination to which the receiver of an email should reply to.

+ *

The reply-to email address of an email template.

* @public */ ReplyTo?: string | undefined; @@ -180,39 +221,46 @@ export interface NotifyConfigurationType { SourceArn: string | undefined; /** - *

Email template used when a detected risk event is blocked.

+ *

The template for the email message that your user pool sends when a detected risk + * event is blocked.

* @public */ BlockEmail?: NotifyEmailType | undefined; /** - *

The email template used when a detected risk event is allowed.

+ *

The template for the email message that your user pool sends when no action is taken + * in response to a detected risk.

* @public */ NoActionEmail?: NotifyEmailType | undefined; /** - *

The multi-factor authentication (MFA) email template used when MFA is challenged as - * part of a detected risk.

+ *

The template for the email message that your user pool sends when MFA is challenged in + * response to a detected risk.

* @public */ MfaEmail?: NotifyEmailType | undefined; } /** - *

Configuration for mitigation actions and notification for different levels of risk - * detected for a potential account takeover.

+ *

The settings for automated responses and notification templates for adaptive + * authentication with advanced security features.

+ *

This data type is a request parameter of SetRiskConfiguration and a response parameter of DescribeRiskConfiguration.

* @public */ export interface AccountTakeoverRiskConfigurationType { /** - *

The notify configuration used to construct email notifications.

+ *

The settings for composing and sending an email message when advanced security + * features assesses a risk level with adaptive authentication. When you choose to notify + * users in AccountTakeoverRiskConfiguration, Amazon Cognito sends an email message + * using the method and template that you set with this data type.

* @public */ NotifyConfiguration?: NotifyConfigurationType | undefined; /** - *

Account takeover risk configuration actions.

+ *

A list of account-takeover actions for each level of risk that Amazon Cognito might assess with + * advanced security features.

* @public */ Actions: AccountTakeoverActionsType | undefined; @@ -235,7 +283,12 @@ export const AttributeDataType = { export type AttributeDataType = (typeof AttributeDataType)[keyof typeof AttributeDataType]; /** - *

The minimum and maximum values of an attribute that is of the number data type.

+ *

The minimum and maximum values of an attribute that is of the number type, for example + * custom:age.

+ *

This data type is part of SchemaAttributeType. It defines the length constraints + * on number-type attributes that you configure in CreateUserPool and UpdateUserPool, and displays the length constraints of + * all number-type attributes in the response to DescribeUserPool + *

* @public */ export interface NumberAttributeConstraintsType { @@ -255,12 +308,17 @@ export interface NumberAttributeConstraintsType { } /** - *

The constraints associated with a string attribute.

+ *

The minimum and maximum length values of an attribute that is of the string type, for + * example custom:department.

+ *

This data type is part of SchemaAttributeType. It defines the length constraints + * on string-type attributes that you configure in CreateUserPool and UpdateUserPool, and displays the length constraints of + * all string-type attributes in the response to DescribeUserPool + *

* @public */ export interface StringAttributeConstraintsType { /** - *

The minimum length.

+ *

The minimum length of a string attribute value.

* @public */ MinLength?: string | undefined; @@ -280,9 +338,11 @@ export interface StringAttributeConstraintsType { * prefix, and developer attributes with a dev: prefix. For more information, * see User pool * attributes.

- *

Developer-only attributes are a legacy feature of user pools, are read-only to all app - * clients. You can create and update developer-only attributes only with IAM-authenticated - * API operations. Use app client read/write permissions instead.

+ *

Developer-only dev: attributes are a legacy feature of user pools, and + * are read-only to all app clients. You can create and update developer-only attributes + * only with IAM-authenticated API operations. Use app client read/write permissions + * instead.

+ *

This data type is a request and response parameter of CreateUserPool and UpdateUserPool, and a response parameter of DescribeUserPool.

* @public */ export interface SchemaAttributeType { @@ -407,6 +467,12 @@ export class InternalErrorException extends __BaseException { export class InvalidParameterException extends __BaseException { readonly name: "InvalidParameterException" = "InvalidParameterException"; readonly $fault: "client" = "client"; + /** + *

The reason code of the exception.

+ * @public + */ + reasonCode?: string | undefined; + /** * @internal */ @@ -417,6 +483,7 @@ export class InvalidParameterException extends __BaseException { ...opts, }); Object.setPrototypeOf(this, InvalidParameterException.prototype); + this.reasonCode = opts.reasonCode; } } @@ -748,7 +815,8 @@ export const MessageActionType = { export type MessageActionType = (typeof MessageActionType)[keyof typeof MessageActionType]; /** - *

Specifies whether the attribute is standard or custom.

+ *

The name and value of a user attribute.

+ *

This data type is a request parameter of AdminUpdateUserAttributes and UpdateUserAttributes.

* @public */ export interface AttributeType { @@ -766,7 +834,7 @@ export interface AttributeType { } /** - *

Represents the request to create a user in the specified user pool.

+ *

Creates a new user in the specified user pool.

* @public */ export interface AdminCreateUserRequest { @@ -811,6 +879,10 @@ export interface AdminCreateUserRequest { * address or phone number. You can do this in your call to AdminCreateUser or in the * Users tab of the Amazon Cognito console for managing your * user pools.

+ *

You must also provide an email address or phone number when you expect the user to do + * passwordless sign-in with an email or SMS OTP. These attributes must be provided when + * passwordless options are the only available, or when you don't submit a + * TemporaryPassword.

*

In your call to AdminCreateUser, you can set the * email_verified attribute to True, and you can set the * phone_number_verified attribute to True. You can also do @@ -854,11 +926,15 @@ export interface AdminCreateUserRequest { /** *

The user's temporary password. This password must conform to the password policy that * you specified when you created the user pool.

+ *

The exception to the requirement for a password is when your user pool supports + * passwordless sign-in with email or SMS OTPs. To create a user with no password, omit + * this parameter or submit a blank value. You can only create a passwordless user when + * passwordless sign-in is available. See the SignInPolicyType property of CreateUserPool and UpdateUserPool.

*

The temporary password is valid only once. To complete the Admin Create User flow, the * user must enter the temporary password in the sign-in page, along with a new password to * be used in all future sign-ins.

- *

This parameter isn't required. If you don't specify a value, Amazon Cognito generates one for - * you.

+ *

If you don't specify a value, Amazon Cognito generates one for you unless you have passwordless + * options active for your user pool.

*

The temporary password can only be used until the user account expiration limit that * you set for your user pool. To reset the account after that time limit, you must call * AdminCreateUser again and specify RESEND for the @@ -981,23 +1057,25 @@ export type UserStatusType = (typeof UserStatusType)[keyof typeof UserStatusType /** *

A user profile in a Amazon Cognito user pool.

+ *

This data type is a response parameter to AdminCreateUser and ListUsers.

* @public */ export interface UserType { /** - *

The user name of the user you want to describe.

+ *

The user's username.

* @public */ Username?: string | undefined; /** - *

A container with information about the user type attributes.

+ *

Names and values of a user's attributes, for example email.

* @public */ Attributes?: AttributeType[] | undefined; /** - *

The creation date of the user.

+ *

The date and time when the item was created. Amazon Cognito returns this timestamp in UNIX epoch time format. Your SDK might render the output in a + * human-readable format like ISO 8601 or a Java Date object.

* @public */ UserCreateDate?: Date | undefined; @@ -1010,7 +1088,7 @@ export interface UserType { UserLastModifiedDate?: Date | undefined; /** - *

Specifies whether the user is enabled.

+ *

Indicates whether the user's account is enabled or disabled.

* @public */ Enabled?: boolean | undefined; @@ -1045,7 +1123,7 @@ export interface UserType { UserStatus?: UserStatusType | undefined; /** - *

The MFA options for the user.

+ *

The user's MFA configuration.

* @public */ MFAOptions?: MFAOptionType[] | undefined; @@ -1128,7 +1206,7 @@ export class InvalidSmsRoleAccessPolicyException extends __BaseException { /** *

This exception is thrown when the trust relationship is not valid for the role * provided for SMS configuration. This can happen if you don't trust - * cognito-idp.amazonaws.com or the external ID provided in the role does + * cognito-idp.amazonaws.com or the external ID provided in the role does * not match what is provided in the SMS configuration for the user pool.

* @public */ @@ -1234,35 +1312,39 @@ export interface MessageTemplateType { } /** - *

The configuration for creating a new user profile.

+ *

The settings for administrator creation of users in a user pool. Contains settings for + * allowing user sign-up, customizing invitation messages to new users, and the amount of + * time before temporary passwords expire.

+ *

This data type is a request and response parameter of CreateUserPool and UpdateUserPool, and a response parameter of DescribeUserPool.

* @public */ export interface AdminCreateUserConfigType { /** - *

Set to True if only the administrator is allowed to create user profiles. - * Set to False if users can sign themselves up via an app.

+ *

The setting for allowing self-service sign-up. When true, only + * administrators can create new user profiles. When false, users can register + * themselves and create a new user profile with the SignUp operation.

* @public */ AllowAdminCreateUserOnly?: boolean | undefined; /** - *

The user account expiration limit, in days, after which a new account that hasn't - * signed in is no longer usable. To reset the account after that time limit, you must call - * AdminCreateUser again, specifying "RESEND" for the - * MessageAction parameter. The default value for this parameter is - * 7.

- * - *

If you set a value for TemporaryPasswordValidityDays in - * PasswordPolicy, that value will be used, and - * UnusedAccountValidityDays will be no longer be an available - * parameter for that user pool.

- *
+ *

This parameter is no longer in use. Configure the duration of temporary passwords with + * the TemporaryPasswordValidityDays parameter of PasswordPolicyType. For older user pools that have a + * UnusedAccountValidityDays configuration, that value is effective until + * you set a value for TemporaryPasswordValidityDays.

+ *

The password expiration limit in days for administrator-created users. When this time + * expires, the user can't sign in with their temporary password. To reset the account + * after that time limit, you must call AdminCreateUser again, specifying + * RESEND for the MessageAction parameter.

+ *

The default value for this parameter is 7.

* @public */ UnusedAccountValidityDays?: number | undefined; /** - *

The message template to be used for the welcome message to new users.

+ *

The template for the welcome message to new users. This template must include the + * \{####\} temporary password placeholder if you are creating users with + * passwords. If your users don't have passwords, you can omit the placeholder.

*

See also Customizing User Invitation Messages.

* @public */ @@ -1329,7 +1411,9 @@ export interface AdminDeleteUserAttributesRequest { export interface AdminDeleteUserAttributesResponse {} /** - *

A container for information about an IdP for a user pool.

+ *

The characteristics of a source or destination user for linking a federated user + * profile to a local user profile.

+ *

This data type is a request parameter of AdminLinkProviderForUser and AdminDisableProviderForUser.

* @public */ export interface ProviderUserIdentifierType { @@ -1534,24 +1618,28 @@ export interface AdminGetDeviceRequest { } /** - *

The device type.

+ *

Information about a user's device that they've registered for device SRP + * authentication in your application. For more information, see Working with user devices in your user pool.

+ *

The data type is a response parameter of AdminGetDevice, AdminListDevices, and GetDevice.

* @public */ export interface DeviceType { /** - *

The device key.

+ *

The device key, for example + * us-west-2_EXAMPLE-a1b2c3d4-5678-90ab-cdef-EXAMPLE22222.

* @public */ DeviceKey?: string | undefined; /** - *

The device attributes.

+ *

Metadata about a user's device, like name and last-access source IP.

* @public */ DeviceAttributes?: AttributeType[] | undefined; /** - *

The creation date of the device.

+ *

The date and time when the item was created. Amazon Cognito returns this timestamp in UNIX epoch time format. Your SDK might render the output in a + * human-readable format like ISO 8601 or a Java Date object.

* @public */ DeviceCreateDate?: Date | undefined; @@ -1564,7 +1652,7 @@ export interface DeviceType { DeviceLastModifiedDate?: Date | undefined; /** - *

The date when the device was last authenticated.

+ *

The date when the user last signed in with the device.

* @public */ DeviceLastAuthenticatedDate?: Date | undefined; @@ -1687,22 +1775,26 @@ export interface AdminGetUserResponse { /** *

The MFA options that are activated for the user. The possible values in this list are - * SMS_MFA, EMAIL_OTP, and SOFTWARE_TOKEN_MFA.

+ * SMS_MFA, EMAIL_OTP, and + * SOFTWARE_TOKEN_MFA.

* @public */ UserMFASettingList?: string[] | undefined; } /** - *

An Amazon Pinpoint analytics endpoint.

- *

An endpoint uniquely identifies a mobile device, email address, or phone number that + *

Information that your application adds to authentication requests. Applies an endpoint + * ID to the analytics data that your user pool sends to Amazon Pinpoint.

+ *

An endpoint ID uniquely identifies a mobile device, email address or phone number that * can receive messages from Amazon Pinpoint analytics. For more information about Amazon Web Services Regions that * can contain Amazon Pinpoint resources for use with Amazon Cognito user pools, see Using Amazon Pinpoint analytics with Amazon Cognito user pools.

+ *

This data type is a request parameter of authentication operations like InitiateAuth, AdminInitiateAuth, RespondToAuthChallenge, and AdminRespondToAuthChallenge.

* @public */ export interface AnalyticsMetadataType { /** - *

The endpoint ID.

+ *

The endpoint ID. Information that you want to pass to Amazon Pinpoint about where to send + * notifications.

* @public */ AnalyticsEndpointId?: string | undefined; @@ -1718,6 +1810,7 @@ export const AuthFlowType = { CUSTOM_AUTH: "CUSTOM_AUTH", REFRESH_TOKEN: "REFRESH_TOKEN", REFRESH_TOKEN_AUTH: "REFRESH_TOKEN_AUTH", + USER_AUTH: "USER_AUTH", USER_PASSWORD_AUTH: "USER_PASSWORD_AUTH", USER_SRP_AUTH: "USER_SRP_AUTH", } as const; @@ -1728,7 +1821,9 @@ export const AuthFlowType = { export type AuthFlowType = (typeof AuthFlowType)[keyof typeof AuthFlowType]; /** - *

The HTTP header.

+ *

The HTTP header in the ContextData parameter.

+ *

This data type is a request parameter of server-side authentication operations like + * AdminInitiateAuth and AdminRespondToAuthChallenge.

* @public */ export interface HttpHeader { @@ -1746,8 +1841,10 @@ export interface HttpHeader { } /** - *

Contextual user data type used for evaluating the risk of an unexpected event by Amazon Cognito - * advanced security.

+ *

Contextual user data used for evaluating the risk of an authentication event by user + * pool threat protection.

+ *

This data type is a request parameter of server-side authentication operations like + * AdminInitiateAuth and AdminRespondToAuthChallenge.

* @public */ export interface ContextDataType { @@ -1758,19 +1855,19 @@ export interface ContextDataType { IpAddress: string | undefined; /** - *

Your server endpoint where this API is invoked.

+ *

The name of your application's service endpoint.

* @public */ ServerName: string | undefined; /** - *

Your server path where this API is invoked.

+ *

The path of your application's service endpoint.

* @public */ ServerPath: string | undefined; /** - *

HttpHeaders received on your server in same order.

+ *

The HTTP headers from your user's authentication request.

* @public */ HttpHeaders: HttpHeader[] | undefined; @@ -1801,57 +1898,68 @@ export interface AdminInitiateAuthRequest { ClientId: string | undefined; /** - *

The authentication flow for this call to run. The API action will depend on this - * value. For example:

- *
    - *
  • - *

    - * REFRESH_TOKEN_AUTH will take in a valid refresh token and return - * new tokens.

    - *
  • - *
  • - *

    - * USER_SRP_AUTH will take in USERNAME and - * SRP_A and return the Secure Remote Password (SRP) protocol - * variables to be used for next challenge execution.

    - *
  • - *
  • - *

    - * ADMIN_USER_PASSWORD_AUTH will take in USERNAME and - * PASSWORD and return the next challenge or tokens.

    - *
  • - *
- *

Valid values include:

+ *

The authentication flow that you want to initiate. The AuthParameters + * that you must submit are linked to the flow that you submit. For example:

*
    *
  • *

    - * USER_SRP_AUTH: Authentication flow for the Secure Remote Password - * (SRP) protocol.

    - *
  • - *
  • - *

    - * REFRESH_TOKEN_AUTH/REFRESH_TOKEN: Authentication - * flow for refreshing the access token and ID token by supplying a valid refresh - * token.

    + * USER_AUTH: Request a preferred authentication type or review + * available authentication types. From the offered authentication types, select + * one in a challenge response and then authenticate with that method in an + * additional challenge response.

    *
  • *
  • *

    - * CUSTOM_AUTH: Custom authentication flow.

    + * REFRESH_TOKEN_AUTH: Receive new ID and access tokens when you + * pass a REFRESH_TOKEN parameter with a valid refresh token as the + * value.

    *
  • *
  • *

    - * ADMIN_NO_SRP_AUTH: Non-SRP authentication flow; you can pass in - * the USERNAME and PASSWORD directly if the flow is enabled for calling the app - * client.

    + * USER_SRP_AUTH: Receive secure remote password (SRP) variables for + * the next challenge, PASSWORD_VERIFIER, when you pass + * USERNAME and SRP_A parameters..

    *
  • *
  • *

    - * ADMIN_USER_PASSWORD_AUTH: Admin-based user password - * authentication. This replaces the ADMIN_NO_SRP_AUTH authentication - * flow. In this flow, Amazon Cognito receives the password in the request instead of using - * the SRP process to verify passwords.

    + * ADMIN_USER_PASSWORD_AUTH: Receive new tokens or the next + * challenge, for example SOFTWARE_TOKEN_MFA, when you pass + * USERNAME and PASSWORD parameters.

    *
  • *
+ *

Valid values include the following:

+ *
+ *
USER_AUTH
+ *
+ *

The entry point for sign-in with passwords, one-time passwords, biometric + * devices, and security keys.

+ *
+ *
USER_SRP_AUTH
+ *
+ *

Username-password authentication with the Secure Remote Password (SRP) + * protocol. For more information, see Use SRP password verification in custom + * authentication flow.

+ *
+ *
REFRESH_TOKEN_AUTH and REFRESH_TOKEN
+ *
+ *

Provide a valid refresh token and receive new ID and access tokens. For + * more information, see Using the refresh token.

+ *
+ *
CUSTOM_AUTH
+ *
+ *

Custom authentication with Lambda triggers. For more information, see + * Custom authentication challenge Lambda + * triggers.

+ *
+ *
ADMIN_USER_PASSWORD_AUTH
+ *
+ *

Username-password authentication with the password sent directly in the + * request. For more information, see Admin authentication flow.

+ *
+ *
+ *

+ * USER_PASSWORD_AUTH is a flow type of InitiateAuth and isn't valid for + * AdminInitiateAuth.

* @public */ AuthFlow: AuthFlowType | undefined; @@ -1862,6 +1970,13 @@ export interface AdminInitiateAuthRequest { * of AuthFlow:

*
    *
  • + *

    For USER_AUTH: USERNAME (required), + * PREFERRED_CHALLENGE. If you don't provide a value for + * PREFERRED_CHALLENGE, Amazon Cognito responds with the + * AvailableChallenges parameter that specifies the available + * sign-in methods.

    + *
  • + *
  • *

    For USER_SRP_AUTH: USERNAME (required), * SRP_A (required), SECRET_HASH (required if the app * client is configured with a client secret), DEVICE_KEY.

    @@ -1932,6 +2047,12 @@ export interface AdminInitiateAuthRequest { *
  • *

    Define auth challenge

    *
  • + *
  • + *

    Custom email sender

    + *
  • + *
  • + *

    Custom SMS sender

    + *
  • *
*

For more information, see * Customizing user pool Workflows with Lambda Triggers in the Amazon Cognito Developer Guide.

@@ -1972,34 +2093,49 @@ export interface AdminInitiateAuthRequest { * @public */ ContextData?: ContextDataType | undefined; + + /** + *

The optional session ID from a ConfirmSignUp API request. You can sign in + * a user directly from the sign-up process with the USER_AUTH authentication + * flow.

+ * @public + */ + Session?: string | undefined; } /** - *

The new device metadata type.

+ *

Information that your user pool responds with in AuthenticationResultwhen + * you configure it to remember devices and a user signs in with an unrecognized device. + * Amazon Cognito presents a new device key that you can use to set up device authentication in a "Remember me on this device" + * authentication model.

+ *

This data type is a response parameter of authentication operations like InitiateAuth, AdminInitiateAuth, RespondToAuthChallenge, and AdminRespondToAuthChallenge.

* @public */ export interface NewDeviceMetadataType { /** - *

The device key.

+ *

The device key, an identifier used in generating the + * DEVICE_PASSWORD_VERIFIER for device SRP authentication.

* @public */ DeviceKey?: string | undefined; /** - *

The device group key.

+ *

The device group key, an identifier used in generating the + * DEVICE_PASSWORD_VERIFIER for device SRP authentication.

* @public */ DeviceGroupKey?: string | undefined; } /** - *

The authentication result.

+ *

The object that your application receives after authentication. Contains tokens and + * information for device authentication.

+ *

This data type is a response parameter of authentication operations like InitiateAuth, AdminInitiateAuth, RespondToAuthChallenge, and AdminRespondToAuthChallenge.

* @public */ export interface AuthenticationResultType { /** - *

A valid access token that Amazon Cognito issued to the user who you want to - * authenticate.

+ *

Your user's access token.

* @public */ AccessToken?: string | undefined; @@ -2011,19 +2147,19 @@ export interface AuthenticationResultType { ExpiresIn?: number | undefined; /** - *

The token type.

+ *

The intended use of the token, for example Bearer.

* @public */ TokenType?: string | undefined; /** - *

The refresh token.

+ *

Your user's refresh token.

* @public */ RefreshToken?: string | undefined; /** - *

The ID token.

+ *

Your user's ID token.

* @public */ IdToken?: string | undefined; @@ -2047,10 +2183,15 @@ export const ChallengeNameType = { EMAIL_OTP: "EMAIL_OTP", MFA_SETUP: "MFA_SETUP", NEW_PASSWORD_REQUIRED: "NEW_PASSWORD_REQUIRED", + PASSWORD: "PASSWORD", + PASSWORD_SRP: "PASSWORD_SRP", PASSWORD_VERIFIER: "PASSWORD_VERIFIER", + SELECT_CHALLENGE: "SELECT_CHALLENGE", SELECT_MFA_TYPE: "SELECT_MFA_TYPE", SMS_MFA: "SMS_MFA", + SMS_OTP: "SMS_OTP", SOFTWARE_TOKEN_MFA: "SOFTWARE_TOKEN_MFA", + WEB_AUTHN: "WEB_AUTHN", } as const; /** @@ -2070,6 +2211,33 @@ export interface AdminInitiateAuthResponse { *
    *
  • *

    + * WEB_AUTHN: Respond to the challenge with the results of a + * successful authentication with a passkey, or webauthN, factor. These are + * typically biometric devices or security keys.

    + *
  • + *
  • + *

    + * PASSWORD: Respond with USER_PASSWORD_AUTH + * parameters: USERNAME (required), PASSWORD (required), + * SECRET_HASH (required if the app client is configured with a + * client secret), DEVICE_KEY.

    + *
  • + *
  • + *

    + * PASSWORD_SRP: Respond with USER_SRP_AUTH parameters: + * USERNAME (required), SRP_A (required), + * SECRET_HASH (required if the app client is configured with a + * client secret), DEVICE_KEY.

    + *
  • + *
  • + *

    + * SELECT_CHALLENGE: Respond to the challenge with + * USERNAME and an ANSWER that matches one of the + * challenge types in the AvailableChallenges response + * parameter.

    + *
  • + *
  • + *

    * MFA_SETUP: If MFA is required, users who don't have at least one * of the MFA methods set up are presented with an MFA_SETUP * challenge. The user must set up at least one MFA type to continue to @@ -2078,21 +2246,20 @@ export interface AdminInitiateAuthResponse { *

  • *

    * SELECT_MFA_TYPE: Selects the MFA type. Valid MFA options are - * SMS_MFA for SMS message MFA, EMAIL_OTP for email + * SMS_MFA for SMS message MFA, EMAIL_OTP for email * message MFA, and SOFTWARE_TOKEN_MFA for time-based one-time * password (TOTP) software token MFA.

    *
  • *
  • *

    * SMS_MFA: Next challenge is to supply an - * SMS_MFA_CODEthat your user pool delivered - * in an SMS message.

    + * SMS_MFA_CODEthat your user pool delivered in an SMS message.

    *
  • *
  • *

    * EMAIL_OTP: Next challenge is to supply an - * EMAIL_OTP_CODE that your user pool delivered - * in an email message.

    + * EMAIL_OTP_CODE that your user pool delivered in an email + * message.

    *
  • *
  • *

    @@ -2132,6 +2299,13 @@ export interface AdminInitiateAuthResponse { * the requiredAttributes parameter. You can also set values for * attributes that aren't required by your user pool and that your app client can * write. For more information, see AdminRespondToAuthChallenge.

    + *

    Amazon Cognito only returns this challenge for users who have temporary passwords. + * Because of this, and because in some cases you can create users who don't have + * values for required attributes, take care to collect and submit + * required-attribute values for all users who don't have passwords. You can create + * a user in the Amazon Cognito console without, for example, a required + * birthdate attribute. The API response from Amazon Cognito won't prompt + * you to submit a birthdate for the user if they don't have a password.

    * *

    In a NEW_PASSWORD_REQUIRED challenge response, you can't modify a required attribute that already has a value. * In AdminRespondToAuthChallenge, set a value for any keys that Amazon Cognito returned in the requiredAttributes parameter, @@ -2320,20 +2494,26 @@ export interface AdminLinkProviderForUserRequest { * ProviderAttributeValue for the user must be the same value as the * id, sub, or user_id value found in the social * IdP token.

    - *

    - *

    For OIDC, the ProviderAttributeName can be any value that matches a claim - * in the ID token, or that your app retrieves from the userInfo endpoint. You - * must map the claim to a user pool attribute in your IdP configuration, and set the user - * pool attribute name as the value of ProviderAttributeName in your - * AdminLinkProviderForUser request.

    - *

    For SAML, the ProviderAttributeName can be any value that matches a claim - * in the SAML assertion. To link SAML users based on the subject of the SAML assertion, - * map the subject to a claim through the SAML IdP and set that claim name as the value of - * ProviderAttributeName in your AdminLinkProviderForUser - * request.

    - *

    For both OIDC and SAML users, when you set ProviderAttributeName to - * Cognito_Subject, Amazon Cognito will automatically parse the default unique - * identifier found in the subject from the IdP token.

    + *

    For OIDC, the ProviderAttributeName can be any mapped value from a claim + * in the ID token, or that your app retrieves from the userInfo endpoint. For + * SAML, the ProviderAttributeName can be any mapped value from a claim in the + * SAML assertion.

    + *

    The following additional considerations apply to SourceUser for OIDC and + * SAML providers.

    + *
      + *
    • + *

      You must map the claim to a user pool attribute in your IdP configuration, and + * set the user pool attribute name as the value of + * ProviderAttributeName in your + * AdminLinkProviderForUser request. For example, + * email.

      + *
    • + *
    • + *

      When you set ProviderAttributeName to + * Cognito_Subject, Amazon Cognito will automatically parse the default + * unique identifier found in the subject from the IdP token.

      + *
    • + *
    * @public */ SourceUser: ProviderUserIdentifierType | undefined; @@ -2437,7 +2617,11 @@ export interface AdminListGroupsForUserRequest { } /** - *

    The group type.

    + *

    A user pool group. Contains details about the group and the way that it contributes to + * IAM role decisions with identity pools. Identity pools can make decisions about the + * IAM role to assign based on groups: users get credentials for the role associated with + * their highest-priority group.

    + *

    This data type is a response parameter of AdminListGroupsForUser, CreateGroup, GetGroup, ListGroups, and UpdateGroup.

    * @public */ export interface GroupType { @@ -2448,19 +2632,21 @@ export interface GroupType { GroupName?: string | undefined; /** - *

    The user pool ID for the user pool.

    + *

    The ID of the user pool that contains the group.

    * @public */ UserPoolId?: string | undefined; /** - *

    A string containing the description of the group.

    + *

    A friendly description of the group.

    * @public */ Description?: string | undefined; /** - *

    The role Amazon Resource Name (ARN) for the group.

    + *

    The ARN of the IAM role associated with the group. If a group has the highest + * priority of a user's groups, users who authenticate with an identity pool get + * credentials for the RoleArn that's associated with the group.

    * @public */ RoleArn?: string | undefined; @@ -2479,7 +2665,7 @@ export interface GroupType { * cognito:preferred_role claim in tokens for users in each group. If the * two groups have different role ARNs, the cognito:preferred_role claim isn't * set in users' tokens.

    - *

    The default Precedence value is null.

    + *

    The default Precedence value is null.

    * @public */ Precedence?: number | undefined; @@ -2581,25 +2767,201 @@ export const ChallengeResponse = { export type ChallengeResponse = (typeof ChallengeResponse)[keyof typeof ChallengeResponse]; /** - *

    The challenge response type.

    + *

    The responses to the challenge that you received in the previous request. Each + * challenge has its own required response parameters. The following examples are partial + * JSON request bodies that highlight challenge-response parameters.

    + * + *

    You must provide a SECRET_HASH parameter in all challenge responses to an app + * client that has a client secret. Include a DEVICE_KEY for device + * authentication.

    + *
    + *
    + *
    SELECT_CHALLENGE
    + *
    + *

    + * "ChallengeName": "SELECT_CHALLENGE", "ChallengeResponses": \{ + * "USERNAME": "[username]", + * "ANSWER": "[Challenge name]"\} + *

    + *

    Available challenges are PASSWORD, PASSWORD_SRP, + * EMAIL_OTP, SMS_OTP, and WEB_AUTHN.

    + *

    Complete authentication in the SELECT_CHALLENGE response for + * PASSWORD, PASSWORD_SRP, and WEB_AUTHN:

    + *
      + *
    • + *

      + * "ChallengeName": "SELECT_CHALLENGE", "ChallengeResponses": \{ + * "ANSWER": "WEB_AUTHN", + * "USERNAME": "[username]", + * "CREDENTIAL": "[AuthenticationResponseJSON]"\} + *

      + *

      See + * AuthenticationResponseJSON.

      + *
    • + *
    • + *

      + * "ChallengeName": "SELECT_CHALLENGE", "ChallengeResponses": \{ + * "ANSWER": "PASSWORD", + * "USERNAME": "[username]", + * "PASSWORD": "[password]"\} + *

      + *
    • + *
    • + *

      + * "ChallengeName": "SELECT_CHALLENGE", "ChallengeResponses": \{ + * "ANSWER": "PASSWORD_SRP", + * "USERNAME": "[username]", + * "SRP_A": "[SRP_A]"\} + *

      + *
    • + *
    + *

    For SMS_OTP and EMAIL_OTP, respond with the + * username and answer. Your user pool will send a code for the user to submit in + * the next challenge response.

    + *
      + *
    • + *

      + * "ChallengeName": "SELECT_CHALLENGE", "ChallengeResponses": \{ + * "ANSWER": "SMS_OTP", + * "USERNAME": "[username]"\} + *

      + *
    • + *
    • + *

      + * "ChallengeName": "SELECT_CHALLENGE", "ChallengeResponses": \{ + * "ANSWER": "EMAIL_OTP", + * "USERNAME": "[username]"\} + *

      + *
    • + *
    + *
    + *
    SMS_OTP
    + *
    + *

    + * "ChallengeName": "SMS_OTP", "ChallengeResponses": + * \{"SMS_OTP_CODE": "[code]", "USERNAME": "[username]"\} + *

    + *
    + *
    EMAIL_OTP
    + *
    + *

    + * "ChallengeName": "EMAIL_OTP", "ChallengeResponses": \{"EMAIL_OTP_CODE": + * "[code]", "USERNAME": "[username]"\} + *

    + *
    + *
    SMS_MFA
    + *
    + *

    + * "ChallengeName": "SMS_MFA", "ChallengeResponses": \{"SMS_MFA_CODE": + * "[code]", "USERNAME": "[username]"\} + *

    + *
    + *
    PASSWORD_VERIFIER
    + *
    + *

    This challenge response is part of the SRP flow. Amazon Cognito requires + * that your application respond to this challenge within a few seconds. When + * the response time exceeds this period, your user pool returns a + * NotAuthorizedException error.

    + *

    + * "ChallengeName": "PASSWORD_VERIFIER", "ChallengeResponses": + * \{"PASSWORD_CLAIM_SIGNATURE": "[claim_signature]", + * "PASSWORD_CLAIM_SECRET_BLOCK": "[secret_block]", "TIMESTAMP": + * [timestamp], "USERNAME": "[username]"\} + *

    + *

    Add "DEVICE_KEY" when you sign in with a remembered + * device.

    + *
    + *
    CUSTOM_CHALLENGE
    + *
    + *

    + * "ChallengeName": "CUSTOM_CHALLENGE", "ChallengeResponses": + * \{"USERNAME": "[username]", "ANSWER": "[challenge_answer]"\} + *

    + *

    Add "DEVICE_KEY" when you sign in with a remembered + * device.

    + *
    + *
    NEW_PASSWORD_REQUIRED
    + *
    + *

    + * "ChallengeName": "NEW_PASSWORD_REQUIRED", "ChallengeResponses": + * \{"NEW_PASSWORD": "[new_password]", "USERNAME": + * "[username]"\} + *

    + *

    To set any required attributes that InitiateAuth returned in + * an requiredAttributes parameter, add + * "userAttributes.[attribute_name]": "[attribute_value]". + * This parameter can also set values for writable attributes that aren't + * required by your user pool.

    + * + *

    In a NEW_PASSWORD_REQUIRED challenge response, you can't modify a required attribute that already has a value. + * In RespondToAuthChallenge, set a value for any keys that Amazon Cognito returned in the requiredAttributes parameter, + * then use the UpdateUserAttributes API operation to modify the value of any additional attributes.

    + *
    + *
    + *
    SOFTWARE_TOKEN_MFA
    + *
    + *

    + * "ChallengeName": "SOFTWARE_TOKEN_MFA", "ChallengeResponses": + * \{"USERNAME": "[username]", "SOFTWARE_TOKEN_MFA_CODE": + * [authenticator_code]\} + *

    + *
    + *
    DEVICE_SRP_AUTH
    + *
    + *

    + * "ChallengeName": "DEVICE_SRP_AUTH", "ChallengeResponses": \{"USERNAME": + * "[username]", "DEVICE_KEY": "[device_key]", "SRP_A": + * "[srp_a]"\} + *

    + *
    + *
    DEVICE_PASSWORD_VERIFIER
    + *
    + *

    + * "ChallengeName": "DEVICE_PASSWORD_VERIFIER", "ChallengeResponses": + * \{"DEVICE_KEY": "[device_key]", "PASSWORD_CLAIM_SIGNATURE": + * "[claim_signature]", "PASSWORD_CLAIM_SECRET_BLOCK": "[secret_block]", + * "TIMESTAMP": [timestamp], "USERNAME": "[username]"\} + *

    + *
    + *
    MFA_SETUP
    + *
    + *

    + * "ChallengeName": "MFA_SETUP", "ChallengeResponses": \{"USERNAME": + * "[username]"\}, "SESSION": "[Session ID from + * VerifySoftwareToken]" + *

    + *
    + *
    SELECT_MFA_TYPE
    + *
    + *

    + * "ChallengeName": "SELECT_MFA_TYPE", "ChallengeResponses": \{"USERNAME": + * "[username]", "ANSWER": "[SMS_MFA or SOFTWARE_TOKEN_MFA]"\} + *

    + *
    + *
    + *

    For more information about SECRET_HASH, see Computing secret hash values. For information about + * DEVICE_KEY, see Working with user devices in your user pool.

    + *

    This data type is a request parameter of RespondToAuthChallenge and AdminRespondToAuthChallenge.

    * @public */ export interface ChallengeResponseType { /** - *

    The challenge name.

    + *

    The type of challenge that your previous authentication request returned in the + * parameter ChallengeName, for example SMS_MFA.

    * @public */ ChallengeName?: ChallengeName | undefined; /** - *

    The challenge response.

    + *

    The set of key-value pairs that provides a response to the requested challenge.

    * @public */ ChallengeResponse?: ChallengeResponse | undefined; } /** - *

    Specifies the user context data captured at the time of an event request.

    + *

    The context data that your application submitted in an authentication request with + * advanced security features, as displayed in an AdminListUserAuthEvents response.

    * @public */ export interface EventContextDataType { @@ -2649,7 +3011,8 @@ export const FeedbackValueType = { export type FeedbackValueType = (typeof FeedbackValueType)[keyof typeof FeedbackValueType]; /** - *

    Specifies the event feedback type.

    + *

    The feedback that your application submitted to an advanced security features event + * log, as displayed in an AdminListUserAuthEvents response.

    * @public */ export interface EventFeedbackType { @@ -2664,13 +3027,14 @@ export interface EventFeedbackType { FeedbackValue: FeedbackValueType | undefined; /** - *

    The provider.

    + *

    The submitter of the event feedback. For example, if you submit event feedback in the + * Amazon Cognito console, this value is Admin.

    * @public */ Provider: string | undefined; /** - *

    The event feedback date.

    + *

    The date that you or your user submitted the feedback.

    * @public */ FeedbackDate?: Date | undefined; @@ -2722,18 +3086,24 @@ export const RiskLevelType = { export type RiskLevelType = (typeof RiskLevelType)[keyof typeof RiskLevelType]; /** - *

    The event risk type.

    + *

    The risk evaluation by adaptive authentication, as displayed in an AdminListUserAuthEvents response. Contains evaluations + * of compromised-credentials detection and assessed risk level and action taken by + * adaptive authentication.

    * @public */ export interface EventRiskType { /** - *

    The risk decision.

    + *

    The action taken by adaptive authentication. If NoRisk, your user pool + * took no action. If AccountTakeover, your user pool applied the adaptive + * authentication automated response that you configured. If Block, your user + * pool prevented the attempt.

    * @public */ RiskDecision?: RiskDecisionType | undefined; /** - *

    The risk level.

    + *

    The risk level that adaptive authentication assessed for the authentication + * event.

    * @public */ RiskLevel?: RiskLevelType | undefined; @@ -2764,7 +3134,10 @@ export const EventType = { export type EventType = (typeof EventType)[keyof typeof EventType]; /** - *

    The authentication event type.

    + *

    One authentication event that Amazon Cognito logged in a user pool with advanced security + * features active. Contains user and device metadata and a risk assessment from your user + * pool.

    + *

    This data type is a request parameter of AdminListUserAuthEvents.

    * @public */ export interface AuthEventType { @@ -2775,7 +3148,7 @@ export interface AuthEventType { EventId?: string | undefined; /** - *

    The event type.

    + *

    The type of authentication event.

    * @public */ EventType?: EventType | undefined; @@ -2794,13 +3167,16 @@ export interface AuthEventType { EventResponse?: EventResponseType | undefined; /** - *

    The event risk.

    + *

    The threat evaluation from your user pool about an event. Contains information about + * whether your user pool detected compromised credentials, whether the event triggered an + * automated response, and the level of risk.

    * @public */ EventRisk?: EventRiskType | undefined; /** - *

    The challenge responses.

    + *

    A list of the challenges that the user was requested to answer, for example + * Password, and the result, for example Success.

    * @public */ ChallengeResponses?: ChallengeResponseType[] | undefined; @@ -2813,8 +3189,12 @@ export interface AuthEventType { EventContextData?: EventContextDataType | undefined; /** - *

    A flag specifying the user feedback captured at the time of an event request is good - * or bad.

    + *

    The UpdateAuthEventFeedback or AdminUpdateAuthEventFeedback feedback that you or your + * user provided in response to the event. A value of Valid indicates that you + * disagreed with the level of risk that your user pool assigned, and evaluated a session + * to be valid, or likely safe. A value of Invalid indicates that you agreed + * with the user pool risk level and evaluated a session to be invalid, or likely + * malicious.

    * @public */ EventFeedback?: EventFeedbackType | undefined; @@ -2980,14 +3360,74 @@ export interface AdminRespondToAuthChallengeRequest { * JSON request bodies that highlight challenge-response parameters.

    * *

    You must provide a SECRET_HASH parameter in all challenge responses to an app - * client that has a client secret.

    + * client that has a client secret. Include a DEVICE_KEY for device + * authentication.

    *
    *
    - *
    SMS_MFA
    + *
    SELECT_CHALLENGE
    *
    *

    - * "ChallengeName": "SMS_MFA", "ChallengeResponses": \{"SMS_MFA_CODE": - * "[code]", "USERNAME": "[username]"\} + * "ChallengeName": "SELECT_CHALLENGE", "ChallengeResponses": \{ + * "USERNAME": "[username]", + * "ANSWER": "[Challenge name]"\} + *

    + *

    Available challenges are PASSWORD, PASSWORD_SRP, + * EMAIL_OTP, SMS_OTP, and WEB_AUTHN.

    + *

    Complete authentication in the SELECT_CHALLENGE response for + * PASSWORD, PASSWORD_SRP, and WEB_AUTHN:

    + *
      + *
    • + *

      + * "ChallengeName": "SELECT_CHALLENGE", "ChallengeResponses": \{ + * "ANSWER": "WEB_AUTHN", + * "USERNAME": "[username]", + * "CREDENTIAL": "[AuthenticationResponseJSON]"\} + *

      + *

      See + * AuthenticationResponseJSON.

      + *
    • + *
    • + *

      + * "ChallengeName": "SELECT_CHALLENGE", "ChallengeResponses": \{ + * "ANSWER": "PASSWORD", + * "USERNAME": "[username]", + * "PASSWORD": "[password]"\} + *

      + *
    • + *
    • + *

      + * "ChallengeName": "SELECT_CHALLENGE", "ChallengeResponses": \{ + * "ANSWER": "PASSWORD_SRP", + * "USERNAME": "[username]", + * "SRP_A": "[SRP_A]"\} + *

      + *
    • + *
    + *

    For SMS_OTP and EMAIL_OTP, respond with the + * username and answer. Your user pool will send a code for the user to submit in + * the next challenge response.

    + *
      + *
    • + *

      + * "ChallengeName": "SELECT_CHALLENGE", "ChallengeResponses": \{ + * "ANSWER": "SMS_OTP", + * "USERNAME": "[username]"\} + *

      + *
    • + *
    • + *

      + * "ChallengeName": "SELECT_CHALLENGE", "ChallengeResponses": \{ + * "ANSWER": "EMAIL_OTP", + * "USERNAME": "[username]"\} + *

      + *
    • + *
    + *
    + *
    SMS_OTP
    + *
    + *

    + * "ChallengeName": "SMS_OTP", "ChallengeResponses": + * \{"SMS_OTP_CODE": "[code]", "USERNAME": "[username]"\} *

    *
    *
    EMAIL_OTP
    @@ -2997,6 +3437,13 @@ export interface AdminRespondToAuthChallengeRequest { * "[code]", "USERNAME": "[username]"\} *

    * + *
    SMS_MFA
    + *
    + *

    + * "ChallengeName": "SMS_MFA", "ChallengeResponses": \{"SMS_MFA_CODE": + * "[code]", "USERNAME": "[username]"\} + *

    + *
    *
    PASSWORD_VERIFIER
    *
    *

    This challenge response is part of the SRP flow. Amazon Cognito requires @@ -3296,6 +3743,7 @@ export class SoftwareTokenMFANotFoundException extends __BaseException { * deactivates email MFA and sets it as the preferred MFA method when multiple methods are * available. To activate this setting, * advanced security features must be active in your user pool.

    + *

    This data type is a request parameter of SetUserMFAPreference and AdminSetUserMFAPreference.

    * @public */ export interface EmailMfaSettingsType { @@ -3315,12 +3763,11 @@ export interface EmailMfaSettingsType { } /** - *

    The type used for enabling SMS multi-factor authentication (MFA) at the user level. - * Phone numbers don't need to be verified to be used for SMS MFA. If an MFA type is - * activated for a user, the user will be prompted for MFA during all sign-in attempts, - * unless device tracking is turned on and the device has been trusted. If you would like - * MFA to be applied selectively based on the assessed risk level of sign-in attempts, - * deactivate MFA for users and turn on Adaptive Authentication for the user pool.

    + *

    A user's preference for using SMS message multi-factor authentication (MFA). Turns SMS + * MFA on and off, and can set SMS as preferred when other MFA options are available. You + * can't turn off SMS MFA for any of your users when MFA is required in your user pool; you + * can only set the type that your user prefers.

    + *

    This data type is a request parameter of SetUserMFAPreference and AdminSetUserMFAPreference.

    * @public */ export interface SMSMfaSettingsType { @@ -3333,18 +3780,20 @@ export interface SMSMfaSettingsType { Enabled?: boolean | undefined; /** - *

    Specifies whether SMS is the preferred MFA method.

    + *

    Specifies whether SMS is the preferred MFA method. If true, your user pool prompts the + * specified user for a code delivered by SMS message after username-password sign-in + * succeeds.

    * @public */ PreferredMfa?: boolean | undefined; } /** - *

    The type used for enabling software token MFA at the user level. If an MFA type is - * activated for a user, the user will be prompted for MFA during all sign-in attempts, - * unless device tracking is turned on and the device has been trusted. If you want MFA to - * be applied selectively based on the assessed risk level of sign-in attempts, deactivate - * MFA for users and turn on Adaptive Authentication for the user pool.

    + *

    A user's preference for using time-based one-time password (TOTP) multi-factor + * authentication (MFA). Turns TOTP MFA on and off, and can set TOTP as preferred when + * other MFA options are available. You can't turn off TOTP MFA for any of your users when + * MFA is required in your user pool; you can only set the type that your user prefers.

    + *

    This data type is a request parameter of SetUserMFAPreference and AdminSetUserMFAPreference.

    * @public */ export interface SoftwareTokenMfaSettingsType { @@ -3615,12 +4064,12 @@ export interface AdminUpdateUserAttributesRequest { * attribute. After your user receives and responds to a verification message to verify the * new value, Amazon Cognito updates the attribute value. Your user can sign in and receive messages * with the original attribute value until they verify the new value.

    - *

    To update the value of an attribute that requires verification in the same API - * request, include the email_verified or phone_number_verified - * attribute, with a value of true. If you set the email_verified - * or phone_number_verified value for an email or - * phone_number attribute that requires verification to true, - * Amazon Cognito doesn’t send a verification message to your user.

    + *

    To skip the verification message and update the value of an attribute that requires + * verification in the same API request, include the email_verified or + * phone_number_verified attribute, with a value of true. If + * you set the email_verified or phone_number_verified value for + * an email or phone_number attribute that requires verification + * to true, Amazon Cognito doesn’t send a verification message to your user.

    * @public */ UserAttributes: AttributeType[] | undefined; @@ -3721,10 +4170,8 @@ export type AdvancedSecurityEnabledModeType = */ export interface AdvancedSecurityAdditionalFlowsType { /** - *

    The operating mode of advanced security features in custom authentication with - * - * Custom authentication challenge Lambda triggers. - *

    + *

    The operating mode of advanced security features in custom authentication with Custom + * authentication challenge Lambda triggers.

    * @public */ CustomAuthMode?: AdvancedSecurityEnabledModeType | undefined; @@ -3761,39 +4208,59 @@ export const AliasAttributeType = { export type AliasAttributeType = (typeof AliasAttributeType)[keyof typeof AliasAttributeType]; /** - *

    The Amazon Pinpoint analytics configuration necessary to collect metrics for a user - * pool.

    - * - *

    In Regions where Amazon Pinpoint isn't available, user pools only support sending - * events to Amazon Pinpoint projects in us-east-1. In Regions where Amazon Pinpoint is available, user - * pools support sending events to Amazon Pinpoint projects within that same Region.

    - *
    + * @public + * @enum + */ +export const AuthFactorType = { + EMAIL_OTP: "EMAIL_OTP", + PASSWORD: "PASSWORD", + SMS_OTP: "SMS_OTP", + WEB_AUTHN: "WEB_AUTHN", +} as const; + +/** + * @public + */ +export type AuthFactorType = (typeof AuthFactorType)[keyof typeof AuthFactorType]; + +/** + *

    The settings for Amazon Pinpoint analytics configuration. With an analytics configuration, + * your application can collect user-activity metrics for user notifications with a Amazon Pinpoint + * campaign.

    + *

    Amazon Pinpoint isn't available in all Amazon Web Services Regions. For a list of available Regions, see + * Amazon Cognito and Amazon Pinpoint Region availability.

    + *

    This data type is a request parameter of CreateUserPoolClient and UpdateUserPoolClient, and a response parameter of + * DescribeUserPoolClient.

    * @public */ export interface AnalyticsConfigurationType { /** - *

    The application ID for an Amazon Pinpoint application.

    + *

    Your Amazon Pinpoint project ID.

    * @public */ ApplicationId?: string | undefined; /** - *

    The Amazon Resource Name (ARN) of an Amazon Pinpoint project. You can use the Amazon Pinpoint project - * to integrate with the chosen user pool Client. Amazon Cognito publishes events to the Amazon Pinpoint - * project that the app ARN declares.

    + *

    The Amazon Resource Name (ARN) of an Amazon Pinpoint project that you want to connect to + * your user pool app client. Amazon Cognito publishes events to the Amazon Pinpoint project that + * ApplicationArn declares. You can also configure your application to + * pass an endpoint ID in the AnalyticsMetadata parameter of sign-in + * operations. The endpoint ID is information about the destination for push + * notifications

    * @public */ ApplicationArn?: string | undefined; /** - *

    The ARN of an Identity and Access Management role that authorizes Amazon Cognito to publish events to Amazon Pinpoint - * analytics.

    + *

    The ARN of an Identity and Access Management role that has the permissions required for Amazon Cognito to publish + * events to Amazon Pinpoint analytics.

    * @public */ RoleArn?: string | undefined; /** - *

    The external ID.

    + *

    The external ID of the role that Amazon Cognito assumes to send + * analytics data to Amazon Pinpoint.

    * @public */ ExternalId?: string | undefined; @@ -3806,6 +4273,107 @@ export interface AnalyticsConfigurationType { UserDataShared?: boolean | undefined; } +/** + * @public + * @enum + */ +export const AssetCategoryType = { + AUTH_APP_GRAPHIC: "AUTH_APP_GRAPHIC", + EMAIL_GRAPHIC: "EMAIL_GRAPHIC", + FAVICON_ICO: "FAVICON_ICO", + FAVICON_SVG: "FAVICON_SVG", + FORM_BACKGROUND: "FORM_BACKGROUND", + FORM_LOGO: "FORM_LOGO", + IDP_BUTTON_ICON: "IDP_BUTTON_ICON", + PAGE_BACKGROUND: "PAGE_BACKGROUND", + PAGE_FOOTER_BACKGROUND: "PAGE_FOOTER_BACKGROUND", + PAGE_FOOTER_LOGO: "PAGE_FOOTER_LOGO", + PAGE_HEADER_BACKGROUND: "PAGE_HEADER_BACKGROUND", + PAGE_HEADER_LOGO: "PAGE_HEADER_LOGO", + PASSKEY_GRAPHIC: "PASSKEY_GRAPHIC", + PASSWORD_GRAPHIC: "PASSWORD_GRAPHIC", + SMS_GRAPHIC: "SMS_GRAPHIC", +} as const; + +/** + * @public + */ +export type AssetCategoryType = (typeof AssetCategoryType)[keyof typeof AssetCategoryType]; + +/** + * @public + * @enum + */ +export const AssetExtensionType = { + ICO: "ICO", + JPEG: "JPEG", + PNG: "PNG", + SVG: "SVG", + WEBP: "WEBP", +} as const; + +/** + * @public + */ +export type AssetExtensionType = (typeof AssetExtensionType)[keyof typeof AssetExtensionType]; + +/** + * @public + * @enum + */ +export const ColorSchemeModeType = { + DARK: "DARK", + DYNAMIC: "DYNAMIC", + LIGHT: "LIGHT", +} as const; + +/** + * @public + */ +export type ColorSchemeModeType = (typeof ColorSchemeModeType)[keyof typeof ColorSchemeModeType]; + +/** + *

    An image file from a managed login branding style in a user pool.

    + *

    This data type is a request parameter of CreateManagedLoginBranding and UpdateManagedLoginBranding, and a response parameter of + * DescribeManagedLoginBranding.

    + * @public + */ +export interface AssetType { + /** + *

    The category that the image corresponds to in your managed login configuration. + * Managed login has asset categories for different types of logos, backgrounds, and + * icons.

    + * @public + */ + Category: AssetCategoryType | undefined; + + /** + *

    The display-mode target of the asset: light, dark, or browser-adaptive. For example, + * Amazon Cognito displays a dark-mode image only when the browser or application is in dark mode, + * but displays a browser-adaptive file in all contexts.

    + * @public + */ + ColorMode: ColorSchemeModeType | undefined; + + /** + *

    The file type of the image file.

    + * @public + */ + Extension: AssetExtensionType | undefined; + + /** + *

    The image file, in Base64-encoded binary.

    + * @public + */ + Bytes?: Uint8Array | undefined; + + /** + *

    The ID of the asset.

    + * @public + */ + ResourceId?: string | undefined; +} + /** * @public */ @@ -3906,10 +4474,12 @@ export type VerifiedAttributeType = (typeof VerifiedAttributeType)[keyof typeof */ export interface ChangePasswordRequest { /** - *

    The old password.

    + *

    The user's previous password. Required if the user has a password. If the user + * has no password and only signs in with passwordless authentication options, you can omit + * this parameter.

    * @public */ - PreviousPassword: string | undefined; + PreviousPassword?: string | undefined; /** *

    The new password.

    @@ -3932,98 +4502,251 @@ export interface ChangePasswordRequest { export interface ChangePasswordResponse {} /** - *

    The device verifier against which it is authenticated.

    * @public */ -export interface DeviceSecretVerifierConfigType { +export interface CompleteWebAuthnRegistrationRequest { /** - *

    The password verifier.

    + *

    A valid access token that Amazon Cognito issued to the user whose passkey registration you want + * to verify.

    * @public */ - PasswordVerifier?: string | undefined; + AccessToken: string | undefined; /** - *

    The salt - *

    + *

    A RegistrationResponseJSON public-key credential response from the + * user's passkey provider.

    * @public */ - Salt?: string | undefined; + Credential: __DocumentType | undefined; } /** - *

    Confirms the device request.

    * @public */ -export interface ConfirmDeviceRequest { - /** - *

    A valid access token that Amazon Cognito issued to the user whose device you want to - * confirm.

    - * @public - */ - AccessToken: string | undefined; - - /** - *

    The device key.

    - * @public - */ - DeviceKey: string | undefined; +export interface CompleteWebAuthnRegistrationResponse {} +/** + *

    This exception is thrown when the challenge from StartWebAuthn + * registration has expired.

    + * @public + */ +export class WebAuthnChallengeNotFoundException extends __BaseException { + readonly name: "WebAuthnChallengeNotFoundException" = "WebAuthnChallengeNotFoundException"; + readonly $fault: "client" = "client"; /** - *

    The configuration of the device secret verifier.

    - * @public + * @internal */ - DeviceSecretVerifierConfig?: DeviceSecretVerifierConfigType | undefined; + constructor(opts: __ExceptionOptionType) { + super({ + name: "WebAuthnChallengeNotFoundException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WebAuthnChallengeNotFoundException.prototype); + } +} +/** + *

    This exception is thrown when the access token is for a different client than the one + * in the original StartWebAuthnRegistration request.

    + * @public + */ +export class WebAuthnClientMismatchException extends __BaseException { + readonly name: "WebAuthnClientMismatchException" = "WebAuthnClientMismatchException"; + readonly $fault: "client" = "client"; /** - *

    The device name.

    - * @public + * @internal */ - DeviceName?: string | undefined; + constructor(opts: __ExceptionOptionType) { + super({ + name: "WebAuthnClientMismatchException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WebAuthnClientMismatchException.prototype); + } } /** - *

    Confirms the device response.

    + *

    This exception is thrown when a user presents passkey credentials from an unsupported + * device or provider.

    * @public */ -export interface ConfirmDeviceResponse { +export class WebAuthnCredentialNotSupportedException extends __BaseException { + readonly name: "WebAuthnCredentialNotSupportedException" = "WebAuthnCredentialNotSupportedException"; + readonly $fault: "client" = "client"; /** - *

    Indicates whether the user confirmation must confirm the device response.

    - * @public + * @internal */ - UserConfirmationNecessary?: boolean | undefined; + constructor(opts: __ExceptionOptionType) { + super({ + name: "WebAuthnCredentialNotSupportedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WebAuthnCredentialNotSupportedException.prototype); + } } /** - *

    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.

    + *

    This exception is thrown when the passkey feature isn't enabled for the user + * pool.

    * @public */ -export interface UserContextDataType { +export class WebAuthnNotEnabledException extends __BaseException { + readonly name: "WebAuthnNotEnabledException" = "WebAuthnNotEnabledException"; + readonly $fault: "client" = "client"; /** - *

    The source IP address of your user's device.

    - * @public + * @internal */ - IpAddress?: string | undefined; + constructor(opts: __ExceptionOptionType) { + super({ + name: "WebAuthnNotEnabledException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WebAuthnNotEnabledException.prototype); + } +} +/** + *

    This exception is thrown when the passkey credential's registration origin does not + * align with the user pool relying party id.

    + * @public + */ +export class WebAuthnOriginNotAllowedException extends __BaseException { + readonly name: "WebAuthnOriginNotAllowedException" = "WebAuthnOriginNotAllowedException"; + readonly $fault: "client" = "client"; /** - *

    Encoded device-fingerprint details that your app collected with the Amazon Cognito - * context data collection library. For more information, see Adding user device and session data to API requests.

    - * @public + * @internal */ - EncodedData?: string | undefined; + constructor(opts: __ExceptionOptionType) { + super({ + name: "WebAuthnOriginNotAllowedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WebAuthnOriginNotAllowedException.prototype); + } } /** - *

    The request representing the confirmation for a password reset.

    + *

    This exception is thrown when the given passkey credential is associated with a + * different relying party ID than the user pool relying party ID.

    * @public */ -export interface ConfirmForgotPasswordRequest { +export class WebAuthnRelyingPartyMismatchException extends __BaseException { + readonly name: "WebAuthnRelyingPartyMismatchException" = "WebAuthnRelyingPartyMismatchException"; + readonly $fault: "client" = "client"; /** - *

    The app client ID of the app associated with the user pool.

    - * @public + * @internal */ - ClientId: string | undefined; - + constructor(opts: __ExceptionOptionType) { + super({ + name: "WebAuthnRelyingPartyMismatchException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WebAuthnRelyingPartyMismatchException.prototype); + } +} + +/** + *

    A Secure Remote Password (SRP) value that your application generates when you register + * a user's device. For more information, see Getting a device key.

    + *

    This data type is a request parameter of ConfirmDevice.

    + * @public + */ +export interface DeviceSecretVerifierConfigType { + /** + *

    A password verifier for a user's device. Used in SRP authentication.

    + * @public + */ + PasswordVerifier?: string | undefined; + + /** + *

    The salt that you want to use in SRP authentication with the user's device.

    + * @public + */ + Salt?: string | undefined; +} + +/** + *

    Confirms the device request.

    + * @public + */ +export interface ConfirmDeviceRequest { + /** + *

    A valid access token that Amazon Cognito issued to the user whose device you want to + * confirm.

    + * @public + */ + AccessToken: string | undefined; + + /** + *

    The device key.

    + * @public + */ + DeviceKey: string | undefined; + + /** + *

    The configuration of the device secret verifier.

    + * @public + */ + DeviceSecretVerifierConfig?: DeviceSecretVerifierConfigType | undefined; + + /** + *

    The device name.

    + * @public + */ + DeviceName?: string | undefined; +} + +/** + *

    Confirms the device response.

    + * @public + */ +export interface ConfirmDeviceResponse { + /** + *

    Indicates whether the user confirmation must confirm the device response.

    + * @public + */ + UserConfirmationNecessary?: boolean | undefined; +} + +/** + *

    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.

    + *

    This data type is a request parameter of public-client authentication operations like + * InitiateAuth and RespondToAuthChallenge.

    + * @public + */ +export interface UserContextDataType { + /** + *

    The source IP address of your user's device.

    + * @public + */ + IpAddress?: string | undefined; + + /** + *

    Encoded device-fingerprint details that your app collected with the Amazon Cognito + * context data collection library. For more information, see Adding user device and session data to API requests.

    + * @public + */ + EncodedData?: string | undefined; +} + +/** + *

    The request representing the confirmation for a password reset.

    + * @public + */ +export interface ConfirmForgotPasswordRequest { + /** + *

    The app client ID of the app associated with the user pool.

    + * @public + */ + ClientId: string | undefined; + /** *

    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. For more information @@ -4209,13 +4932,30 @@ export interface ConfirmSignUpRequest { * @public */ ClientMetadata?: Record | undefined; + + /** + *

    The optional session ID from a SignUp API request. You can sign in a user + * directly from the sign-up process with the USER_AUTH authentication + * flow.

    + * @public + */ + Session?: string | undefined; } /** *

    Represents the response from the server for the registration confirmation.

    * @public */ -export interface ConfirmSignUpResponse {} +export interface ConfirmSignUpResponse { + /** + *

    You can automatically sign users in with the one-time password that they provided in a + * successful ConfirmSignUp request. To do this, pass the Session + * parameter from the ConfirmSignUp response in the Session + * parameter of an InitiateAuth or AdminInitiateAuth request.

    + * @public + */ + Session?: string | undefined; +} /** * @public @@ -4476,24 +5216,27 @@ export interface CreateIdentityProviderRequest { } /** - *

    A container for information about an IdP.

    + *

    A user pool identity provider (IdP). Contains information about a third-party IdP to a + * user pool, the attributes that it populates to user profiles, and the trust relationship + * between the IdP and your user pool.

    + *

    This data type is a response parameter of CreateIdentityProvider, DescribeIdentityProvider, GetIdentityProviderByIdentifier, and UpdateIdentityProvider.

    * @public */ export interface IdentityProviderType { /** - *

    The user pool ID.

    + *

    The ID of the user pool associated with the IdP.

    * @public */ UserPoolId?: string | undefined; /** - *

    The IdP name.

    + *

    A friendly name for the IdP.

    * @public */ ProviderName?: string | undefined; /** - *

    The IdP type.

    + *

    The type of IdP. Either SAML, OIDC, or a named social identity provider.

    * @public */ ProviderType?: IdentityProviderTypeType | undefined; @@ -4629,7 +5372,11 @@ export interface IdentityProviderType { AttributeMapping?: Record | undefined; /** - *

    A list of IdP identifiers.

    + *

    A list of IdP identifiers. IdP identifiers are strings that represent friendly names + * or domain names of IdPs, for example MyIdP or + * auth.example.com. You can choose to route user authorization requests to + * the right IdP with either IdP identifiers or IdP names. For more information, see + * identity_provider and idp_identifier at Authorize endpoint.

    * @public */ IdpIdentifiers?: string[] | undefined; @@ -4682,18 +5429,156 @@ export class DuplicateProviderException extends __BaseException { } /** - *

    A resource server scope.

    + * @public + */ +export interface CreateManagedLoginBrandingRequest { + /** + *

    The ID of the user pool where you want to create a new branding style.

    + * @public + */ + UserPoolId: string | undefined; + + /** + *

    The app client that you want to create the branding style for. Each style is + * permanently linked to an app client. To change the style for an app client, delete the + * existing style with DeleteManagedLoginBranding and create a new one.

    + * @public + */ + ClientId: string | undefined; + + /** + *

    When true, applies the default branding style options. This option reverts to default + * style options that are managed by Amazon Cognito. You can modify them later in the branding + * designer.

    + *

    When you specify true for this option, you must also omit values for + * Settings and Assets in the request.

    + * @public + */ + UseCognitoProvidedValues?: boolean | undefined; + + /** + *

    A JSON file, encoded as a Document type, with the the settings that you + * want to apply to your style.

    + * @public + */ + Settings?: __DocumentType | undefined; + + /** + *

    An array of image files that you want to apply to roles like backgrounds, logos, and + * icons. Each object must also indicate whether it is for dark mode, light mode, or + * browser-adaptive mode.

    + * @public + */ + Assets?: AssetType[] | undefined; +} + +/** + *

    A managed login branding style that's assigned to a user pool app client.

    + *

    This data type is a response parameter of CreateManagedLoginBranding, UpdateManagedLoginBranding, DescribeManagedLoginBranding, and DescribeManagedLoginBrandingByClient.

    + * @public + */ +export interface ManagedLoginBrandingType { + /** + *

    The ID of the managed login branding style.

    + * @public + */ + ManagedLoginBrandingId?: string | undefined; + + /** + *

    The user pool where the branding style is assigned.

    + * @public + */ + UserPoolId?: string | undefined; + + /** + *

    When true, applies the default branding style options. This option reverts to a + * "blank" style that you can modify later in the branding designer.

    + * @public + */ + UseCognitoProvidedValues?: boolean | undefined; + + /** + *

    A JSON file, encoded as a Document type, with the the settings that you + * want to apply to your style.

    + * @public + */ + Settings?: __DocumentType | undefined; + + /** + *

    An array of image files that you want to apply to roles like backgrounds, logos, and + * icons. Each object must also indicate whether it is for dark mode, light mode, or + * browser-adaptive mode.

    + * @public + */ + Assets?: AssetType[] | undefined; + + /** + *

    The date and time when the item was created. Amazon Cognito returns this timestamp in UNIX epoch time format. Your SDK might render the output in a + * human-readable format like ISO 8601 or a Java Date object.

    + * @public + */ + CreationDate?: Date | undefined; + + /** + *

    The date and time when the item was modified. Amazon Cognito returns this timestamp in UNIX epoch time format. Your SDK might render the output in a + * human-readable format like ISO 8601 or a Java Date object.

    + * @public + */ + LastModifiedDate?: Date | undefined; +} + +/** + * @public + */ +export interface CreateManagedLoginBrandingResponse { + /** + *

    The details of the branding style that you created.

    + * @public + */ + ManagedLoginBranding?: ManagedLoginBrandingType | undefined; +} + +/** + *

    This exception is thrown when you attempt to apply a managed login branding style to + * an app client that already has an assigned style.

    + * @public + */ +export class ManagedLoginBrandingExistsException extends __BaseException { + readonly name: "ManagedLoginBrandingExistsException" = "ManagedLoginBrandingExistsException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "ManagedLoginBrandingExistsException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, ManagedLoginBrandingExistsException.prototype); + } +} + +/** + *

    One custom scope associated with a user pool resource server. This data type is a + * member of ResourceServerScopeType. For more information, see + * Scopes, M2M, and API authorization with resource servers.

    + *

    This data type is a request parameter of CreateResourceServer and a response parameter of DescribeResourceServer.

    * @public */ export interface ResourceServerScopeType { /** - *

    The name of the scope.

    + *

    The name of the scope. Amazon Cognito renders custom scopes in the format + * resourceServerIdentifier/ScopeName. For example, if this parameter is + * exampleScope in the resource server with the identifier + * exampleResourceServer, you request and receive the scope + * exampleResourceServer/exampleScope.

    * @public */ ScopeName: string | undefined; /** - *

    A description of the scope.

    + *

    A friendly description of a custom scope.

    * @public */ ScopeDescription: string | undefined; @@ -4735,12 +5620,14 @@ export interface CreateResourceServerRequest { } /** - *

    A container for information about a resource server for a user pool.

    + *

    The details of a resource server configuration and associated custom scopes in a user + * pool.

    + *

    This data type is a request parameter of CreateResourceServer and a response parameter of DescribeResourceServer.

    * @public */ export interface ResourceServerType { /** - *

    The user pool ID for the user pool that hosts the resource server.

    + *

    The ID of the user pool that contains the resource server configuration.

    * @public */ UserPoolId?: string | undefined; @@ -4825,30 +5712,32 @@ export const UserImportJobStatusType = { export type UserImportJobStatusType = (typeof UserImportJobStatusType)[keyof typeof UserImportJobStatusType]; /** - *

    The user import job type.

    + *

    A user import job in a user pool. Describes the status of user import with a CSV file. + * For more information, see Importing users into user pools from a CSV file.

    + *

    This data type is a request parameter of CreateUserImportJob, DescribeUserImportJob, ListUserImportJobs, StartUserImportJob, and StopUserImportJob.

    * @public */ export interface UserImportJobType { /** - *

    The job name for the user import job.

    + *

    The friendly name of the user import job.

    * @public */ JobName?: string | undefined; /** - *

    The job ID for the user import job.

    + *

    The ID of the user import job.

    * @public */ JobId?: string | undefined; /** - *

    The user pool ID for the user pool that the users are being imported into.

    + *

    The ID of the user pool that the users are being imported into.

    * @public */ UserPoolId?: string | undefined; /** - *

    The pre-signed URL to be used to upload the .csv file.

    + *

    The pre-signed URL target for uploading the CSV file.

    * @public */ PreSignedUrl?: string | undefined; @@ -4995,6 +5884,7 @@ export type DeletionProtectionType = (typeof DeletionProtectionType)[keyof typeo * *

    When you provide a value for any property of DeviceConfiguration, you * activate the device remembering for the user pool.

    + *

    This data type is a request and response parameter of CreateUserPool and UpdateUserPool, and a response parameter of DescribeUserPool.

    *
    * @public */ @@ -5049,6 +5939,8 @@ export type EmailSendingAccountType = (typeof EmailSendingAccountType)[keyof typ * you created your user pool, and in alternate Regions in some cases. For more * information on the supported Regions, see Email settings for Amazon Cognito user pools.

    * + *

    This data type is a request parameter of CreateUserPool, UpdateUserPool, and SetUserPoolMfaConfig, and a response parameter of + * CreateUserPool, UpdateUserPool, and GetUserPoolMfaConfig.

    * @public */ export interface EmailConfigurationType { @@ -5177,6 +6069,7 @@ export type CustomEmailSenderLambdaVersionType = /** *

    The properties of a custom email sender Lambda trigger.

    + *

    This data type is a request and response parameter of CreateUserPool and UpdateUserPool, and a response parameter of DescribeUserPool.

    * @public */ export interface CustomEmailLambdaVersionConfigType { @@ -5211,6 +6104,7 @@ export type CustomSMSSenderLambdaVersionType = /** *

    The properties of a custom SMS sender Lambda trigger.

    + *

    This data type is a request and response parameter of CreateUserPool and UpdateUserPool, and a response parameter of DescribeUserPool.

    * @public */ export interface CustomSMSLambdaVersionConfigType { @@ -5246,6 +6140,7 @@ export type PreTokenGenerationLambdaVersionType = /** *

    The properties of a pre token generation Lambda trigger.

    + *

    This data type is a request and response parameter of CreateUserPool and UpdateUserPool, and a response parameter of DescribeUserPool.

    * @public */ export interface PreTokenGenerationVersionConfigType { @@ -5266,100 +6161,119 @@ export interface PreTokenGenerationVersionConfigType { } /** - *

    Specifies the configuration for Lambda triggers.

    + *

    A collection of user pool Lambda triggers. Amazon Cognito invokes triggers at several possible + * stages of user pool operations. Triggers can modify the outcome of the operations that + * invoked them.

    + *

    This data type is a request and response parameter of CreateUserPool and UpdateUserPool, and a response parameter of DescribeUserPool.

    * @public */ export interface LambdaConfigType { /** - *

    A pre-registration Lambda trigger.

    + *

    The configuration of a pre sign-up Lambda trigger in a user pool. This trigger + * evaluates new users and can bypass confirmation, link a federated user profile, or block sign-up + * requests.

    * @public */ PreSignUp?: string | undefined; /** - *

    A custom Message Lambda trigger.

    + *

    A custom message Lambda trigger. This trigger is an opportunity to customize all SMS + * and email messages from your user pool. When a custom message trigger is active, your + * user pool routes all messages to a Lambda function that returns a runtime-customized + * message subject and body for your user pool to deliver to a user.

    * @public */ CustomMessage?: string | undefined; /** - *

    A post-confirmation Lambda trigger.

    + *

    The configuration of a post confirmation Lambda trigger in a user pool. This + * trigger can take custom actions after a user confirms their user account and their email + * address or phone number.

    * @public */ PostConfirmation?: string | undefined; /** - *

    A pre-authentication Lambda trigger.

    + *

    The configuration of a pre authentication trigger in a user pool. This trigger + * can evaluate and modify user sign-in events.

    * @public */ PreAuthentication?: string | undefined; /** - *

    A post-authentication Lambda trigger.

    + *

    The configuration of a post authentication Lambda trigger in a user pool. This + * trigger can take custom actions after a user signs in.

    * @public */ PostAuthentication?: string | undefined; /** - *

    Defines the authentication challenge.

    + *

    The configuration of a define auth challenge Lambda trigger, one of three triggers in + * the sequence of the custom authentication challenge triggers.

    * @public */ DefineAuthChallenge?: string | undefined; /** - *

    Creates an authentication challenge.

    + *

    The configuration of a create auth challenge Lambda trigger, one of three triggers in + * the sequence of the custom authentication challenge triggers.

    * @public */ CreateAuthChallenge?: string | undefined; /** - *

    Verifies the authentication challenge response.

    + *

    The configuration of a verify auth challenge Lambda trigger, one of three triggers in + * the sequence of the custom authentication challenge triggers.

    * @public */ VerifyAuthChallengeResponse?: string | undefined; /** - *

    The Amazon Resource Name (ARN) of the function that you want to assign to your Lambda trigger.

    + *

    The legacy configuration of a pre token generation Lambda trigger in a user + * pool.

    *

    Set this parameter for legacy purposes. If you also set an ARN in * PreTokenGenerationConfig, its value must be identical to * PreTokenGeneration. For new instances of pre token generation triggers, * set the LambdaArn of PreTokenGenerationConfig.

    - *

    You can set - *

    * @public */ PreTokenGeneration?: string | undefined; /** - *

    The user migration Lambda config type.

    + *

    The configuration of a migrate user Lambda trigger in a user pool. This trigger + * can create user profiles when users sign in or attempt to reset their password with + * credentials that don't exist yet.

    * @public */ UserMigration?: string | undefined; /** - *

    The detailed configuration of a pre token generation trigger. If you also set an ARN - * in PreTokenGeneration, its value must be identical to + *

    The detailed configuration of a pre token generation Lambda trigger in a user pool. If + * you also set an ARN in PreTokenGeneration, its value must be identical to * PreTokenGenerationConfig.

    * @public */ PreTokenGenerationConfig?: PreTokenGenerationVersionConfigType | undefined; /** - *

    A custom SMS sender Lambda trigger.

    + *

    The configuration of a custom SMS sender Lambda trigger. This trigger routes all SMS + * notifications from a user pool to a Lambda function that delivers the message using + * custom logic.

    * @public */ CustomSMSSender?: CustomSMSLambdaVersionConfigType | undefined; /** - *

    A custom email sender Lambda trigger.

    + *

    The configuration of a custom email sender Lambda trigger. This trigger routes all + * email notifications from a user pool to a Lambda function that delivers the message using + * custom logic.

    * @public */ CustomEmailSender?: CustomEmailLambdaVersionConfigType | undefined; /** - *

    The Amazon Resource Name (ARN) of an KMS key. Amazon Cognito - * uses the key to encrypt codes and temporary passwords sent to - * CustomEmailSender and CustomSMSSender.

    + *

    The ARN of an KMS key. Amazon Cognito uses the key to encrypt codes and temporary passwords sent to + * custom sender Lambda triggers.

    * @public */ KMSKeyID?: string | undefined; @@ -5381,7 +6295,9 @@ export const UserPoolMfaType = { export type UserPoolMfaType = (typeof UserPoolMfaType)[keyof typeof UserPoolMfaType]; /** - *

    The password policy type.

    + *

    The password policy settings for a user pool, including complexity, history, and + * length requirements.

    + *

    This data type is a request and response parameter of CreateUserPool and UpdateUserPool, and a response parameter of DescribeUserPool.

    * @public */ export interface PasswordPolicyType { @@ -5393,29 +6309,29 @@ export interface PasswordPolicyType { MinimumLength?: number | undefined; /** - *

    In the password policy that you have set, refers to whether you have required users to - * use at least one uppercase letter in their password.

    + *

    The requirement in a password policy that users must include at least one uppercase + * letter in their password.

    * @public */ RequireUppercase?: boolean | undefined; /** - *

    In the password policy that you have set, refers to whether you have required users to - * use at least one lowercase letter in their password.

    + *

    The requirement in a password policy that users must include at least one lowercase + * letter in their password.

    * @public */ RequireLowercase?: boolean | undefined; /** - *

    In the password policy that you have set, refers to whether you have required users to - * use at least one number in their password.

    + *

    The requirement in a password policy that users must include at least one number in + * their password.

    * @public */ RequireNumbers?: boolean | undefined; /** - *

    In the password policy that you have set, refers to whether you have required users to - * use at least one symbol in their password.

    + *

    The requirement in a password policy that users must include at least one symbol in + * their password.

    * @public */ RequireSymbols?: boolean | undefined; @@ -5447,22 +6363,47 @@ export interface PasswordPolicyType { } /** - *

    The policy associated with a user pool.

    + *

    The policy for allowed types of authentication in a user pool.

    + *

    This data type is a request and response parameter of CreateUserPool and UpdateUserPool, and a response parameter of DescribeUserPool.

    + * @public + */ +export interface SignInPolicyType { + /** + *

    The sign-in methods that a user pool supports as the first factor. You can permit + * users to start authentication with a standard username and password, or with other + * one-time password and hardware factors.

    + * @public + */ + AllowedFirstAuthFactors?: AuthFactorType[] | undefined; +} + +/** + *

    A list of user pool policies. Contains the policy that sets password-complexity + * requirements.

    + *

    This data type is a request and response parameter of CreateUserPool and UpdateUserPool, and a response parameter of DescribeUserPool.

    * @public */ export interface UserPoolPolicyType { /** - *

    The password policy.

    + *

    The password policy settings for a user pool, including complexity, history, and + * length requirements.

    * @public */ PasswordPolicy?: PasswordPolicyType | undefined; + + /** + *

    The policy for allowed types of authentication in a user pool.

    + * @public + */ + SignInPolicy?: SignInPolicyType | undefined; } /** - *

    The SMS configuration type is the settings that your Amazon Cognito user pool must use to send - * an SMS message from your Amazon Web Services account through Amazon Simple Notification Service. To send SMS + *

    User pool configuration for delivery of SMS messages with Amazon Simple Notification Service. To send SMS * messages with Amazon SNS in the Amazon Web Services Region that you want, the Amazon Cognito user pool uses an * Identity and Access Management (IAM) role in your Amazon Web Services account.

    + *

    This data type is a request parameter of CreateUserPool, UpdateUserPool, and SetUserPoolMfaConfig, and a response parameter of + * CreateUserPool, UpdateUserPool, and GetUserPoolMfaConfig.

    * @public */ export interface SmsConfigurationType { @@ -5486,8 +6427,7 @@ export interface SmsConfigurationType { * ExternalId.

    *

    For more information about the ExternalId of a role, see How to use an * external ID when granting access to your Amazon Web Services resources to a third - * party - *

    + * party.

    * @public */ ExternalId?: string | undefined; @@ -5509,6 +6449,7 @@ export interface SmsConfigurationType { * a user-pool setting that tells Amazon Cognito how to handle changes to the value of your users' email address and phone number attributes. For * more information, see * Verifying updates to email addresses and phone numbers.

    + *

    This data type is a request and response parameter of CreateUserPool and UpdateUserPool, and a response parameter of DescribeUserPool.

    * @public */ export interface UserAttributeUpdateSettingsType { @@ -5545,7 +6486,8 @@ export const UsernameAttributeType = { export type UsernameAttributeType = (typeof UsernameAttributeType)[keyof typeof UsernameAttributeType]; /** - *

    The username configuration type.

    + *

    The configuration of a user pool for username case sensitivity.

    + *

    This data type is a request and response parameter of CreateUserPool and UpdateUserPool, and a response parameter of DescribeUserPool.

    * @public */ export interface UsernameConfigurationType { @@ -5557,16 +6499,16 @@ export interface UsernameConfigurationType { * capitalization of their user name.

    *

    Valid values include:

    *
    - *
    True
    + *
    true
    *
    *

    Enables case sensitivity for all username input. When this option is set - * to True, users must sign in using the exact capitalization of + * to true, users must sign in using the exact capitalization of * their given username, such as “UserName”. This is the default value.

    *
    - *
    False
    + *
    false
    *
    *

    Enables case insensitivity for all username input. For example, when this - * option is set to False, users can sign in using + * option is set to false, users can sign in using * username, USERNAME, or UserName. * This option also enables both preferred_username and * email alias to be case insensitive, in addition to the @@ -5584,14 +6526,14 @@ export interface UsernameConfigurationType { * configure automatic security responses to risky traffic to your user pool, set to * ENFORCED.

    *

    For more information, see Adding advanced security to a user pool.

    + *

    This data type is a request and response parameter of CreateUserPool and UpdateUserPool, and a response parameter of DescribeUserPool.

    * @public */ export interface UserPoolAddOnsType { /** - *

    The operating mode of advanced security features for standard authentication types - * in your user pool, including username-password and secure remote password (SRP) - * authentication. - *

    + *

    The operating mode of advanced security features for standard authentication types in + * your user pool, including username-password and secure remote password (SRP) + * authentication.

    * @public */ AdvancedSecurityMode: AdvancedSecurityModeType | undefined; @@ -5605,6 +6547,21 @@ export interface UserPoolAddOnsType { AdvancedSecurityAdditionalFlows?: AdvancedSecurityAdditionalFlowsType | undefined; } +/** + * @public + * @enum + */ +export const UserPoolTierType = { + ESSENTIALS: "ESSENTIALS", + LITE: "LITE", + PLUS: "PLUS", +} as const; + +/** + * @public + */ +export type UserPoolTierType = (typeof UserPoolTierType)[keyof typeof UserPoolTierType]; + /** * @public * @enum @@ -5620,7 +6577,9 @@ export const DefaultEmailOptionType = { export type DefaultEmailOptionType = (typeof DefaultEmailOptionType)[keyof typeof DefaultEmailOptionType]; /** - *

    The template for verification messages.

    + *

    The template for the verification message that your user pool delivers to users who + * set an email address or phone number attribute.

    + *

    This data type is a request and response parameter of CreateUserPool and UpdateUserPool, and a response parameter of DescribeUserPool.

    * @public */ export interface VerificationMessageTemplateType { @@ -5664,7 +6623,11 @@ export interface VerificationMessageTemplateType { EmailSubjectByLink?: string | undefined; /** - *

    The default email option.

    + *

    The configuration of verification emails to contain a clickable link or a verification + * code.

    + *

    For link, your template body must contain link text in the format \{##Click + * here##\}. "Click here" in the example is a customizable string. For code, your + * template body must contain a code placeholder in the format \{####\}.

    * @public */ DefaultEmailOption?: DefaultEmailOptionType | undefined; @@ -5700,17 +6663,9 @@ export interface CreateUserPoolRequest { DeletionProtection?: DeletionProtectionType | undefined; /** - *

    The Lambda trigger configuration information for the new user pool.

    - * - *

    In a push model, event sources (such as Amazon S3 and custom applications) need - * permission to invoke a function. So you must make an extra call to add permission - * for these event sources to invoke your Lambda function.

    - *

    - *

    For more information on using the Lambda API to add permission, see - * AddPermission .

    - *

    For adding permission using the CLI, see add-permission - * .

    - *
    + *

    A collection of user pool Lambda triggers. Amazon Cognito invokes triggers at several possible + * stages of authentication operations. Triggers can modify the outcome of the operations + * that invoked them.

    * @public */ LambdaConfig?: LambdaConfigType | undefined; @@ -5754,8 +6709,14 @@ export interface CreateUserPoolRequest { EmailVerificationSubject?: string | undefined; /** - *

    The template for the verification message that the user sees when the app requests - * permission to access the user's information.

    + *

    The template for the verification message that your user pool delivers to users who + * set an email address or phone number attribute.

    + *

    Set the email message type that corresponds to your DefaultEmailOption + * selection. For CONFIRM_WITH_LINK, specify an + * EmailMessageByLink and leave EmailMessage blank. For + * CONFIRM_WITH_CODE, specify an EmailMessage and leave + * EmailMessageByLink blank. When you supply both parameters with either + * choice, Amazon Cognito returns an error.

    * @public */ VerificationMessageTemplate?: VerificationMessageTemplateType | undefined; @@ -5865,6 +6826,14 @@ export interface CreateUserPoolRequest { * @public */ AccountRecoverySetting?: AccountRecoverySettingType | undefined; + + /** + *

    The user pool feature plan, or tier. This parameter determines the + * eligibility of the user pool for features like managed login, access-token + * customization, and threat protection. Defaults to ESSENTIALS.

    + * @public + */ + UserPoolTier?: UserPoolTierType | undefined; } /** @@ -5882,7 +6851,8 @@ export const StatusType = { export type StatusType = (typeof StatusType)[keyof typeof StatusType]; /** - *

    A container for information about the user pool.

    + *

    The configuration of a user pool.

    + *

    This data type is a response parameter of CreateUserPool, UpdateUserPool, and DescribeUserPool.

    * @public */ export interface UserPoolType { @@ -5899,7 +6869,8 @@ export interface UserPoolType { Name?: string | undefined; /** - *

    The policies associated with the user pool.

    + *

    A list of user pool policies. Contains the policy that sets password-complexity + * requirements.

    * @public */ Policies?: UserPoolPolicyType | undefined; @@ -5917,7 +6888,9 @@ export interface UserPoolType { DeletionProtection?: DeletionProtectionType | undefined; /** - *

    The Lambda triggers associated with the user pool.

    + *

    A collection of user pool Lambda triggers. Amazon Cognito invokes triggers at several possible + * stages of user pool operations. Triggers can modify the outcome of the operations that + * invoked them.

    * @public */ LambdaConfig?: LambdaConfigType | undefined; @@ -5950,9 +6923,9 @@ export interface UserPoolType { * prefix, and developer attributes with a dev: prefix. For more information, * see User pool * attributes.

    - *

    Developer-only attributes are a legacy feature of user pools, are read-only to all app - * clients. You can create and update developer-only attributes only with IAM-authenticated - * API operations. Use app client read/write permissions instead.

    + *

    Developer-only attributes are a legacy feature of user pools, and are read-only to all + * app clients. You can create and update developer-only attributes only with + * IAM-authenticated API operations. Use app client read/write permissions instead.

    * @public */ SchemaAttributes?: SchemaAttributeType[] | undefined; @@ -5964,7 +6937,8 @@ export interface UserPoolType { AutoVerifiedAttributes?: VerifiedAttributeType[] | undefined; /** - *

    The attributes that are aliased in a user pool.

    + *

    Attributes supported as an alias for this user pool. An alias is an attribute that + * users can enter as an alternative username. Possible values: phone_number, email, or preferred_username.

    * @public */ AliasAttributes?: AliasAttributeType[] | undefined; @@ -5995,7 +6969,8 @@ export interface UserPoolType { EmailVerificationSubject?: string | undefined; /** - *

    The template for verification messages.

    + *

    The template for the verification message that your user pool delivers to users who + * set an email address or phone number attribute.

    * @public */ VerificationMessageTemplate?: VerificationMessageTemplateType | undefined; @@ -6064,10 +7039,9 @@ export interface UserPoolType { EmailConfiguration?: EmailConfigurationType | undefined; /** - *

    The SMS configuration with the settings that your Amazon Cognito user pool must use to send an - * SMS message from your Amazon Web Services account through Amazon Simple Notification Service. To send SMS messages - * with Amazon SNS in the Amazon Web Services Region that you want, the Amazon Cognito user pool uses an Identity and Access Management - * (IAM) role in your Amazon Web Services account.

    + *

    User pool configuration for delivery of SMS messages with Amazon Simple Notification Service. To send SMS + * messages with Amazon SNS in the Amazon Web Services Region that you want, the Amazon Cognito user pool uses an + * Identity and Access Management (IAM) role in your Amazon Web Services account.

    * @public */ SmsConfiguration?: SmsConfigurationType | undefined; @@ -6144,16 +7118,22 @@ export interface UserPoolType { UserPoolAddOns?: UserPoolAddOnsType | undefined; /** - *

    Case sensitivity of the username input for the selected sign-in option. For example, - * when case sensitivity is set to False, users can sign in using either - * "username" or "Username". This configuration is immutable once it has been set. For more - * information, see UsernameConfigurationType.

    + *

    Case sensitivity of the username input for the selected sign-in option. When case + * sensitivity is set to False (case insensitive), users can sign in with any + * combination of capital and lowercase letters. For example, username, + * USERNAME, or UserName, or for email, + * email@example.com or EMaiL@eXamplE.Com. For most use + * cases, set case sensitivity to False (case insensitive) as a best practice. + * When usernames and email addresses are case insensitive, Amazon Cognito treats any variation in + * case as the same user, and prevents a case variation from being assigned to the same + * attribute for a different user.

    + *

    This configuration is immutable after you set it. For more information, see UsernameConfigurationType.

    * @public */ UsernameConfiguration?: UsernameConfigurationType | undefined; /** - *

    The Amazon Resource Name (ARN) for the user pool.

    + *

    The Amazon Resource Name (ARN) of the user pool.

    * @public */ Arn?: string | undefined; @@ -6168,6 +7148,14 @@ export interface UserPoolType { * @public */ AccountRecoverySetting?: AccountRecoverySettingType | undefined; + + /** + *

    The user pool feature plan, or tier. This parameter determines the + * eligibility of the user pool for features like managed login, access-token + * customization, and threat protection. Defaults to ESSENTIALS.

    + * @public + */ + UserPoolTier?: UserPoolTierType | undefined; } /** @@ -6183,16 +7171,58 @@ export interface CreateUserPoolResponse { } /** - *

    This exception is thrown when a user pool tag can't be set or updated.

    + *

    This exception is thrown when a feature you attempted to configure isn't + * available in your current feature plan.

    * @public */ -export class UserPoolTaggingException extends __BaseException { - readonly name: "UserPoolTaggingException" = "UserPoolTaggingException"; +export class FeatureUnavailableInTierException extends __BaseException { + readonly name: "FeatureUnavailableInTierException" = "FeatureUnavailableInTierException"; readonly $fault: "client" = "client"; /** * @internal */ - constructor(opts: __ExceptionOptionType) { + constructor(opts: __ExceptionOptionType) { + super({ + name: "FeatureUnavailableInTierException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, FeatureUnavailableInTierException.prototype); + } +} + +/** + *

    This exception is thrown when you've attempted to change your feature plan but + * the operation isn't permitted.

    + * @public + */ +export class TierChangeNotAllowedException extends __BaseException { + readonly name: "TierChangeNotAllowedException" = "TierChangeNotAllowedException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "TierChangeNotAllowedException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, TierChangeNotAllowedException.prototype); + } +} + +/** + *

    This exception is thrown when a user pool tag can't be set or updated.

    + * @public + */ +export class UserPoolTaggingException extends __BaseException { + readonly name: "UserPoolTaggingException" = "UserPoolTaggingException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { super({ name: "UserPoolTaggingException", $fault: "client", @@ -6226,6 +7256,7 @@ export const ExplicitAuthFlowsType = { ALLOW_ADMIN_USER_PASSWORD_AUTH: "ALLOW_ADMIN_USER_PASSWORD_AUTH", ALLOW_CUSTOM_AUTH: "ALLOW_CUSTOM_AUTH", ALLOW_REFRESH_TOKEN_AUTH: "ALLOW_REFRESH_TOKEN_AUTH", + ALLOW_USER_AUTH: "ALLOW_USER_AUTH", ALLOW_USER_PASSWORD_AUTH: "ALLOW_USER_PASSWORD_AUTH", ALLOW_USER_SRP_AUTH: "ALLOW_USER_SRP_AUTH", CUSTOM_AUTH_FLOW_ONLY: "CUSTOM_AUTH_FLOW_ONLY", @@ -6269,15 +7300,18 @@ export const TimeUnitsType = { export type TimeUnitsType = (typeof TimeUnitsType)[keyof typeof TimeUnitsType]; /** - *

    The data type TokenValidityUnits specifies the time units you use when you set the - * duration of ID, access, and refresh tokens.

    + *

    The time units that, with IdTokenValidity, + * AccessTokenValidity, and RefreshTokenValidity, set and + * display the duration of ID, access, and refresh tokens for an app client. You can assign + * a separate token validity unit to each type of token.

    + *

    This data type is a request parameter of CreateUserPoolClient and UpdateUserPoolClient, and a response parameter of + * DescribeUserPoolClient.

    * @public */ export interface TokenValidityUnitsType { /** - *

    A time unit of seconds, minutes, hours, or - * days for the value that you set in the AccessTokenValidity - * parameter. The default AccessTokenValidity time unit is hours. + *

    A time unit for the value that you set in the AccessTokenValidity + * parameter. The default AccessTokenValidity time unit is hours. * AccessTokenValidity duration can range from five minutes to one * day.

    * @public @@ -6285,19 +7319,16 @@ export interface TokenValidityUnitsType { AccessToken?: TimeUnitsType | undefined; /** - *

    A time unit of seconds, minutes, hours, or - * days for the value that you set in the IdTokenValidity - * parameter. The default IdTokenValidity time unit is hours. + *

    A time unit for the value that you set in the IdTokenValidity parameter. + * The default IdTokenValidity time unit is hours. * IdTokenValidity duration can range from five minutes to one day.

    * @public */ IdToken?: TimeUnitsType | undefined; /** - *

    A time unit of seconds, minutes, hours, or - * days for the value that you set in the - * RefreshTokenValidity parameter. The default - * RefreshTokenValidity time unit is days. + *

    A time unit for the value that you set in the RefreshTokenValidity + * parameter. The default RefreshTokenValidity time unit is days. * RefreshTokenValidity duration can range from 60 minutes to 10 * years.

    * @public @@ -6438,6 +7469,18 @@ export interface CreateUserPoolClientRequest { *
      *
    • *

      + * ALLOW_USER_AUTH: Enable selection-based sign-in + * with USER_AUTH. This setting covers username-password, + * secure remote password (SRP), passwordless, and passkey authentication. + * This authentiation flow can do username-password and SRP authentication + * without other ExplicitAuthFlows permitting them. For example + * users can complete an SRP challenge through USER_AUTH + * without the flow USER_SRP_AUTH being active for the app + * client. This flow doesn't include CUSTOM_AUTH. + *

      + *
    • + *
    • + *

      * ALLOW_ADMIN_USER_PASSWORD_AUTH: Enable admin based user password * authentication flow ADMIN_USER_PASSWORD_AUTH. This setting replaces * the ADMIN_NO_SRP_AUTH setting. With this authentication flow, your app @@ -6478,6 +7521,11 @@ export interface CreateUserPoolClientRequest { * Google, SignInWithApple, and LoginWithAmazon. * You can also specify the names that you configured for the SAML and OIDC IdPs in your * user pool, for example MySAMLIdP or MyOIDCIdP.

      + *

      This setting applies to providers that you can access with the hosted + * UI and OAuth 2.0 authorization server. The removal of COGNITO + * from this list doesn't prevent authentication operations for local users with the + * user pools API in an Amazon Web Services SDK. The only way to prevent API-based authentication is to + * block access with a WAF rule.

      * @public */ SupportedIdentityProviders?: string[] | undefined; @@ -6653,7 +7701,7 @@ export interface CreateUserPoolClientRequest { /** *

      Activates the propagation of additional user context data. For more information about - * propagation of user context data, see Adding advanced security to a user pool. If you don’t include this + * propagation of user context data, see Adding advanced security to a user pool. If you don’t include this * parameter, you can't send device fingerprint information, including source IP address, * to Amazon Cognito advanced security. You can only activate * EnablePropagateAdditionalUserContextData in an app client that has a @@ -6671,30 +7719,32 @@ export interface CreateUserPoolClientRequest { } /** - *

      Contains information about a user pool client.

      + *

      The configuration of a user pool client.

      + *

      This data type is a request parameter of CreateUserPoolClient and UpdateUserPoolClient, and a response parameter of + * DescribeUserPoolClient.

      * @public */ export interface UserPoolClientType { /** - *

      The user pool ID for the user pool client.

      + *

      The ID of the user pool associated with the app client.

      * @public */ UserPoolId?: string | undefined; /** - *

      The client name from the user pool request of the client type.

      + *

      The name of the app client.

      * @public */ ClientName?: string | undefined; /** - *

      The ID of the client associated with the user pool.

      + *

      The ID of the app client.

      * @public */ ClientId?: string | undefined; /** - *

      The client secret from the user pool request of the client type.

      + *

      The app client secret.

      * @public */ ClientSecret?: string | undefined; @@ -6764,8 +7814,10 @@ export interface UserPoolClientType { IdTokenValidity?: number | undefined; /** - *

      The time units used to specify the token validity times of each token type: ID, - * access, and refresh.

      + *

      The time units that, with IdTokenValidity, + * AccessTokenValidity, and RefreshTokenValidity, set and + * display the duration of ID, access, and refresh tokens for an app client. You can assign + * a separate token validity unit to each type of token.

      * @public */ TokenValidityUnits?: TokenValidityUnitsType | undefined; @@ -6822,6 +7874,18 @@ export interface UserPoolClientType { *
        *
      • *

        + * ALLOW_USER_AUTH: Enable selection-based sign-in + * with USER_AUTH. This setting covers username-password, + * secure remote password (SRP), passwordless, and passkey authentication. + * This authentiation flow can do username-password and SRP authentication + * without other ExplicitAuthFlows permitting them. For example + * users can complete an SRP challenge through USER_AUTH + * without the flow USER_SRP_AUTH being active for the app + * client. This flow doesn't include CUSTOM_AUTH. + *

        + *
      • + *
      • + *

        * ALLOW_ADMIN_USER_PASSWORD_AUTH: Enable admin based user password * authentication flow ADMIN_USER_PASSWORD_AUTH. This setting replaces * the ADMIN_NO_SRP_AUTH setting. With this authentication flow, your app @@ -6857,10 +7921,16 @@ export interface UserPoolClientType { ExplicitAuthFlows?: ExplicitAuthFlowsType[] | undefined; /** - *

        A list of provider names for the IdPs that this client supports. The following are - * supported: COGNITO, Facebook, Google, - * SignInWithApple, LoginWithAmazon, and the names of your - * own SAML and OIDC providers.

        + *

        A list of provider names for the identity providers (IdPs) that are supported on this + * client. The following are supported: COGNITO, Facebook, + * Google, SignInWithApple, and LoginWithAmazon. + * You can also specify the names that you configured for the SAML and OIDC IdPs in your + * user pool, for example MySAMLIdP or MyOIDCIdP.

        + *

        This setting applies to providers that you can access with the hosted + * UI and OAuth 2.0 authorization server. The removal of COGNITO + * from this list doesn't prevent authentication operations for local users with the + * user pools API in an Amazon Web Services SDK. The only way to prevent API-based authentication is to + * block access with a WAF rule.

        * @public */ SupportedIdentityProviders?: string[] | undefined; @@ -6918,7 +7988,9 @@ export interface UserPoolClientType { DefaultRedirectURI?: string | undefined; /** - *

        The allowed OAuth flows.

        + *

        The OAuth grant types that you want your app client to generate. To create an app + * client that generates client credentials grants, you must add + * client_credentials as the only allowed OAuth flow.

        *
        *
        code
        *
        @@ -6943,11 +8015,11 @@ export interface UserPoolClientType { AllowedOAuthFlows?: OAuthFlowType[] | undefined; /** - *

        The OAuth scopes that your app client supports. Possible values that OAuth provides - * are phone, email, openid, and - * profile. Possible values that Amazon Web Services provides are - * aws.cognito.signin.user.admin. Amazon Cognito also supports custom scopes that - * you create in Resource Servers.

        + *

        The OAuth 2.0 scopes that you want your app client to support. Can include standard + * OAuth scopes like phone, email, openid, and + * profile. Can also include the + * aws.cognito.signin.user.admin scope that authorizes user profile + * self-service operations and custom scopes from resource servers.

        * @public */ AllowedOAuthScopes?: string[] | undefined; @@ -6985,11 +8057,13 @@ export interface UserPoolClientType { AllowedOAuthFlowsUserPoolClient?: boolean | undefined; /** - *

        The Amazon Pinpoint analytics configuration for the user pool client.

        + *

        The user pool analytics configuration for collecting metrics and sending them to your + * Amazon Pinpoint campaign.

        * - *

        Amazon Cognito user pools only support sending events to Amazon Pinpoint projects in the US East - * (N. Virginia) us-east-1 Region, regardless of the Region where the user pool - * resides.

        + *

        In Amazon Web Services Regions where Amazon Pinpoint isn't available, user pools only support sending + * events to Amazon Pinpoint projects in Amazon Web Services Region us-east-1. In Regions where Amazon Pinpoint is + * available, user pools support sending events to Amazon Pinpoint projects within that same + * Region.

        *
        * @public */ @@ -7110,8 +8184,8 @@ export class ScopeDoesNotExistException extends __BaseException { } /** - *

        The configuration for a custom domain that hosts the sign-up and sign-in webpages for - * your application.

        + *

        The configuration for a hosted UI custom domain.

        + *

        This data type is a request parameter of CreateUserPoolDomain and UpdateUserPoolDomain.

        * @public */ export interface CustomDomainConfigType { @@ -7136,11 +8210,20 @@ export interface CreateUserPoolDomainRequest { Domain: string | undefined; /** - *

        The user pool ID.

        + *

        The ID of the user pool where you want to add a domain.

        * @public */ UserPoolId: string | undefined; + /** + *

        The version of managed login branding that you want to apply to your domain. A value + * of 1 indicates hosted UI (classic) branding and a version of 2 + * indicates managed login branding.

        + *

        Managed login requires that your user pool be configured for any feature plan other than Lite.

        + * @public + */ + ManagedLoginVersion?: number | undefined; + /** *

        The configuration for a custom domain that hosts the sign-up and sign-in webpages for * your application.

        @@ -7157,6 +8240,14 @@ export interface CreateUserPoolDomainRequest { * @public */ export interface CreateUserPoolDomainResponse { + /** + *

        The version of managed login branding applied your domain. A value of 1 + * indicates hosted UI (classic) branding and a version of 2 indicates managed + * login branding.

        + * @public + */ + ManagedLoginVersion?: number | undefined; + /** *

        The Amazon CloudFront endpoint that you use as the target of the alias that you set up with * your Domain Name Service (DNS) provider. Amazon Cognito returns this value if you set a custom @@ -7221,6 +8312,24 @@ export class UnsupportedIdentityProviderException extends __BaseException { } } +/** + * @public + */ +export interface DeleteManagedLoginBrandingRequest { + /** + *

        The ID of the managed login branding style that you want to delete.

        + * @public + */ + ManagedLoginBrandingId: string | undefined; + + /** + *

        The ID of the user pool that contains the managed login branding style that you want + * to delete.

        + * @public + */ + UserPoolId: string | undefined; +} + /** * @public */ @@ -7332,6 +8441,30 @@ export interface DeleteUserPoolDomainRequest { */ export interface DeleteUserPoolDomainResponse {} +/** + * @public + */ +export interface DeleteWebAuthnCredentialRequest { + /** + *

        A valid access token that Amazon Cognito issued to the user whose passkey you want to + * delete.

        + * @public + */ + AccessToken: string | undefined; + + /** + *

        The unique identifier of the passkey that you want to delete. Look up registered + * devices with ListWebAuthnCredentials.

        + * @public + */ + CredentialId: string | undefined; +} + +/** + * @public + */ +export interface DeleteWebAuthnCredentialResponse {} + /** * @public */ @@ -7360,6 +8493,82 @@ export interface DescribeIdentityProviderResponse { IdentityProvider: IdentityProviderType | undefined; } +/** + * @public + */ +export interface DescribeManagedLoginBrandingRequest { + /** + *

        The ID of the user pool that contains the managed login branding style that you want + * to get information about.

        + * @public + */ + UserPoolId: string | undefined; + + /** + *

        The ID of the managed login branding style that you want to get more information + * about.

        + * @public + */ + ManagedLoginBrandingId: string | undefined; + + /** + *

        When true, returns values for branding options that are unchanged from + * Amazon Cognito defaults. When false or when you omit this parameter, returns only + * values that you customized in your branding style.

        + * @public + */ + ReturnMergedResources?: boolean | undefined; +} + +/** + * @public + */ +export interface DescribeManagedLoginBrandingResponse { + /** + *

        The details of the requested branding style.

        + * @public + */ + ManagedLoginBranding?: ManagedLoginBrandingType | undefined; +} + +/** + * @public + */ +export interface DescribeManagedLoginBrandingByClientRequest { + /** + *

        The ID of the user pool that contains the app client where you want more information + * about the managed login branding style.

        + * @public + */ + UserPoolId: string | undefined; + + /** + *

        The app client that's assigned to the branding style that you want more information + * about.

        + * @public + */ + ClientId: string | undefined; + + /** + *

        When true, returns values for branding options that are unchanged from + * Amazon Cognito defaults. When false or when you omit this parameter, returns only + * values that you customized in your branding style.

        + * @public + */ + ReturnMergedResources?: boolean | undefined; +} + +/** + * @public + */ +export interface DescribeManagedLoginBrandingByClientResponse { + /** + *

        The details of the requested branding style.

        + * @public + */ + ManagedLoginBranding?: ManagedLoginBrandingType | undefined; +} + /** * @public */ @@ -7426,12 +8635,14 @@ export type CompromisedCredentialsEventActionType = (typeof CompromisedCredentialsEventActionType)[keyof typeof CompromisedCredentialsEventActionType]; /** - *

        The compromised credentials actions type.

        + *

        Settings for user pool actions when Amazon Cognito detects compromised credentials with + * advanced security features in full-function ENFORCED mode.

        + *

        This data type is a request parameter of SetRiskConfiguration and a response parameter of DescribeRiskConfiguration.

        * @public */ export interface CompromisedCredentialsActionsType { /** - *

        The event action.

        + *

        The action that Amazon Cognito takes when it detects compromised credentials.

        * @public */ EventAction: CompromisedCredentialsEventActionType | undefined; @@ -7453,79 +8664,87 @@ export const EventFilterType = { export type EventFilterType = (typeof EventFilterType)[keyof typeof EventFilterType]; /** - *

        The compromised credentials risk configuration type.

        + *

        Settings for compromised-credentials actions and authentication-event sources with + * advanced security features in full-function ENFORCED mode.

        + *

        This data type is a request parameter of SetRiskConfiguration and a response parameter of DescribeRiskConfiguration.

        * @public */ export interface CompromisedCredentialsRiskConfigurationType { /** - *

        Perform the action for these events. The default is to perform all events if no event - * filter is specified.

        + *

        Settings for the sign-in activity where you want to configure compromised-credentials + * actions. Defaults to all events.

        * @public */ EventFilter?: EventFilterType[] | undefined; /** - *

        The compromised credentials risk configuration actions.

        + *

        Settings for the actions that you want your user pool to take when Amazon Cognito detects + * compromised credentials.

        * @public */ Actions: CompromisedCredentialsActionsType | undefined; } /** - *

        The type of the configuration to override the risk decision.

        + *

        Exceptions to the risk evaluation configuration, including always-allow and + * always-block IP address ranges.

        + *

        This data type is a request parameter of SetRiskConfiguration and a response parameter of DescribeRiskConfiguration.

        * @public */ export interface RiskExceptionConfigurationType { /** - *

        Overrides the risk decision to always block the pre-authentication requests. The IP - * range is in CIDR notation, a compact representation of an IP address and its routing - * prefix.

        + *

        An always-block IP address list. Overrides the risk decision and always blocks + * authentication requests. This parameter is displayed and set in CIDR notation.

        * @public */ BlockedIPRangeList?: string[] | undefined; /** - *

        Risk detection isn't performed on the IP addresses in this range list. The IP range is - * in CIDR notation.

        + *

        An always-allow IP address list. Risk detection isn't performed on the IP addresses in + * this range list. This parameter is displayed and set in CIDR notation.

        * @public */ SkippedIPRangeList?: string[] | undefined; } /** - *

        The risk configuration type.

        + *

        The settings of risk configuration for threat protection with advanced security + * features in a user pool.

        + *

        This data type is a response parameter of DescribeRiskConfiguration and SetRiskConfiguration.

        * @public */ export interface RiskConfigurationType { /** - *

        The user pool ID.

        + *

        The ID of the user pool that has the risk configuration applied.

        * @public */ UserPoolId?: string | undefined; /** - *

        The app client ID.

        + *

        The app client where this configuration is applied. When this parameter isn't present, + * the risk configuration applies to all user pool app clients that don't have + * client-level settings.

        * @public */ ClientId?: string | undefined; /** - *

        The compromised credentials risk configuration object, including the - * EventFilter and the EventAction.

        + *

        Settings for compromised-credentials actions and authentication types with advanced + * security features in full-function ENFORCED mode.

        * @public */ CompromisedCredentialsRiskConfiguration?: CompromisedCredentialsRiskConfigurationType | undefined; /** - *

        The account takeover risk configuration object, including the - * NotifyConfiguration object and Actions to take if there is - * an account takeover.

        + *

        The settings for automated responses and notification templates for adaptive + * authentication with advanced security features.

        * @public */ AccountTakeoverRiskConfiguration?: AccountTakeoverRiskConfigurationType | undefined; /** - *

        The configuration to override the risk decision.

        + *

        Exceptions to the risk evaluation configuration, including always-allow and + * always-block IP address ranges.

        * @public */ RiskExceptionConfiguration?: RiskExceptionConfigurationType | undefined; @@ -7666,18 +8885,20 @@ export const DomainStatusType = { export type DomainStatusType = (typeof DomainStatusType)[keyof typeof DomainStatusType]; /** - *

        A container for information about a domain.

        + *

        A container for information about the user pool domain associated with the hosted UI + * and OAuth endpoints.

        + *

        This data type is a response parameter of DescribeUserPoolDomain.

        * @public */ export interface DomainDescriptionType { /** - *

        The user pool ID.

        + *

        The ID of the user pool that the domain is attached to.

        * @public */ UserPoolId?: string | undefined; /** - *

        The Amazon Web Services ID for the user pool owner.

        + *

        The Amazon Web Services account that you created the user pool in.

        * @public */ AWSAccountId?: string | undefined; @@ -7697,8 +8918,7 @@ export interface DomainDescriptionType { S3Bucket?: string | undefined; /** - *

        The Amazon CloudFront endpoint that you use as the target of the alias that you set up with - * your Domain Name Service (DNS) provider.

        + *

        The Amazon CloudFront endpoint that hosts your custom domain.

        * @public */ CloudFrontDistribution?: string | undefined; @@ -7721,6 +8941,15 @@ export interface DomainDescriptionType { * @public */ CustomDomainConfig?: CustomDomainConfigType | undefined; + + /** + *

        The version of managed login branding that you want to apply to your domain. A value + * of 1 indicates hosted UI (classic) branding and a version of 2 + * indicates managed login branding.

        + *

        Managed login requires that your user pool be configured for any feature plan other than Lite.

        + * @public + */ + ManagedLoginVersion?: number | undefined; } /** @@ -7838,6 +9067,8 @@ export interface ForgotPasswordRequest { /** *

        The delivery details for an email or SMS message that Amazon Cognito sent for authentication or * verification.

        + *

        This data type is a response parameter of operations that send a code for user profile + * confirmation, verification, or management, for example ForgotPassword and SignUp.

        * @public */ export interface CodeDeliveryDetailsType { @@ -8007,6 +9238,8 @@ export interface GetLogDeliveryConfigurationRequest { /** *

        Configuration for the CloudWatch log group destination of user pool detailed activity * logging, or of user activity log export with advanced security features.

        + *

        This data type is a request parameter of SetLogDeliveryConfiguration and a response parameter of + * GetLogDeliveryConfiguration.

        * @public */ export interface CloudWatchLogsConfigurationType { @@ -8080,7 +9313,10 @@ export interface S3ConfigurationType { } /** - *

        The logging parameters of a user pool.

        + *

        The configuration of user event logs to an external Amazon Web Services service like + * Amazon Data Firehose, Amazon S3, or Amazon CloudWatch Logs.

        + *

        This data type is a request parameter of SetLogDeliveryConfiguration and a response parameter of + * GetLogDeliveryConfiguration.

        * @public */ export interface LogConfigurationType { @@ -8129,8 +9365,7 @@ export interface LogConfigurationType { } /** - *

        The logging parameters of a user pool returned in response to - * GetLogDeliveryConfiguration.

        + *

        The logging parameters of a user pool, as returned in the response to a GetLogDeliveryConfiguration request.

        * @public */ export interface LogDeliveryConfigurationType { @@ -8201,31 +9436,35 @@ export interface GetUICustomizationRequest { } /** - *

        A container for the UI customization information for a user pool's built-in app - * UI.

        + *

        A container for the UI customization information for the hosted UI in a user + * pool.

        + *

        This data type is a response parameter of GetUICustomization.

        * @public */ export interface UICustomizationType { /** - *

        The user pool ID for the user pool.

        + *

        The ID of the user pool with hosted UI customizations.

        * @public */ UserPoolId?: string | undefined; /** - *

        The client ID for the client app.

        + *

        The app client ID for your UI customization. When this value isn't present, the + * customization applies to all user pool app clients that don't have client-level + * settings..

        * @public */ ClientId?: string | undefined; /** - *

        The logo image for the UI customization.

        + *

        A URL path to the hosted logo image of your UI customization.

        * @public */ ImageUrl?: string | undefined; /** - *

        The CSS values in the UI customization.

        + *

        The CSS values in the UI customization. To get a template with your UI customization + * options, make a GetUiCustomization request.

        * @public */ CSS?: string | undefined; @@ -8313,7 +9552,8 @@ export interface GetUserResponse { /** *

        The MFA options that are activated for the user. The possible values in this list are - * SMS_MFA, EMAIL_OTP, and SOFTWARE_TOKEN_MFA.

        + * SMS_MFA, EMAIL_OTP, and + * SOFTWARE_TOKEN_MFA.

        * @public */ UserMFASettingList?: string[] | undefined; @@ -8389,6 +9629,50 @@ export interface GetUserAttributeVerificationCodeResponse { CodeDeliveryDetails?: CodeDeliveryDetailsType | undefined; } +/** + * @public + */ +export interface GetUserAuthFactorsRequest { + /** + *

        A valid access token that Amazon Cognito issued to the user whose authentication factors you + * want to view.

        + * @public + */ + AccessToken: string | undefined; +} + +/** + * @public + */ +export interface GetUserAuthFactorsResponse { + /** + *

        The username of the currently sign-in user.

        + * @public + */ + Username: string | undefined; + + /** + *

        The user's preferred MFA setting.

        + * @public + */ + PreferredMfaSetting?: string | undefined; + + /** + *

        The MFA options that are activated for the user. The possible values in this list are + * SMS_MFA, EMAIL_OTP, and + * SOFTWARE_TOKEN_MFA.

        + * @public + */ + UserMFASettingList?: string[] | undefined; + + /** + *

        The authentication types that are available to the user with USER_AUTH + * sign-in.

        + * @public + */ + ConfiguredUserAuthFactors?: AuthFactorType[] | undefined; +} + /** * @public */ @@ -8404,6 +9688,7 @@ export interface GetUserPoolMfaConfigRequest { *

        Sets or shows user pool email message configuration for MFA. Includes the subject and * body of the email message template for MFA messages. To activate this setting, * advanced security features must be active in your user pool.

        + *

        This data type is a request parameter of SetUserPoolMfaConfig and a response parameter of GetUserPoolMfaConfig.

        * @public */ export interface EmailMfaConfigType { @@ -8425,38 +9710,41 @@ export interface EmailMfaConfigType { } /** - *

        Configures user pool SMS messages for multi-factor authentication (MFA). Sets the - * message template and the SMS message sending configuration for Amazon SNS.

        + *

        The configuration of multi-factor authentication (MFA) with SMS messages in a user + * pool.

        + *

        This data type is a request parameter of SetUserPoolMfaConfig and a response parameter of GetUserPoolMfaConfig.

        * @public */ export interface SmsMfaConfigType { /** - *

        The SMS message that your user pool sends to users with an MFA code. The message must - * contain the \{####\} placeholder. In the message, Amazon Cognito replaces this - * placeholder with the code. If you don't provide this parameter, Amazon Cognito sends - * messages in the default format.

        + *

        The SMS authentication message that will be sent to users with the code they must sign + * in with. The message must contain the \{####\} placeholder. Your user pool + * replaces the placeholder with the MFA code. If this parameter isn't provided, your user + * pool sends a default message.

        * @public */ SmsAuthenticationMessage?: string | undefined; /** - *

        The SMS configuration with the settings that your Amazon Cognito user pool must use to send an - * SMS message from your Amazon Web Services account through Amazon Simple Notification Service. To request Amazon SNS in - * the Amazon Web Services Region that you want, the Amazon Cognito user pool uses an Identity and Access Management (IAM) role that - * you provide for your Amazon Web Services account.

        + *

        User pool configuration for delivery of SMS messages with Amazon Simple Notification Service. To send SMS + * messages with Amazon SNS in the Amazon Web Services Region that you want, the Amazon Cognito user pool uses an + * Identity and Access Management (IAM) role in your Amazon Web Services account.

        + *

        You can set SmsConfiguration in CreateUserPool and + * UpdateUserPool, or in SetUserPoolMfaConfig.

        * @public */ SmsConfiguration?: SmsConfigurationType | undefined; } /** - *

        Configures a user pool for time-based one-time password (TOTP) multi-factor - * authentication (MFA). Enables or disables TOTP.

        + *

        Settings for time-based one-time password (TOTP) multi-factor authentication (MFA) in + * a user pool. Enables and disables availability of this feature.

        + *

        This data type is a request parameter of SetUserPoolMfaConfig and a response parameter of GetUserPoolMfaConfig.

        * @public */ export interface SoftwareTokenMfaConfigType { /** - *

        Specifies whether software token MFA is activated.

        + *

        The activation state of TOTP MFA.

        * @public */ Enabled?: boolean | undefined; @@ -8464,1324 +9752,44 @@ export interface SoftwareTokenMfaConfigType { /** * @public + * @enum */ -export interface GetUserPoolMfaConfigResponse { - /** - *

        Shows user pool SMS message configuration for MFA. Includes the message template and - * the SMS message sending configuration for Amazon SNS.

        - * @public - */ - SmsMfaConfiguration?: SmsMfaConfigType | undefined; - - /** - *

        Shows user pool configuration for time-based one-time password (TOTP) MFA. Includes - * TOTP enabled or disabled state.

        - * @public - */ - SoftwareTokenMfaConfiguration?: SoftwareTokenMfaConfigType | undefined; +export const UserVerificationType = { + PREFERRED: "preferred", + REQUIRED: "required", +} as const; - /** - *

        Shows user pool email message configuration for MFA. Includes the subject and body of - * the email message template for MFA messages. To activate this setting, - * advanced security features must be active in your user pool.

        - * @public - */ - EmailMfaConfiguration?: EmailMfaConfigType | undefined; +/** + * @public + */ +export type UserVerificationType = (typeof UserVerificationType)[keyof typeof UserVerificationType]; - /** - *

        The multi-factor authentication (MFA) configuration. Valid values include:

        - *
          - *
        • - *

          - * OFF MFA won't be used for any users.

          - *
        • - *
        • - *

          - * ON MFA is required for all users to sign in.

          - *
        • - *
        • - *

          - * OPTIONAL MFA will be required only for individual users who have - * an MFA factor activated.

          - *
        • - *
        - * @public - */ - MfaConfiguration?: UserPoolMfaType | undefined; -} +/** + * @internal + */ +export const AdminAddUserToGroupRequestFilterSensitiveLog = (obj: AdminAddUserToGroupRequest): any => ({ + ...obj, + ...(obj.Username && { Username: SENSITIVE_STRING }), +}); /** - *

        Represents the request to sign out all devices.

        - * @public + * @internal */ -export interface GlobalSignOutRequest { - /** - *

        A valid access token that Amazon Cognito issued to the user who you want to sign out.

        - * @public - */ - AccessToken: string | undefined; -} +export const AdminConfirmSignUpRequestFilterSensitiveLog = (obj: AdminConfirmSignUpRequest): any => ({ + ...obj, + ...(obj.Username && { Username: SENSITIVE_STRING }), +}); /** - *

        The response to the request to sign out all devices.

        - * @public + * @internal */ -export interface GlobalSignOutResponse {} +export const AttributeTypeFilterSensitiveLog = (obj: AttributeType): any => ({ + ...obj, + ...(obj.Value && { Value: SENSITIVE_STRING }), +}); /** - *

        Initiates the authentication request.

        - * @public - */ -export interface InitiateAuthRequest { - /** - *

        The authentication flow for this call to run. The API action will depend on this - * value. For example:

        - *
          - *
        • - *

          - * REFRESH_TOKEN_AUTH takes in a valid refresh token and returns new - * tokens.

          - *
        • - *
        • - *

          - * USER_SRP_AUTH takes in USERNAME and - * SRP_A and returns the SRP variables to be used for next - * challenge execution.

          - *
        • - *
        • - *

          - * USER_PASSWORD_AUTH takes in USERNAME and - * PASSWORD and returns the next challenge or tokens.

          - *
        • - *
        - *

        Valid values include:

        - *
          - *
        • - *

          - * USER_SRP_AUTH: Authentication flow for the Secure Remote Password - * (SRP) protocol.

          - *
        • - *
        • - *

          - * REFRESH_TOKEN_AUTH/REFRESH_TOKEN: Authentication - * flow for refreshing the access token and ID token by supplying a valid refresh - * token.

          - *
        • - *
        • - *

          - * CUSTOM_AUTH: Custom authentication flow.

          - *
        • - *
        • - *

          - * USER_PASSWORD_AUTH: Non-SRP authentication flow; user name and - * password are passed directly. If a user migration Lambda trigger is set, this - * flow will invoke the user migration Lambda if it doesn't find the user name in - * the user pool.

          - *
        • - *
        - *

        - * ADMIN_NO_SRP_AUTH isn't a valid value.

        - * @public - */ - AuthFlow: AuthFlowType | undefined; - - /** - *

        The authentication parameters. These are inputs corresponding to the - * AuthFlow that you're invoking. The required values depend on the value - * of AuthFlow:

        - *
          - *
        • - *

          For USER_SRP_AUTH: USERNAME (required), - * SRP_A (required), SECRET_HASH (required if the app - * client is configured with a client secret), DEVICE_KEY.

          - *
        • - *
        • - *

          For USER_PASSWORD_AUTH: USERNAME (required), - * PASSWORD (required), SECRET_HASH (required if the - * app client is configured with a client secret), DEVICE_KEY.

          - *
        • - *
        • - *

          For REFRESH_TOKEN_AUTH/REFRESH_TOKEN: REFRESH_TOKEN - * (required), SECRET_HASH (required if the app client is configured - * with a client secret), DEVICE_KEY.

          - *
        • - *
        • - *

          For CUSTOM_AUTH: USERNAME (required), - * SECRET_HASH (if app client is configured with client secret), - * DEVICE_KEY. To start the authentication flow with password - * verification, include ChallengeName: SRP_A and SRP_A: (The - * SRP_A Value).

          - *
        • - *
        - *

        For more information about SECRET_HASH, see Computing secret hash values. For information about - * DEVICE_KEY, see Working with user devices in your user pool.

        - * @public - */ - AuthParameters?: Record | undefined; - - /** - *

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

        - *

        You create custom workflows by assigning Lambda functions to user pool triggers. - * When you use the InitiateAuth API action, Amazon Cognito invokes the Lambda functions that are - * specified for various triggers. The ClientMetadata value is passed as input to the - * functions for only the following triggers:

        - *
          - *
        • - *

          Pre signup

          - *
        • - *
        • - *

          Pre authentication

          - *
        • - *
        • - *

          User migration

          - *
        • - *
        - *

        When Amazon Cognito invokes the functions for these triggers, it passes a JSON payload, which - * the function receives as input. This payload contains a validationData - * attribute, which provides the data that you assigned to the ClientMetadata parameter in - * your InitiateAuth request. In your function code in Lambda, you can process the - * validationData value to enhance your workflow for your specific - * needs.

        - *

        When you use the InitiateAuth API action, Amazon Cognito also invokes the functions for the - * following triggers, but it doesn't provide the ClientMetadata value as input:

        - *
          - *
        • - *

          Post authentication

          - *
        • - *
        • - *

          Custom message

          - *
        • - *
        • - *

          Pre token generation

          - *
        • - *
        • - *

          Create auth challenge

          - *
        • - *
        • - *

          Define auth challenge

          - *
        • - *
        - *

        For more information, see - * Customizing user pool Workflows with Lambda Triggers 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.

          - *
        • - *
        - *
        - * @public - */ - ClientMetadata?: Record | undefined; - - /** - *

        The app client ID.

        - * @public - */ - ClientId: string | undefined; - - /** - *

        The Amazon Pinpoint analytics metadata that contributes to your metrics for - * InitiateAuth calls.

        - * @public - */ - AnalyticsMetadata?: AnalyticsMetadataType | undefined; - - /** - *

        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.

        - * @public - */ - UserContextData?: UserContextDataType | undefined; -} - -/** - *

        Initiates the authentication response.

        - * @public - */ -export interface InitiateAuthResponse { - /** - *

        The name of the challenge that you're responding to with this call. This name is - * returned in the InitiateAuth response if you must pass another - * challenge.

        - *

        Valid values include the following:

        - * - *

        All of the following challenges require USERNAME and - * SECRET_HASH (if applicable) in the parameters.

        - *
        - *
          - *
        • - *

          - * SMS_MFA: Next challenge is to supply an - * SMS_MFA_CODEthat your user pool delivered - * in an SMS message.

          - *
        • - *
        • - *

          - * EMAIL_OTP: Next challenge is to supply an - * EMAIL_OTP_CODE that your user pool delivered - * in an email message.

          - *
        • - *
        • - *

          - * PASSWORD_VERIFIER: Next challenge is to supply - * PASSWORD_CLAIM_SIGNATURE, - * PASSWORD_CLAIM_SECRET_BLOCK, and TIMESTAMP after - * the client-side SRP calculations.

          - *
        • - *
        • - *

          - * CUSTOM_CHALLENGE: This is returned if your custom authentication - * flow determines that the user should pass another challenge before tokens are - * issued.

          - *
        • - *
        • - *

          - * DEVICE_SRP_AUTH: If device tracking was activated on your user - * pool and the previous challenges were passed, this challenge is returned so that - * Amazon Cognito can start tracking this device.

          - *
        • - *
        • - *

          - * DEVICE_PASSWORD_VERIFIER: Similar to - * PASSWORD_VERIFIER, but for devices only.

          - *
        • - *
        • - *

          - * NEW_PASSWORD_REQUIRED: For users who are required to change their - * passwords after successful first login.

          - *

          Respond to this challenge with NEW_PASSWORD and any required - * attributes that Amazon Cognito returned in the requiredAttributes parameter. - * You can also set values for attributes that aren't required by your user pool - * and that your app client can write. For more information, see RespondToAuthChallenge.

          - * - *

          In a NEW_PASSWORD_REQUIRED challenge response, you can't modify a required attribute that already has a value. - * In RespondToAuthChallenge, set a value for any keys that Amazon Cognito returned in the requiredAttributes parameter, - * then use the UpdateUserAttributes API operation to modify the value of any additional attributes.

          - *
          - *
        • - *
        • - *

          - * MFA_SETUP: For users who are required to setup an MFA factor - * before they can sign in. The MFA types activated for the user pool will be - * listed in the challenge parameters MFAS_CAN_SETUP value.

          - *

          To set up software token MFA, use the session returned here from - * InitiateAuth as an input to - * AssociateSoftwareToken. Use the session returned by - * VerifySoftwareToken as an input to - * RespondToAuthChallenge with challenge name - * MFA_SETUP to complete sign-in. To set up SMS MFA, an - * administrator should help the user to add a phone number to their account, and - * then the user should call InitiateAuth again to restart - * sign-in.

          - *
        • - *
        - * @public - */ - ChallengeName?: ChallengeNameType | undefined; - - /** - *

        The session that should pass both ways in challenge-response calls to the service. If - * the caller must pass another challenge, they return a session with other challenge - * parameters. This session should be passed as it is to the next - * RespondToAuthChallenge API call.

        - * @public - */ - Session?: string | undefined; - - /** - *

        The challenge parameters. These are returned in the InitiateAuth response - * if you must pass another challenge. The responses in this parameter should be used to - * compute inputs to the next call (RespondToAuthChallenge).

        - *

        All challenges require USERNAME and SECRET_HASH (if - * applicable).

        - * @public - */ - ChallengeParameters?: Record | undefined; - - /** - *

        The result of the authentication response. This result is only returned if the caller - * doesn't need to pass another challenge. If the caller does need to pass another - * challenge before it gets tokens, ChallengeName, - * ChallengeParameters, and Session are returned.

        - * @public - */ - AuthenticationResult?: AuthenticationResultType | undefined; -} - -/** - *

        Represents the request to list the devices.

        - * @public - */ -export interface ListDevicesRequest { - /** - *

        A valid access token that Amazon Cognito issued to the user whose list of devices you want to - * view.

        - * @public - */ - AccessToken: string | undefined; - - /** - *

        The limit of the device request.

        - * @public - */ - Limit?: number | undefined; - - /** - *

        This API operation returns a limited number of results. The pagination token is - * an identifier that you can present in an additional API request with the same parameters. When - * you include the pagination token, Amazon Cognito returns the next set of items after the current list. - * Subsequent requests return a new pagination token. By use of this token, you can paginate - * through the full list of items.

        - * @public - */ - PaginationToken?: string | undefined; -} - -/** - *

        Represents the response to list devices.

        - * @public - */ -export interface ListDevicesResponse { - /** - *

        The devices returned in the list devices response.

        - * @public - */ - Devices?: DeviceType[] | undefined; - - /** - *

        The identifier that Amazon Cognito returned with the previous request to this operation. When - * you include a pagination token in your request, Amazon Cognito returns the next set of items in - * the list. By use of this token, you can paginate through the full list of items.

        - * @public - */ - PaginationToken?: string | undefined; -} - -/** - * @public - */ -export interface ListGroupsRequest { - /** - *

        The user pool ID for the user pool.

        - * @public - */ - UserPoolId: string | undefined; - - /** - *

        The limit of the request to list groups.

        - * @public - */ - Limit?: number | undefined; - - /** - *

        An identifier that was returned from the previous call to this operation, which can be - * used to return the next set of items in the list.

        - * @public - */ - NextToken?: string | undefined; -} - -/** - * @public - */ -export interface ListGroupsResponse { - /** - *

        The group objects for the groups.

        - * @public - */ - Groups?: GroupType[] | undefined; - - /** - *

        An identifier that was returned from the previous call to this operation, which can be - * used to return the next set of items in the list.

        - * @public - */ - NextToken?: string | undefined; -} - -/** - * @public - */ -export interface ListIdentityProvidersRequest { - /** - *

        The user pool ID.

        - * @public - */ - UserPoolId: string | undefined; - - /** - *

        The maximum number of IdPs to return.

        - * @public - */ - MaxResults?: number | undefined; - - /** - *

        A pagination token.

        - * @public - */ - NextToken?: string | undefined; -} - -/** - *

        A container for IdP details.

        - * @public - */ -export interface ProviderDescription { - /** - *

        The IdP name.

        - * @public - */ - ProviderName?: string | undefined; - - /** - *

        The IdP type.

        - * @public - */ - ProviderType?: IdentityProviderTypeType | undefined; - - /** - *

        The date the provider was last modified.

        - * @public - */ - LastModifiedDate?: Date | undefined; - - /** - *

        The date and time when the item was created. Amazon Cognito returns this timestamp in UNIX epoch time format. Your SDK might render the output in a - * human-readable format like ISO 8601 or a Java Date object.

        - * @public - */ - CreationDate?: Date | undefined; -} - -/** - * @public - */ -export interface ListIdentityProvidersResponse { - /** - *

        A list of IdP objects.

        - * @public - */ - Providers: ProviderDescription[] | undefined; - - /** - *

        A pagination token.

        - * @public - */ - NextToken?: string | undefined; -} - -/** - * @public - */ -export interface ListResourceServersRequest { - /** - *

        The user pool ID for the user pool.

        - * @public - */ - UserPoolId: string | undefined; - - /** - *

        The maximum number of resource servers to return.

        - * @public - */ - MaxResults?: number | undefined; - - /** - *

        A pagination token.

        - * @public - */ - NextToken?: string | undefined; -} - -/** - * @public - */ -export interface ListResourceServersResponse { - /** - *

        The resource servers.

        - * @public - */ - ResourceServers: ResourceServerType[] | undefined; - - /** - *

        A pagination token.

        - * @public - */ - NextToken?: string | undefined; -} - -/** - * @public - */ -export interface ListTagsForResourceRequest { - /** - *

        The Amazon Resource Name (ARN) of the user pool that the tags are assigned to.

        - * @public - */ - ResourceArn: string | undefined; -} - -/** - * @public - */ -export interface ListTagsForResourceResponse { - /** - *

        The tags that are assigned to the user pool.

        - * @public - */ - Tags?: Record | undefined; -} - -/** - *

        Represents the request to list the user import jobs.

        - * @public - */ -export interface ListUserImportJobsRequest { - /** - *

        The user pool ID for the user pool that the users are being imported into.

        - * @public - */ - UserPoolId: string | undefined; - - /** - *

        The maximum number of import jobs you want the request to return.

        - * @public - */ - MaxResults: number | undefined; - - /** - *

        This API operation returns a limited number of results. The pagination token is - * an identifier that you can present in an additional API request with the same parameters. When - * you include the pagination token, Amazon Cognito returns the next set of items after the current list. - * Subsequent requests return a new pagination token. By use of this token, you can paginate - * through the full list of items.

        - * @public - */ - PaginationToken?: string | undefined; -} - -/** - *

        Represents the response from the server to the request to list the user import - * jobs.

        - * @public - */ -export interface ListUserImportJobsResponse { - /** - *

        The user import jobs.

        - * @public - */ - UserImportJobs?: UserImportJobType[] | undefined; - - /** - *

        The identifier that Amazon Cognito returned with the previous request to this operation. When - * you include a pagination token in your request, Amazon Cognito returns the next set of items in - * the list. By use of this token, you can paginate through the full list of items.

        - * @public - */ - PaginationToken?: string | undefined; -} - -/** - *

        Represents the request to list the user pool clients.

        - * @public - */ -export interface ListUserPoolClientsRequest { - /** - *

        The user pool ID for the user pool where you want to list user pool clients.

        - * @public - */ - UserPoolId: string | undefined; - - /** - *

        The maximum number of results you want the request to return when listing the user - * pool clients.

        - * @public - */ - MaxResults?: number | undefined; - - /** - *

        An identifier that was returned from the previous call to this operation, which can be - * used to return the next set of items in the list.

        - * @public - */ - NextToken?: string | undefined; -} - -/** - *

        The description of the user pool client.

        - * @public - */ -export interface UserPoolClientDescription { - /** - *

        The ID of the client associated with the user pool.

        - * @public - */ - ClientId?: string | undefined; - - /** - *

        The user pool ID for the user pool where you want to describe the user pool - * client.

        - * @public - */ - UserPoolId?: string | undefined; - - /** - *

        The client name from the user pool client description.

        - * @public - */ - ClientName?: string | undefined; -} - -/** - *

        Represents the response from the server that lists user pool clients.

        - * @public - */ -export interface ListUserPoolClientsResponse { - /** - *

        The user pool clients in the response that lists user pool clients.

        - * @public - */ - UserPoolClients?: UserPoolClientDescription[] | undefined; - - /** - *

        An identifier that was returned from the previous call to this operation, which can be - * used to return the next set of items in the list.

        - * @public - */ - NextToken?: string | undefined; -} - -/** - *

        Represents the request to list user pools.

        - * @public - */ -export interface ListUserPoolsRequest { - /** - *

        An identifier that was returned from the previous call to this operation, which can be - * used to return the next set of items in the list.

        - * @public - */ - NextToken?: string | undefined; - - /** - *

        The maximum number of results you want the request to return when listing the user - * pools.

        - * @public - */ - MaxResults: number | undefined; -} - -/** - *

        A user pool description.

        - * @public - */ -export interface UserPoolDescriptionType { - /** - *

        The ID in a user pool description.

        - * @public - */ - Id?: string | undefined; - - /** - *

        The name in a user pool description.

        - * @public - */ - Name?: string | undefined; - - /** - *

        The Lambda configuration information in a user pool description.

        - * @public - */ - LambdaConfig?: LambdaConfigType | undefined; - - /** - * @deprecated - * - *

        The user pool status in a user pool description.

        - * @public - */ - Status?: StatusType | undefined; - - /** - *

        The date and time when the item was modified. Amazon Cognito returns this timestamp in UNIX epoch time format. Your SDK might render the output in a - * human-readable format like ISO 8601 or a Java Date object.

        - * @public - */ - LastModifiedDate?: Date | undefined; - - /** - *

        The date and time when the item was created. Amazon Cognito returns this timestamp in UNIX epoch time format. Your SDK might render the output in a - * human-readable format like ISO 8601 or a Java Date object.

        - * @public - */ - CreationDate?: Date | undefined; -} - -/** - *

        Represents the response to list user pools.

        - * @public - */ -export interface ListUserPoolsResponse { - /** - *

        The user pools from the response to list users.

        - * @public - */ - UserPools?: UserPoolDescriptionType[] | undefined; - - /** - *

        An identifier that was returned from the previous call to this operation, which can be - * used to return the next set of items in the list.

        - * @public - */ - NextToken?: string | undefined; -} - -/** - *

        Represents the request to list users.

        - * @public - */ -export interface ListUsersRequest { - /** - *

        The user pool ID for the user pool on which the search should be performed.

        - * @public - */ - UserPoolId: string | undefined; - - /** - *

        A JSON array of user attribute names, for example given_name, that you - * want Amazon Cognito to include in the response for each user. When you don't provide an - * AttributesToGet parameter, Amazon Cognito returns all attributes for each - * user.

        - *

        Use AttributesToGet with required attributes in your user pool, or in - * conjunction with Filter. Amazon Cognito returns an error if not all users in the - * results have set a value for the attribute you request. Attributes that you can't - * filter on, including custom attributes, must have a value set in every user profile - * before an AttributesToGet parameter returns results.

        - * @public - */ - AttributesToGet?: string[] | undefined; - - /** - *

        Maximum number of users to be returned.

        - * @public - */ - Limit?: number | undefined; - - /** - *

        This API operation returns a limited number of results. The pagination token is - * an identifier that you can present in an additional API request with the same parameters. When - * you include the pagination token, Amazon Cognito returns the next set of items after the current list. - * Subsequent requests return a new pagination token. By use of this token, you can paginate - * through the full list of items.

        - * @public - */ - PaginationToken?: string | undefined; - - /** - *

        A filter string of the form "AttributeName - * Filter-Type "AttributeValue"". Quotation marks - * within the filter string must be escaped using the backslash (\) character. - * For example, "family_name = \"Reddy\"".

        - *
          - *
        • - *

          - * AttributeName: The name of the attribute to search for. - * You can only search for one attribute at a time.

          - *
        • - *
        • - *

          - * Filter-Type: For an exact match, use =, for - * example, "given_name = \"Jon\"". For a prefix ("starts with") - * match, use ^=, for example, "given_name ^= \"Jon\"". - *

          - *
        • - *
        • - *

          - * AttributeValue: The attribute value that must be matched - * for each user.

          - *
        • - *
        - *

        If the filter string is empty, ListUsers returns all users in the user - * pool.

        - *

        You can only search for the following standard attributes:

        - *
          - *
        • - *

          - * username (case-sensitive)

          - *
        • - *
        • - *

          - * email - *

          - *
        • - *
        • - *

          - * phone_number - *

          - *
        • - *
        • - *

          - * name - *

          - *
        • - *
        • - *

          - * given_name - *

          - *
        • - *
        • - *

          - * family_name - *

          - *
        • - *
        • - *

          - * preferred_username - *

          - *
        • - *
        • - *

          - * cognito:user_status (called Status in the Console) (case-insensitive)

          - *
        • - *
        • - *

          - * status (called Enabled in the Console) - * (case-sensitive) - *

          - *
        • - *
        • - *

          - * sub - *

          - *
        • - *
        - *

        Custom attributes aren't searchable.

        - * - *

        You can also list users with a client-side filter. The server-side filter matches - * no more than one attribute. For an advanced search, use a client-side filter with - * the --query parameter of the list-users action in the - * CLI. When you use a client-side filter, ListUsers returns a paginated list of zero - * or more users. You can receive multiple pages in a row with zero results. Repeat the - * query with each pagination token that is returned until you receive a null - * pagination token value, and then review the combined result.

        - *

        For more information about server-side and client-side filtering, see FilteringCLI output in the Command Line Interface - * User Guide.

        - *
        - *

        For more information, see Searching for Users Using the ListUsers API and Examples of Using the ListUsers API in the Amazon Cognito Developer - * Guide.

        - * @public - */ - Filter?: string | undefined; -} - -/** - *

        The response from the request to list users.

        - * @public - */ -export interface ListUsersResponse { - /** - *

        A list of the user pool users, and their attributes, that match your query.

        - * - *

        Amazon Cognito creates a profile in your user pool for each native user in your user pool, - * and each unique user ID from your third-party identity providers (IdPs). When you - * link users with the AdminLinkProviderForUser API operation, the output of - * ListUsers displays both the IdP user and the native user that you - * linked. You can identify IdP users in the Users object of this API - * response by the IdP prefix that Amazon Cognito appends to Username.

        - *
        - * @public - */ - Users?: UserType[] | undefined; - - /** - *

        The identifier that Amazon Cognito returned with the previous request to this operation. When - * you include a pagination token in your request, Amazon Cognito returns the next set of items in - * the list. By use of this token, you can paginate through the full list of items.

        - * @public - */ - PaginationToken?: string | undefined; -} - -/** - * @public - */ -export interface ListUsersInGroupRequest { - /** - *

        The user pool ID for the user pool.

        - * @public - */ - UserPoolId: string | undefined; - - /** - *

        The name of the group.

        - * @public - */ - GroupName: string | undefined; - - /** - *

        The maximum number of users that you want to retrieve before pagination.

        - * @public - */ - Limit?: number | undefined; - - /** - *

        An identifier that was returned from the previous call to this operation, which can be - * used to return the next set of items in the list.

        - * @public - */ - NextToken?: string | undefined; -} - -/** - * @public - */ -export interface ListUsersInGroupResponse { - /** - *

        A list of users in the group, and their attributes.

        - * @public - */ - Users?: UserType[] | undefined; - - /** - *

        An identifier that you can use in a later request to return the next set of items in - * the list.

        - * @public - */ - NextToken?: string | undefined; -} - -/** - *

        Represents the request to resend the confirmation code.

        - * @public - */ -export interface ResendConfirmationCodeRequest { - /** - *

        The ID of the client associated with the user pool.

        - * @public - */ - ClientId: string | undefined; - - /** - *

        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.

        - * @public - */ - SecretHash?: string | undefined; - - /** - *

        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.

        - * @public - */ - UserContextData?: UserContextDataType | undefined; - - /** - *

        The username of the user that you want to query or modify. The value of this parameter - * is typically your user's username, but it can be any of their alias attributes. If - * username isn't an alias attribute in your user pool, this value - * must be the sub of a local user or the username of a user from a - * third-party IdP.

        - * @public - */ - Username: string | undefined; - - /** - *

        The Amazon Pinpoint analytics metadata that contributes to your metrics for - * ResendConfirmationCode calls.

        - * @public - */ - AnalyticsMetadata?: AnalyticsMetadataType | undefined; - - /** - *

        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 ResendConfirmationCode API action, Amazon Cognito invokes the function that is - * assigned to the custom message 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 ResendConfirmationCode 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 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.

          - *
        • - *
        - *
        - * @public - */ - ClientMetadata?: Record | undefined; -} - -/** - *

        The response from the server when Amazon Cognito makes the request to resend a confirmation - * code.

        - * @public - */ -export interface ResendConfirmationCodeResponse { - /** - *

        The code delivery details returned by the server in response to the request to resend - * the confirmation code.

        - * @public - */ - CodeDeliveryDetails?: CodeDeliveryDetailsType | undefined; -} - -/** - *

        The request to respond to an authentication challenge.

        - * @public - */ -export interface RespondToAuthChallengeRequest { - /** - *

        The app client ID.

        - * @public - */ - ClientId: string | undefined; - - /** - *

        The challenge name. For more information, see InitiateAuth.

        - *

        - * ADMIN_NO_SRP_AUTH isn't a valid value.

        - * @public - */ - ChallengeName: ChallengeNameType | undefined; - - /** - *

        The session that should be passed both ways in challenge-response calls to the - * service. If InitiateAuth or RespondToAuthChallenge API call - * determines that the caller must pass another challenge, they return a session with other - * challenge parameters. This session should be passed as it is to the next - * RespondToAuthChallenge API call.

        - * @public - */ - Session?: string | undefined; - - /** - *

        The responses to the challenge that you received in the previous request. Each - * challenge has its own required response parameters. The following examples are partial - * JSON request bodies that highlight challenge-response parameters.

        - * - *

        You must provide a SECRET_HASH parameter in all challenge responses to an app - * client that has a client secret.

        - *
        - *
        - *
        SMS_MFA
        - *
        - *

        - * "ChallengeName": "SMS_MFA", "ChallengeResponses": \{"SMS_MFA_CODE": - * "[code]", "USERNAME": "[username]"\} - *

        - *
        - *
        EMAIL_OTP
        - *
        - *

        - * "ChallengeName": "EMAIL_OTP", "ChallengeResponses": \{"EMAIL_OTP_CODE": - * "[code]", "USERNAME": "[username]"\} - *

        - *
        - *
        PASSWORD_VERIFIER
        - *
        - *

        This challenge response is part of the SRP flow. Amazon Cognito requires - * that your application respond to this challenge within a few seconds. When - * the response time exceeds this period, your user pool returns a - * NotAuthorizedException error.

        - *

        - * "ChallengeName": "PASSWORD_VERIFIER", "ChallengeResponses": - * \{"PASSWORD_CLAIM_SIGNATURE": "[claim_signature]", - * "PASSWORD_CLAIM_SECRET_BLOCK": "[secret_block]", "TIMESTAMP": - * [timestamp], "USERNAME": "[username]"\} - *

        - *

        Add "DEVICE_KEY" when you sign in with a remembered - * device.

        - *
        - *
        CUSTOM_CHALLENGE
        - *
        - *

        - * "ChallengeName": "CUSTOM_CHALLENGE", "ChallengeResponses": - * \{"USERNAME": "[username]", "ANSWER": "[challenge_answer]"\} - *

        - *

        Add "DEVICE_KEY" when you sign in with a remembered - * device.

        - *
        - *
        NEW_PASSWORD_REQUIRED
        - *
        - *

        - * "ChallengeName": "NEW_PASSWORD_REQUIRED", "ChallengeResponses": - * \{"NEW_PASSWORD": "[new_password]", "USERNAME": - * "[username]"\} - *

        - *

        To set any required attributes that InitiateAuth returned in - * an requiredAttributes parameter, add - * "userAttributes.[attribute_name]": "[attribute_value]". - * This parameter can also set values for writable attributes that aren't - * required by your user pool.

        - * - *

        In a NEW_PASSWORD_REQUIRED challenge response, you can't modify a required attribute that already has a value. - * In RespondToAuthChallenge, set a value for any keys that Amazon Cognito returned in the requiredAttributes parameter, - * then use the UpdateUserAttributes API operation to modify the value of any additional attributes.

        - *
        - *
        - *
        SOFTWARE_TOKEN_MFA
        - *
        - *

        - * "ChallengeName": "SOFTWARE_TOKEN_MFA", "ChallengeResponses": - * \{"USERNAME": "[username]", "SOFTWARE_TOKEN_MFA_CODE": - * [authenticator_code]\} - *

        - *
        - *
        DEVICE_SRP_AUTH
        - *
        - *

        - * "ChallengeName": "DEVICE_SRP_AUTH", "ChallengeResponses": \{"USERNAME": - * "[username]", "DEVICE_KEY": "[device_key]", "SRP_A": - * "[srp_a]"\} - *

        - *
        - *
        DEVICE_PASSWORD_VERIFIER
        - *
        - *

        - * "ChallengeName": "DEVICE_PASSWORD_VERIFIER", "ChallengeResponses": - * \{"DEVICE_KEY": "[device_key]", "PASSWORD_CLAIM_SIGNATURE": - * "[claim_signature]", "PASSWORD_CLAIM_SECRET_BLOCK": "[secret_block]", - * "TIMESTAMP": [timestamp], "USERNAME": "[username]"\} - *

        - *
        - *
        MFA_SETUP
        - *
        - *

        - * "ChallengeName": "MFA_SETUP", "ChallengeResponses": \{"USERNAME": - * "[username]"\}, "SESSION": "[Session ID from - * VerifySoftwareToken]" - *

        - *
        - *
        SELECT_MFA_TYPE
        - *
        - *

        - * "ChallengeName": "SELECT_MFA_TYPE", "ChallengeResponses": \{"USERNAME": - * "[username]", "ANSWER": "[SMS_MFA or SOFTWARE_TOKEN_MFA]"\} - *

        - *
        - *
        - *

        For more information about SECRET_HASH, see Computing secret hash values. For information about - * DEVICE_KEY, see Working with user devices in your user pool.

        - * @public - */ - ChallengeResponses?: Record | undefined; - - /** - *

        The Amazon Pinpoint analytics metadata that contributes to your metrics for - * RespondToAuthChallenge calls.

        - * @public - */ - AnalyticsMetadata?: AnalyticsMetadataType | undefined; - - /** - *

        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.

        - * @public - */ - UserContextData?: UserContextDataType | undefined; - - /** - *

        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 RespondToAuthChallenge API action, Amazon Cognito invokes any - * functions that are assigned to the following triggers: post - * authentication, pre token generation, - * define auth challenge, create auth - * challenge, and verify auth challenge. 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 RespondToAuthChallenge - * 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 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.

          - *
        • - *
        - *
        - * @public - */ - ClientMetadata?: Record | undefined; -} - -/** - * @internal - */ -export const AdminAddUserToGroupRequestFilterSensitiveLog = (obj: AdminAddUserToGroupRequest): any => ({ - ...obj, - ...(obj.Username && { Username: SENSITIVE_STRING }), -}); - -/** - * @internal - */ -export const AdminConfirmSignUpRequestFilterSensitiveLog = (obj: AdminConfirmSignUpRequest): any => ({ - ...obj, - ...(obj.Username && { Username: SENSITIVE_STRING }), -}); - -/** - * @internal - */ -export const AttributeTypeFilterSensitiveLog = (obj: AttributeType): any => ({ - ...obj, - ...(obj.Value && { Value: SENSITIVE_STRING }), -}); - -/** - * @internal + * @internal */ export const AdminCreateUserRequestFilterSensitiveLog = (obj: AdminCreateUserRequest): any => ({ ...obj, @@ -9904,6 +9912,7 @@ export const AdminInitiateAuthRequestFilterSensitiveLog = (obj: AdminInitiateAut ...obj, ...(obj.ClientId && { ClientId: SENSITIVE_STRING }), ...(obj.AuthParameters && { AuthParameters: SENSITIVE_STRING }), + ...(obj.Session && { Session: SENSITIVE_STRING }), }); /** @@ -10087,6 +10096,16 @@ export const ChangePasswordRequestFilterSensitiveLog = (obj: ChangePasswordReque ...(obj.AccessToken && { AccessToken: SENSITIVE_STRING }), }); +/** + * @internal + */ +export const CompleteWebAuthnRegistrationRequestFilterSensitiveLog = ( + obj: CompleteWebAuthnRegistrationRequest +): any => ({ + ...obj, + ...(obj.AccessToken && { AccessToken: SENSITIVE_STRING }), +}); + /** * @internal */ @@ -10123,6 +10142,23 @@ export const ConfirmSignUpRequestFilterSensitiveLog = (obj: ConfirmSignUpRequest ...(obj.SecretHash && { SecretHash: SENSITIVE_STRING }), ...(obj.Username && { Username: SENSITIVE_STRING }), ...(obj.UserContextData && { UserContextData: SENSITIVE_STRING }), + ...(obj.Session && { Session: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const ConfirmSignUpResponseFilterSensitiveLog = (obj: ConfirmSignUpResponse): any => ({ + ...obj, + ...(obj.Session && { Session: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const CreateManagedLoginBrandingRequestFilterSensitiveLog = (obj: CreateManagedLoginBrandingRequest): any => ({ + ...obj, + ...(obj.ClientId && { ClientId: SENSITIVE_STRING }), }); /** @@ -10166,6 +10202,24 @@ export const DeleteUserPoolClientRequestFilterSensitiveLog = (obj: DeleteUserPoo ...(obj.ClientId && { ClientId: SENSITIVE_STRING }), }); +/** + * @internal + */ +export const DeleteWebAuthnCredentialRequestFilterSensitiveLog = (obj: DeleteWebAuthnCredentialRequest): any => ({ + ...obj, + ...(obj.AccessToken && { AccessToken: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const DescribeManagedLoginBrandingByClientRequestFilterSensitiveLog = ( + obj: DescribeManagedLoginBrandingByClientRequest +): any => ({ + ...obj, + ...(obj.ClientId && { ClientId: SENSITIVE_STRING }), +}); + /** * @internal */ @@ -10297,36 +10351,7 @@ export const GetUserAttributeVerificationCodeRequestFilterSensitiveLog = ( /** * @internal */ -export const GlobalSignOutRequestFilterSensitiveLog = (obj: GlobalSignOutRequest): any => ({ - ...obj, - ...(obj.AccessToken && { AccessToken: SENSITIVE_STRING }), -}); - -/** - * @internal - */ -export const InitiateAuthRequestFilterSensitiveLog = (obj: InitiateAuthRequest): any => ({ - ...obj, - ...(obj.AuthParameters && { AuthParameters: SENSITIVE_STRING }), - ...(obj.ClientId && { ClientId: SENSITIVE_STRING }), - ...(obj.UserContextData && { UserContextData: SENSITIVE_STRING }), -}); - -/** - * @internal - */ -export const InitiateAuthResponseFilterSensitiveLog = (obj: InitiateAuthResponse): any => ({ - ...obj, - ...(obj.Session && { Session: SENSITIVE_STRING }), - ...(obj.AuthenticationResult && { - AuthenticationResult: AuthenticationResultTypeFilterSensitiveLog(obj.AuthenticationResult), - }), -}); - -/** - * @internal - */ -export const ListDevicesRequestFilterSensitiveLog = (obj: ListDevicesRequest): any => ({ +export const GetUserAuthFactorsRequestFilterSensitiveLog = (obj: GetUserAuthFactorsRequest): any => ({ ...obj, ...(obj.AccessToken && { AccessToken: SENSITIVE_STRING }), }); @@ -10334,62 +10359,7 @@ export const ListDevicesRequestFilterSensitiveLog = (obj: ListDevicesRequest): a /** * @internal */ -export const ListDevicesResponseFilterSensitiveLog = (obj: ListDevicesResponse): any => ({ - ...obj, -}); - -/** - * @internal - */ -export const UserPoolClientDescriptionFilterSensitiveLog = (obj: UserPoolClientDescription): any => ({ - ...obj, - ...(obj.ClientId && { ClientId: SENSITIVE_STRING }), -}); - -/** - * @internal - */ -export const ListUserPoolClientsResponseFilterSensitiveLog = (obj: ListUserPoolClientsResponse): any => ({ +export const GetUserAuthFactorsResponseFilterSensitiveLog = (obj: GetUserAuthFactorsResponse): any => ({ ...obj, - ...(obj.UserPoolClients && { - UserPoolClients: obj.UserPoolClients.map((item) => UserPoolClientDescriptionFilterSensitiveLog(item)), - }), -}); - -/** - * @internal - */ -export const ListUsersResponseFilterSensitiveLog = (obj: ListUsersResponse): any => ({ - ...obj, - ...(obj.Users && { Users: obj.Users.map((item) => UserTypeFilterSensitiveLog(item)) }), -}); - -/** - * @internal - */ -export const ListUsersInGroupResponseFilterSensitiveLog = (obj: ListUsersInGroupResponse): any => ({ - ...obj, - ...(obj.Users && { Users: obj.Users.map((item) => UserTypeFilterSensitiveLog(item)) }), -}); - -/** - * @internal - */ -export const ResendConfirmationCodeRequestFilterSensitiveLog = (obj: ResendConfirmationCodeRequest): any => ({ - ...obj, - ...(obj.ClientId && { ClientId: SENSITIVE_STRING }), - ...(obj.SecretHash && { SecretHash: SENSITIVE_STRING }), - ...(obj.UserContextData && { UserContextData: SENSITIVE_STRING }), ...(obj.Username && { Username: SENSITIVE_STRING }), }); - -/** - * @internal - */ -export const RespondToAuthChallengeRequestFilterSensitiveLog = (obj: RespondToAuthChallengeRequest): any => ({ - ...obj, - ...(obj.ClientId && { ClientId: SENSITIVE_STRING }), - ...(obj.Session && { Session: SENSITIVE_STRING }), - ...(obj.ChallengeResponses && { ChallengeResponses: SENSITIVE_STRING }), - ...(obj.UserContextData && { UserContextData: SENSITIVE_STRING }), -}); diff --git a/clients/client-cognito-identity-provider/src/models/models_1.ts b/clients/client-cognito-identity-provider/src/models/models_1.ts index b0f2f82cb743..4976311fbb69 100644 --- a/clients/client-cognito-identity-provider/src/models/models_1.ts +++ b/clients/client-cognito-identity-provider/src/models/models_1.ts @@ -1,6 +1,8 @@ // smithy-typescript generated code import { ExceptionOptionType as __ExceptionOptionType, SENSITIVE_STRING } from "@smithy/smithy-client"; +import { DocumentType as __DocumentType } from "@smithy/types"; + import { CognitoIdentityProviderServiceException as __BaseException } from "./CognitoIdentityProviderServiceException"; import { @@ -9,10 +11,12 @@ import { AdminCreateUserConfigType, AnalyticsConfigurationType, AnalyticsMetadataType, + AssetType, AttributeType, AttributeTypeFilterSensitiveLog, AuthenticationResultType, AuthenticationResultTypeFilterSensitiveLog, + AuthFlowType, ChallengeNameType, CodeDeliveryDetailsType, CompromisedCredentialsRiskConfigurationType, @@ -20,6 +24,7 @@ import { DeletionProtectionType, DeviceConfigurationType, DeviceRememberedStatusType, + DeviceType, EmailConfigurationType, EmailMfaConfigType, EmailMfaSettingsType, @@ -27,9 +32,11 @@ import { FeedbackValueType, GroupType, IdentityProviderType, + IdentityProviderTypeType, LambdaConfigType, LogConfigurationType, LogDeliveryConfigurationType, + ManagedLoginBrandingType, MFAOptionType, OAuthFlowType, PreventUserExistenceErrorTypes, @@ -43,6 +50,7 @@ import { SMSMfaSettingsType, SoftwareTokenMfaConfigType, SoftwareTokenMfaSettingsType, + StatusType, TokenValidityUnitsType, UICustomizationType, UICustomizationTypeFilterSensitiveLog, @@ -54,10 +62,1612 @@ import { UserPoolClientTypeFilterSensitiveLog, UserPoolMfaType, UserPoolPolicyType, + UserPoolTierType, + UserType, + UserTypeFilterSensitiveLog, + UserVerificationType, VerificationMessageTemplateType, VerifiedAttributeType, } from "./models_0"; +/** + *

        Settings for multi-factor authentication (MFA) with passkey, or webauthN, biometric + * and security-key devices in a user pool. Configures the following:

        + *
          + *
        • + *

          Configuration at the user-pool level for whether you want to require passkey + * configuration as an MFA factor, or include it as a choice.

          + *
        • + *
        • + *

          The user pool relying-party ID. This is the user pool domain that user's + * passkey providers should trust as a receiver of passkey authentication.

          + *
        • + *
        • + *

          The providers that you want to allow as origins for passkey + * authentication.

          + *
        • + *
        + *

        This data type is a request parameter of SetUserPoolMfaConfig and a response parameter of GetUserPoolMfaConfig.

        + * @public + */ +export interface WebAuthnConfigurationType { + /** + *

        Sets or displays the authentication domain, typically your user pool domain, that + * passkey providers must use as a relying party (RP) in their configuration.

        + *

        Under the following conditions, the passkey relying party ID must be the + * fully-qualified domain name of your custom domain:

        + *
          + *
        • + *

          The user pool is configured for passkey authentication.

          + *
        • + *
        • + *

          The user pool has a custom domain, whether or not it also has a prefix + * domain.

          + *
        • + *
        • + *

          Your application performs authentication with managed login or the classic + * hosted UI.

          + *
        • + *
        + * @public + */ + RelyingPartyId?: string | undefined; + + /** + *

        Sets or displays your user-pool treatment for MFA with a passkey. You can override + * other MFA options and require passkey MFA, or you can set it as preferred. When passkey + * MFA is preferred, the hosted UI encourages users to register a passkey at + * sign-in.

        + * @public + */ + UserVerification?: UserVerificationType | undefined; +} + +/** + * @public + */ +export interface GetUserPoolMfaConfigResponse { + /** + *

        Shows user pool SMS message configuration for MFA. Includes the message template and + * the SMS message sending configuration for Amazon SNS.

        + * @public + */ + SmsMfaConfiguration?: SmsMfaConfigType | undefined; + + /** + *

        Shows user pool configuration for time-based one-time password (TOTP) MFA. Includes + * TOTP enabled or disabled state.

        + * @public + */ + SoftwareTokenMfaConfiguration?: SoftwareTokenMfaConfigType | undefined; + + /** + *

        Shows user pool email message configuration for MFA. Includes the subject and body of + * the email message template for MFA messages. To activate this setting, + * advanced security features must be active in your user pool.

        + * @public + */ + EmailMfaConfiguration?: EmailMfaConfigType | undefined; + + /** + *

        The multi-factor authentication (MFA) configuration. Valid values include:

        + *
          + *
        • + *

          + * OFF MFA won't be used for any users.

          + *
        • + *
        • + *

          + * ON MFA is required for all users to sign in.

          + *
        • + *
        • + *

          + * OPTIONAL MFA will be required only for individual users who have + * an MFA factor activated.

          + *
        • + *
        + * @public + */ + MfaConfiguration?: UserPoolMfaType | undefined; + + /** + *

        Shows user pool configuration for MFA with passkeys from biometric devices and + * security keys.

        + * @public + */ + WebAuthnConfiguration?: WebAuthnConfigurationType | undefined; +} + +/** + *

        Represents the request to sign out all devices.

        + * @public + */ +export interface GlobalSignOutRequest { + /** + *

        A valid access token that Amazon Cognito issued to the user who you want to sign out.

        + * @public + */ + AccessToken: string | undefined; +} + +/** + *

        The response to the request to sign out all devices.

        + * @public + */ +export interface GlobalSignOutResponse {} + +/** + *

        Initiates the authentication request.

        + * @public + */ +export interface InitiateAuthRequest { + /** + *

        The authentication flow that you want to initiate. The AuthParameters + * that you must submit are linked to the flow that you submit. For example:

        + *
          + *
        • + *

          + * USER_AUTH: Request a preferred authentication type or review + * available authentication types. From the offered authentication types, select + * one in a challenge response and then authenticate with that method in an + * additional challenge response.

          + *
        • + *
        • + *

          + * REFRESH_TOKEN_AUTH: Receive new ID and access tokens when you + * pass a REFRESH_TOKEN parameter with a valid refresh token as the + * value.

          + *
        • + *
        • + *

          + * USER_SRP_AUTH: Receive secure remote password (SRP) variables for + * the next challenge, PASSWORD_VERIFIER, when you pass + * USERNAME and SRP_A parameters.

          + *
        • + *
        • + *

          + * USER_PASSWORD_AUTH: Receive new tokens or the next challenge, for + * example SOFTWARE_TOKEN_MFA, when you pass USERNAME and + * PASSWORD parameters.

          + *
        • + *
        + *

        Valid values include the following:

        + *
        + *
        USER_AUTH
        + *
        + *

        The entry point for sign-in with passwords, one-time passwords, biometric + * devices, and security keys.

        + *
        + *
        USER_SRP_AUTH
        + *
        + *

        Username-password authentication with the Secure Remote Password (SRP) + * protocol. For more information, see Use SRP password verification in custom + * authentication flow.

        + *
        + *
        REFRESH_TOKEN_AUTH and REFRESH_TOKEN
        + *
        + *

        Provide a valid refresh token and receive new ID and access tokens. For + * more information, see Using the refresh token.

        + *
        + *
        CUSTOM_AUTH
        + *
        + *

        Custom authentication with Lambda triggers. For more information, see + * Custom authentication challenge Lambda + * triggers.

        + *
        + *
        USER_PASSWORD_AUTH
        + *
        + *

        Username-password authentication with the password sent directly in the + * request. For more information, see Admin authentication flow.

        + *
        + *
        + *

        + * ADMIN_USER_PASSWORD_AUTH is a flow type of AdminInitiateAuth and isn't valid for InitiateAuth. + * ADMIN_NO_SRP_AUTH is a legacy server-side username-password flow and + * isn't valid for InitiateAuth.

        + * @public + */ + AuthFlow: AuthFlowType | undefined; + + /** + *

        The authentication parameters. These are inputs corresponding to the + * AuthFlow that you're invoking. The required values depend on the value + * of AuthFlow:

        + *
          + *
        • + *

          For USER_AUTH: USERNAME (required), + * PREFERRED_CHALLENGE. If you don't provide a value for + * PREFERRED_CHALLENGE, Amazon Cognito responds with the + * AvailableChallenges parameter that specifies the available + * sign-in methods.

          + *
        • + *
        • + *

          For USER_SRP_AUTH: USERNAME (required), + * SRP_A (required), SECRET_HASH (required if the app + * client is configured with a client secret), DEVICE_KEY.

          + *
        • + *
        • + *

          For USER_PASSWORD_AUTH: USERNAME (required), + * PASSWORD (required), SECRET_HASH (required if the + * app client is configured with a client secret), DEVICE_KEY.

          + *
        • + *
        • + *

          For REFRESH_TOKEN_AUTH/REFRESH_TOKEN: REFRESH_TOKEN + * (required), SECRET_HASH (required if the app client is configured + * with a client secret), DEVICE_KEY.

          + *
        • + *
        • + *

          For CUSTOM_AUTH: USERNAME (required), + * SECRET_HASH (if app client is configured with client secret), + * DEVICE_KEY. To start the authentication flow with password + * verification, include ChallengeName: SRP_A and SRP_A: (The + * SRP_A Value).

          + *
        • + *
        + *

        For more information about SECRET_HASH, see Computing secret hash values. For information about + * DEVICE_KEY, see Working with user devices in your user pool.

        + * @public + */ + AuthParameters?: Record | undefined; + + /** + *

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

        + *

        You create custom workflows by assigning Lambda functions to user pool triggers. + * When you use the InitiateAuth API action, Amazon Cognito invokes the Lambda functions that are + * specified for various triggers. The ClientMetadata value is passed as input to the + * functions for only the following triggers:

        + *
          + *
        • + *

          Pre signup

          + *
        • + *
        • + *

          Pre authentication

          + *
        • + *
        • + *

          User migration

          + *
        • + *
        + *

        When Amazon Cognito invokes the functions for these triggers, it passes a JSON payload, which + * the function receives as input. This payload contains a validationData + * attribute, which provides the data that you assigned to the ClientMetadata parameter in + * your InitiateAuth request. In your function code in Lambda, you can process the + * validationData value to enhance your workflow for your specific + * needs.

        + *

        When you use the InitiateAuth API action, Amazon Cognito also invokes the functions for the + * following triggers, but it doesn't provide the ClientMetadata value as input:

        + *
          + *
        • + *

          Post authentication

          + *
        • + *
        • + *

          Custom message

          + *
        • + *
        • + *

          Pre token generation

          + *
        • + *
        • + *

          Create auth challenge

          + *
        • + *
        • + *

          Define auth challenge

          + *
        • + *
        • + *

          Custom email sender

          + *
        • + *
        • + *

          Custom SMS sender

          + *
        • + *
        + *

        For more information, see + * Customizing user pool Workflows with Lambda Triggers 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.

          + *
        • + *
        + *
        + * @public + */ + ClientMetadata?: Record | undefined; + + /** + *

        The app client ID.

        + * @public + */ + ClientId: string | undefined; + + /** + *

        The Amazon Pinpoint analytics metadata that contributes to your metrics for + * InitiateAuth calls.

        + * @public + */ + AnalyticsMetadata?: AnalyticsMetadataType | undefined; + + /** + *

        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.

        + * @public + */ + UserContextData?: UserContextDataType | undefined; + + /** + *

        The optional session ID from a ConfirmSignUp API request. You can sign in + * a user directly from the sign-up process with the USER_AUTH authentication + * flow.

        + * @public + */ + Session?: string | undefined; +} + +/** + *

        Initiates the authentication response.

        + * @public + */ +export interface InitiateAuthResponse { + /** + *

        The name of the challenge that you're responding to with this call. This name is + * returned in the InitiateAuth response if you must pass another + * challenge.

        + *

        Valid values include the following:

        + * + *

        All of the following challenges require USERNAME and + * SECRET_HASH (if applicable) in the parameters.

        + *
        + *
          + *
        • + *

          + * WEB_AUTHN: Respond to the challenge with the results of a + * successful authentication with a passkey, or webauthN, factor. These are + * typically biometric devices or security keys.

          + *
        • + *
        • + *

          + * PASSWORD: Respond with USER_PASSWORD_AUTH + * parameters: USERNAME (required), PASSWORD (required), + * SECRET_HASH (required if the app client is configured with a + * client secret), DEVICE_KEY.

          + *
        • + *
        • + *

          + * PASSWORD_SRP: Respond with USER_SRP_AUTH parameters: + * USERNAME (required), SRP_A (required), + * SECRET_HASH (required if the app client is configured with a + * client secret), DEVICE_KEY.

          + *
        • + *
        • + *

          + * SELECT_CHALLENGE: Respond to the challenge with + * USERNAME and an ANSWER that matches one of the + * challenge types in the AvailableChallenges response + * parameter.

          + *
        • + *
        • + *

          + * SMS_MFA: Next challenge is to supply an + * SMS_MFA_CODEthat your user pool delivered in an SMS message.

          + *
        • + *
        • + *

          + * EMAIL_OTP: Next challenge is to supply an + * EMAIL_OTP_CODE that your user pool delivered in an email + * message.

          + *
        • + *
        • + *

          + * PASSWORD_VERIFIER: Next challenge is to supply + * PASSWORD_CLAIM_SIGNATURE, + * PASSWORD_CLAIM_SECRET_BLOCK, and TIMESTAMP after + * the client-side SRP calculations.

          + *
        • + *
        • + *

          + * CUSTOM_CHALLENGE: This is returned if your custom authentication + * flow determines that the user should pass another challenge before tokens are + * issued.

          + *
        • + *
        • + *

          + * DEVICE_SRP_AUTH: If device tracking was activated on your user + * pool and the previous challenges were passed, this challenge is returned so that + * Amazon Cognito can start tracking this device.

          + *
        • + *
        • + *

          + * DEVICE_PASSWORD_VERIFIER: Similar to + * PASSWORD_VERIFIER, but for devices only.

          + *
        • + *
        • + *

          + * NEW_PASSWORD_REQUIRED: For users who are required to change their + * passwords after successful first login.

          + *

          Respond to this challenge with NEW_PASSWORD and any required + * attributes that Amazon Cognito returned in the requiredAttributes parameter. + * You can also set values for attributes that aren't required by your user pool + * and that your app client can write. For more information, see RespondToAuthChallenge.

          + *

          Amazon Cognito only returns this challenge for users who have temporary passwords. + * Because of this, and because in some cases you can create users who don't have + * values for required attributes, take care to collect and submit + * required-attribute values for all users who don't have passwords. You can create + * a user in the Amazon Cognito console without, for example, a required + * birthdate attribute. The API response from Amazon Cognito won't prompt + * you to submit a birthdate for the user if they don't have a password.

          + * + *

          In a NEW_PASSWORD_REQUIRED challenge response, you can't modify a required attribute that already has a value. + * In RespondToAuthChallenge, set a value for any keys that Amazon Cognito returned in the requiredAttributes parameter, + * then use the UpdateUserAttributes API operation to modify the value of any additional attributes.

          + *
          + *
        • + *
        • + *

          + * MFA_SETUP: For users who are required to setup an MFA factor + * before they can sign in. The MFA types activated for the user pool will be + * listed in the challenge parameters MFAS_CAN_SETUP value.

          + *

          To set up software token MFA, use the session returned here from + * InitiateAuth as an input to + * AssociateSoftwareToken. Use the session returned by + * VerifySoftwareToken as an input to + * RespondToAuthChallenge with challenge name + * MFA_SETUP to complete sign-in. To set up SMS MFA, an + * administrator should help the user to add a phone number to their account, and + * then the user should call InitiateAuth again to restart + * sign-in.

          + *
        • + *
        + * @public + */ + ChallengeName?: ChallengeNameType | undefined; + + /** + *

        The session that should pass both ways in challenge-response calls to the service. If + * the caller must pass another challenge, they return a session with other challenge + * parameters. Include this session identifier in a RespondToAuthChallenge API + * request.

        + * @public + */ + Session?: string | undefined; + + /** + *

        The challenge parameters. These are returned in the InitiateAuth response + * if you must pass another challenge. The responses in this parameter should be used to + * compute inputs to the next call (RespondToAuthChallenge).

        + *

        All challenges require USERNAME. They also require + * SECRET_HASH if your app client has a client secret.

        + * @public + */ + ChallengeParameters?: Record | undefined; + + /** + *

        The result of the authentication response. This result is only returned if the caller + * doesn't need to pass another challenge. If the caller does need to pass another + * challenge before it gets tokens, ChallengeName, + * ChallengeParameters, and Session are returned.

        + * @public + */ + AuthenticationResult?: AuthenticationResultType | undefined; + + /** + *

        This response parameter prompts a user to select from multiple available challenges + * that they can complete authentication with. For example, they might be able to continue + * with passwordless authentication or with a one-time password from an SMS message.

        + * @public + */ + AvailableChallenges?: ChallengeNameType[] | undefined; +} + +/** + *

        Represents the request to list the devices.

        + * @public + */ +export interface ListDevicesRequest { + /** + *

        A valid access token that Amazon Cognito issued to the user whose list of devices you want to + * view.

        + * @public + */ + AccessToken: string | undefined; + + /** + *

        The limit of the device request.

        + * @public + */ + Limit?: number | undefined; + + /** + *

        This API operation returns a limited number of results. The pagination token is + * an identifier that you can present in an additional API request with the same parameters. When + * you include the pagination token, Amazon Cognito returns the next set of items after the current list. + * Subsequent requests return a new pagination token. By use of this token, you can paginate + * through the full list of items.

        + * @public + */ + PaginationToken?: string | undefined; +} + +/** + *

        Represents the response to list devices.

        + * @public + */ +export interface ListDevicesResponse { + /** + *

        The devices returned in the list devices response.

        + * @public + */ + Devices?: DeviceType[] | undefined; + + /** + *

        The identifier that Amazon Cognito returned with the previous request to this operation. When + * you include a pagination token in your request, Amazon Cognito returns the next set of items in + * the list. By use of this token, you can paginate through the full list of items.

        + * @public + */ + PaginationToken?: string | undefined; +} + +/** + * @public + */ +export interface ListGroupsRequest { + /** + *

        The user pool ID for the user pool.

        + * @public + */ + UserPoolId: string | undefined; + + /** + *

        The limit of the request to list groups.

        + * @public + */ + Limit?: number | undefined; + + /** + *

        An identifier that was returned from the previous call to this operation, which can be + * used to return the next set of items in the list.

        + * @public + */ + NextToken?: string | undefined; +} + +/** + * @public + */ +export interface ListGroupsResponse { + /** + *

        The group objects for the groups.

        + * @public + */ + Groups?: GroupType[] | undefined; + + /** + *

        An identifier that was returned from the previous call to this operation, which can be + * used to return the next set of items in the list.

        + * @public + */ + NextToken?: string | undefined; +} + +/** + * @public + */ +export interface ListIdentityProvidersRequest { + /** + *

        The user pool ID.

        + * @public + */ + UserPoolId: string | undefined; + + /** + *

        The maximum number of IdPs to return.

        + * @public + */ + MaxResults?: number | undefined; + + /** + *

        A pagination token.

        + * @public + */ + NextToken?: string | undefined; +} + +/** + *

        The details of a user pool identity provider (IdP), including name and type.

        + *

        This data type is a response parameter of ListIdentityProviders.

        + * @public + */ +export interface ProviderDescription { + /** + *

        The name of the IdP, for example MySAMLProvider.

        + * @public + */ + ProviderName?: string | undefined; + + /** + *

        The type of the provider, for example SAML. Amazon Cognito supports SAML 2.0, + * OIDC, and social IdPs. User pools list supported social IdPs by name in this response + * parameter: Facebook, Google, Login with Amazon, and Sign in with Apple.

        + * @public + */ + ProviderType?: IdentityProviderTypeType | undefined; + + /** + *

        The date and time when the item was modified. Amazon Cognito returns this timestamp in UNIX epoch time format. Your SDK might render the output in a + * human-readable format like ISO 8601 or a Java Date object.

        + * @public + */ + LastModifiedDate?: Date | undefined; + + /** + *

        The date and time when the item was created. Amazon Cognito returns this timestamp in UNIX epoch time format. Your SDK might render the output in a + * human-readable format like ISO 8601 or a Java Date object.

        + * @public + */ + CreationDate?: Date | undefined; +} + +/** + * @public + */ +export interface ListIdentityProvidersResponse { + /** + *

        A list of IdP objects.

        + * @public + */ + Providers: ProviderDescription[] | undefined; + + /** + *

        A pagination token.

        + * @public + */ + NextToken?: string | undefined; +} + +/** + * @public + */ +export interface ListResourceServersRequest { + /** + *

        The user pool ID for the user pool.

        + * @public + */ + UserPoolId: string | undefined; + + /** + *

        The maximum number of resource servers to return.

        + * @public + */ + MaxResults?: number | undefined; + + /** + *

        A pagination token.

        + * @public + */ + NextToken?: string | undefined; +} + +/** + * @public + */ +export interface ListResourceServersResponse { + /** + *

        The resource servers.

        + * @public + */ + ResourceServers: ResourceServerType[] | undefined; + + /** + *

        A pagination token.

        + * @public + */ + NextToken?: string | undefined; +} + +/** + * @public + */ +export interface ListTagsForResourceRequest { + /** + *

        The Amazon Resource Name (ARN) of the user pool that the tags are assigned to.

        + * @public + */ + ResourceArn: string | undefined; +} + +/** + * @public + */ +export interface ListTagsForResourceResponse { + /** + *

        The tags that are assigned to the user pool.

        + * @public + */ + Tags?: Record | undefined; +} + +/** + *

        Represents the request to list the user import jobs.

        + * @public + */ +export interface ListUserImportJobsRequest { + /** + *

        The user pool ID for the user pool that the users are being imported into.

        + * @public + */ + UserPoolId: string | undefined; + + /** + *

        The maximum number of import jobs you want the request to return.

        + * @public + */ + MaxResults: number | undefined; + + /** + *

        This API operation returns a limited number of results. The pagination token is + * an identifier that you can present in an additional API request with the same parameters. When + * you include the pagination token, Amazon Cognito returns the next set of items after the current list. + * Subsequent requests return a new pagination token. By use of this token, you can paginate + * through the full list of items.

        + * @public + */ + PaginationToken?: string | undefined; +} + +/** + *

        Represents the response from the server to the request to list the user import + * jobs.

        + * @public + */ +export interface ListUserImportJobsResponse { + /** + *

        The user import jobs.

        + * @public + */ + UserImportJobs?: UserImportJobType[] | undefined; + + /** + *

        The identifier that Amazon Cognito returned with the previous request to this operation. When + * you include a pagination token in your request, Amazon Cognito returns the next set of items in + * the list. By use of this token, you can paginate through the full list of items.

        + * @public + */ + PaginationToken?: string | undefined; +} + +/** + *

        Represents the request to list the user pool clients.

        + * @public + */ +export interface ListUserPoolClientsRequest { + /** + *

        The user pool ID for the user pool where you want to list user pool clients.

        + * @public + */ + UserPoolId: string | undefined; + + /** + *

        The maximum number of results you want the request to return when listing the user + * pool clients.

        + * @public + */ + MaxResults?: number | undefined; + + /** + *

        An identifier that was returned from the previous call to this operation, which can be + * used to return the next set of items in the list.

        + * @public + */ + NextToken?: string | undefined; +} + +/** + *

        A short description of a user pool app client.

        + *

        This data type is a response parameter of ListUserPoolClients.

        + * @public + */ +export interface UserPoolClientDescription { + /** + *

        The app client ID.

        + * @public + */ + ClientId?: string | undefined; + + /** + *

        The ID of the user pool that's associated with the app client.

        + * @public + */ + UserPoolId?: string | undefined; + + /** + *

        The app client name.

        + * @public + */ + ClientName?: string | undefined; +} + +/** + *

        Represents the response from the server that lists user pool clients.

        + * @public + */ +export interface ListUserPoolClientsResponse { + /** + *

        The user pool clients in the response that lists user pool clients.

        + * @public + */ + UserPoolClients?: UserPoolClientDescription[] | undefined; + + /** + *

        An identifier that was returned from the previous call to this operation, which can be + * used to return the next set of items in the list.

        + * @public + */ + NextToken?: string | undefined; +} + +/** + *

        Represents the request to list user pools.

        + * @public + */ +export interface ListUserPoolsRequest { + /** + *

        An identifier that was returned from the previous call to this operation, which can be + * used to return the next set of items in the list.

        + * @public + */ + NextToken?: string | undefined; + + /** + *

        The maximum number of results you want the request to return when listing the user + * pools.

        + * @public + */ + MaxResults: number | undefined; +} + +/** + *

        A short description of a user pool.

        + *

        This data type is a response parameter of ListUserPools.

        + * @public + */ +export interface UserPoolDescriptionType { + /** + *

        The user pool ID.

        + * @public + */ + Id?: string | undefined; + + /** + *

        The user pool name.

        + * @public + */ + Name?: string | undefined; + + /** + *

        A collection of user pool Lambda triggers. Amazon Cognito invokes triggers at several possible + * stages of user pool operations. Triggers can modify the outcome of the operations that + * invoked them.

        + * @public + */ + LambdaConfig?: LambdaConfigType | undefined; + + /** + * @deprecated + * + *

        The user pool status.

        + * @public + */ + Status?: StatusType | undefined; + + /** + *

        The date and time when the item was modified. Amazon Cognito returns this timestamp in UNIX epoch time format. Your SDK might render the output in a + * human-readable format like ISO 8601 or a Java Date object.

        + * @public + */ + LastModifiedDate?: Date | undefined; + + /** + *

        The date and time when the item was created. Amazon Cognito returns this timestamp in UNIX epoch time format. Your SDK might render the output in a + * human-readable format like ISO 8601 or a Java Date object.

        + * @public + */ + CreationDate?: Date | undefined; +} + +/** + *

        Represents the response to list user pools.

        + * @public + */ +export interface ListUserPoolsResponse { + /** + *

        The user pools from the response to list users.

        + * @public + */ + UserPools?: UserPoolDescriptionType[] | undefined; + + /** + *

        An identifier that was returned from the previous call to this operation, which can be + * used to return the next set of items in the list.

        + * @public + */ + NextToken?: string | undefined; +} + +/** + *

        Represents the request to list users.

        + * @public + */ +export interface ListUsersRequest { + /** + *

        The user pool ID for the user pool on which the search should be performed.

        + * @public + */ + UserPoolId: string | undefined; + + /** + *

        A JSON array of user attribute names, for example given_name, that you + * want Amazon Cognito to include in the response for each user. When you don't provide an + * AttributesToGet parameter, Amazon Cognito returns all attributes for each + * user.

        + *

        Use AttributesToGet with required attributes in your user pool, or in + * conjunction with Filter. Amazon Cognito returns an error if not all users in the + * results have set a value for the attribute you request. Attributes that you can't + * filter on, including custom attributes, must have a value set in every user profile + * before an AttributesToGet parameter returns results.

        + * @public + */ + AttributesToGet?: string[] | undefined; + + /** + *

        Maximum number of users to be returned.

        + * @public + */ + Limit?: number | undefined; + + /** + *

        This API operation returns a limited number of results. The pagination token is + * an identifier that you can present in an additional API request with the same parameters. When + * you include the pagination token, Amazon Cognito returns the next set of items after the current list. + * Subsequent requests return a new pagination token. By use of this token, you can paginate + * through the full list of items.

        + * @public + */ + PaginationToken?: string | undefined; + + /** + *

        A filter string of the form "AttributeName Filter-Type "AttributeValue". + * Quotation marks within the filter string must be escaped using the backslash + * (\) character. For example, "family_name = + * \"Reddy\"".

        + *
          + *
        • + *

          + * AttributeName: The name of the attribute to search for. + * You can only search for one attribute at a time.

          + *
        • + *
        • + *

          + * Filter-Type: For an exact match, use =, for + * example, "given_name = \"Jon\"". For a prefix ("starts with") + * match, use ^=, for example, "given_name ^= \"Jon\"". + *

          + *
        • + *
        • + *

          + * AttributeValue: The attribute value that must be matched + * for each user.

          + *
        • + *
        + *

        If the filter string is empty, ListUsers returns all users in the user + * pool.

        + *

        You can only search for the following standard attributes:

        + *
          + *
        • + *

          + * username (case-sensitive)

          + *
        • + *
        • + *

          + * email + *

          + *
        • + *
        • + *

          + * phone_number + *

          + *
        • + *
        • + *

          + * name + *

          + *
        • + *
        • + *

          + * given_name + *

          + *
        • + *
        • + *

          + * family_name + *

          + *
        • + *
        • + *

          + * preferred_username + *

          + *
        • + *
        • + *

          + * cognito:user_status (called Status in the Console) (case-insensitive)

          + *
        • + *
        • + *

          + * status (called Enabled in the Console) + * (case-sensitive) + *

          + *
        • + *
        • + *

          + * sub + *

          + *
        • + *
        + *

        Custom attributes aren't searchable.

        + * + *

        You can also list users with a client-side filter. The server-side filter matches + * no more than one attribute. For an advanced search, use a client-side filter with + * the --query parameter of the list-users action in the + * CLI. When you use a client-side filter, ListUsers returns a paginated list of zero + * or more users. You can receive multiple pages in a row with zero results. Repeat the + * query with each pagination token that is returned until you receive a null + * pagination token value, and then review the combined result.

        + *

        For more information about server-side and client-side filtering, see FilteringCLI output in the Command Line Interface + * User Guide.

        + *
        + *

        For more information, see Searching for Users Using the ListUsers API and Examples of Using the ListUsers API in the Amazon Cognito Developer + * Guide.

        + * @public + */ + Filter?: string | undefined; +} + +/** + *

        The response from the request to list users.

        + * @public + */ +export interface ListUsersResponse { + /** + *

        A list of the user pool users, and their attributes, that match your query.

        + * + *

        Amazon Cognito creates a profile in your user pool for each native user in your user pool, + * and each unique user ID from your third-party identity providers (IdPs). When you + * link users with the AdminLinkProviderForUser API operation, the output of + * ListUsers displays both the IdP user and the native user that you + * linked. You can identify IdP users in the Users object of this API + * response by the IdP prefix that Amazon Cognito appends to Username.

        + *
        + * @public + */ + Users?: UserType[] | undefined; + + /** + *

        The identifier that Amazon Cognito returned with the previous request to this operation. When + * you include a pagination token in your request, Amazon Cognito returns the next set of items in + * the list. By use of this token, you can paginate through the full list of items.

        + * @public + */ + PaginationToken?: string | undefined; +} + +/** + * @public + */ +export interface ListUsersInGroupRequest { + /** + *

        The user pool ID for the user pool.

        + * @public + */ + UserPoolId: string | undefined; + + /** + *

        The name of the group.

        + * @public + */ + GroupName: string | undefined; + + /** + *

        The maximum number of users that you want to retrieve before pagination.

        + * @public + */ + Limit?: number | undefined; + + /** + *

        An identifier that was returned from the previous call to this operation, which can be + * used to return the next set of items in the list.

        + * @public + */ + NextToken?: string | undefined; +} + +/** + * @public + */ +export interface ListUsersInGroupResponse { + /** + *

        A list of users in the group, and their attributes.

        + * @public + */ + Users?: UserType[] | undefined; + + /** + *

        An identifier that you can use in a later request to return the next set of items in + * the list.

        + * @public + */ + NextToken?: string | undefined; +} + +/** + * @public + */ +export interface ListWebAuthnCredentialsRequest { + /** + *

        A valid access token that Amazon Cognito issued to the user whose registered passkeys you want + * to list.

        + * @public + */ + AccessToken: string | undefined; + + /** + *

        An identifier that was returned from the previous call to this operation, which can be + * used to return the next set of items in the list.

        + * @public + */ + NextToken?: string | undefined; + + /** + *

        The maximum number of the user's passkey credentials that you want to + * return.

        + * @public + */ + MaxResults?: number | undefined; +} + +/** + *

        The details of a passkey, or webauthN, biometric or security-key authentication factor + * for a user.

        + *

        This data type is a response parameter of ListWebAuthnCredentials.

        + * @public + */ +export interface WebAuthnCredentialDescription { + /** + *

        The unique identifier of the passkey credential.

        + * @public + */ + CredentialId: string | undefined; + + /** + *

        An automatically-generated friendly name for the passkey credential.

        + * @public + */ + FriendlyCredentialName: string | undefined; + + /** + *

        The relying-party ID of the provider for the passkey credential.

        + * @public + */ + RelyingPartyId: string | undefined; + + /** + *

        The general category of the passkey authenticator. Can be a platform, or on-device + * authenticator like a built-in fingerprint scanner, or a cross-platform device that's not + * attached to the device like a Bluetooth security key.

        + * @public + */ + AuthenticatorAttachment?: string | undefined; + + /** + *

        Information about the transport methods of the passkey credential, for example USB or + * Bluetooth Low Energy.

        + * @public + */ + AuthenticatorTransports: string[] | undefined; + + /** + *

        The date and time when the item was created. Amazon Cognito returns this timestamp in UNIX epoch time format. Your SDK might render the output in a + * human-readable format like ISO 8601 or a Java Date object.

        + * @public + */ + CreatedAt: Date | undefined; +} + +/** + * @public + */ +export interface ListWebAuthnCredentialsResponse { + /** + *

        A list of registered passkeys for a user.

        + * @public + */ + Credentials: WebAuthnCredentialDescription[] | undefined; + + /** + *

        An identifier that you can use in a later request to return the next set of items in + * the list.

        + * @public + */ + NextToken?: string | undefined; +} + +/** + *

        Represents the request to resend the confirmation code.

        + * @public + */ +export interface ResendConfirmationCodeRequest { + /** + *

        The ID of the client associated with the user pool.

        + * @public + */ + ClientId: string | undefined; + + /** + *

        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.

        + * @public + */ + SecretHash?: string | undefined; + + /** + *

        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.

        + * @public + */ + UserContextData?: UserContextDataType | undefined; + + /** + *

        The username of the user that you want to query or modify. The value of this parameter + * is typically your user's username, but it can be any of their alias attributes. If + * username isn't an alias attribute in your user pool, this value + * must be the sub of a local user or the username of a user from a + * third-party IdP.

        + * @public + */ + Username: string | undefined; + + /** + *

        The Amazon Pinpoint analytics metadata that contributes to your metrics for + * ResendConfirmationCode calls.

        + * @public + */ + AnalyticsMetadata?: AnalyticsMetadataType | undefined; + + /** + *

        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 ResendConfirmationCode API action, Amazon Cognito invokes the function that is + * assigned to the custom message 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 ResendConfirmationCode 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 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.

          + *
        • + *
        + *
        + * @public + */ + ClientMetadata?: Record | undefined; +} + +/** + *

        The response from the server when Amazon Cognito makes the request to resend a confirmation + * code.

        + * @public + */ +export interface ResendConfirmationCodeResponse { + /** + *

        The code delivery details returned by the server in response to the request to resend + * the confirmation code.

        + * @public + */ + CodeDeliveryDetails?: CodeDeliveryDetailsType | undefined; +} + +/** + *

        The request to respond to an authentication challenge.

        + * @public + */ +export interface RespondToAuthChallengeRequest { + /** + *

        The app client ID.

        + * @public + */ + ClientId: string | undefined; + + /** + *

        The challenge name. For more information, see InitiateAuth.

        + *

        + * ADMIN_NO_SRP_AUTH isn't a valid value.

        + * @public + */ + ChallengeName: ChallengeNameType | undefined; + + /** + *

        The session that should be passed both ways in challenge-response calls to the + * service. If InitiateAuth or RespondToAuthChallenge API call + * determines that the caller must pass another challenge, they return a session with other + * challenge parameters. This session should be passed as it is to the next + * RespondToAuthChallenge API call.

        + * @public + */ + Session?: string | undefined; + + /** + *

        The responses to the challenge that you received in the previous request. Each + * challenge has its own required response parameters. The following examples are partial + * JSON request bodies that highlight challenge-response parameters.

        + * + *

        You must provide a SECRET_HASH parameter in all challenge responses to an app + * client that has a client secret. Include a DEVICE_KEY for device + * authentication.

        + *
        + *
        + *
        SELECT_CHALLENGE
        + *
        + *

        + * "ChallengeName": "SELECT_CHALLENGE", "ChallengeResponses": \{ + * "USERNAME": "[username]", + * "ANSWER": "[Challenge name]"\} + *

        + *

        Available challenges are PASSWORD, PASSWORD_SRP, + * EMAIL_OTP, SMS_OTP, and WEB_AUTHN.

        + *

        Complete authentication in the SELECT_CHALLENGE response for + * PASSWORD, PASSWORD_SRP, and WEB_AUTHN:

        + *
          + *
        • + *

          + * "ChallengeName": "SELECT_CHALLENGE", "ChallengeResponses": \{ + * "ANSWER": "WEB_AUTHN", + * "USERNAME": "[username]", + * "CREDENTIAL": "[AuthenticationResponseJSON]"\} + *

          + *

          See + * AuthenticationResponseJSON.

          + *
        • + *
        • + *

          + * "ChallengeName": "SELECT_CHALLENGE", "ChallengeResponses": \{ + * "ANSWER": "PASSWORD", + * "USERNAME": "[username]", + * "PASSWORD": "[password]"\} + *

          + *
        • + *
        • + *

          + * "ChallengeName": "SELECT_CHALLENGE", "ChallengeResponses": \{ + * "ANSWER": "PASSWORD_SRP", + * "USERNAME": "[username]", + * "SRP_A": "[SRP_A]"\} + *

          + *
        • + *
        + *

        For SMS_OTP and EMAIL_OTP, respond with the + * username and answer. Your user pool will send a code for the user to submit in + * the next challenge response.

        + *
          + *
        • + *

          + * "ChallengeName": "SELECT_CHALLENGE", "ChallengeResponses": \{ + * "ANSWER": "SMS_OTP", + * "USERNAME": "[username]"\} + *

          + *
        • + *
        • + *

          + * "ChallengeName": "SELECT_CHALLENGE", "ChallengeResponses": \{ + * "ANSWER": "EMAIL_OTP", + * "USERNAME": "[username]"\} + *

          + *
        • + *
        + *
        + *
        SMS_OTP
        + *
        + *

        + * "ChallengeName": "SMS_OTP", "ChallengeResponses": + * \{"SMS_OTP_CODE": "[code]", "USERNAME": "[username]"\} + *

        + *
        + *
        EMAIL_OTP
        + *
        + *

        + * "ChallengeName": "EMAIL_OTP", "ChallengeResponses": \{"EMAIL_OTP_CODE": + * "[code]", "USERNAME": "[username]"\} + *

        + *
        + *
        SMS_MFA
        + *
        + *

        + * "ChallengeName": "SMS_MFA", "ChallengeResponses": \{"SMS_MFA_CODE": + * "[code]", "USERNAME": "[username]"\} + *

        + *
        + *
        PASSWORD_VERIFIER
        + *
        + *

        This challenge response is part of the SRP flow. Amazon Cognito requires + * that your application respond to this challenge within a few seconds. When + * the response time exceeds this period, your user pool returns a + * NotAuthorizedException error.

        + *

        + * "ChallengeName": "PASSWORD_VERIFIER", "ChallengeResponses": + * \{"PASSWORD_CLAIM_SIGNATURE": "[claim_signature]", + * "PASSWORD_CLAIM_SECRET_BLOCK": "[secret_block]", "TIMESTAMP": + * [timestamp], "USERNAME": "[username]"\} + *

        + *

        Add "DEVICE_KEY" when you sign in with a remembered + * device.

        + *
        + *
        CUSTOM_CHALLENGE
        + *
        + *

        + * "ChallengeName": "CUSTOM_CHALLENGE", "ChallengeResponses": + * \{"USERNAME": "[username]", "ANSWER": "[challenge_answer]"\} + *

        + *

        Add "DEVICE_KEY" when you sign in with a remembered + * device.

        + *
        + *
        NEW_PASSWORD_REQUIRED
        + *
        + *

        + * "ChallengeName": "NEW_PASSWORD_REQUIRED", "ChallengeResponses": + * \{"NEW_PASSWORD": "[new_password]", "USERNAME": + * "[username]"\} + *

        + *

        To set any required attributes that InitiateAuth returned in + * an requiredAttributes parameter, add + * "userAttributes.[attribute_name]": "[attribute_value]". + * This parameter can also set values for writable attributes that aren't + * required by your user pool.

        + * + *

        In a NEW_PASSWORD_REQUIRED challenge response, you can't modify a required attribute that already has a value. + * In RespondToAuthChallenge, set a value for any keys that Amazon Cognito returned in the requiredAttributes parameter, + * then use the UpdateUserAttributes API operation to modify the value of any additional attributes.

        + *
        + *
        + *
        SOFTWARE_TOKEN_MFA
        + *
        + *

        + * "ChallengeName": "SOFTWARE_TOKEN_MFA", "ChallengeResponses": + * \{"USERNAME": "[username]", "SOFTWARE_TOKEN_MFA_CODE": + * [authenticator_code]\} + *

        + *
        + *
        DEVICE_SRP_AUTH
        + *
        + *

        + * "ChallengeName": "DEVICE_SRP_AUTH", "ChallengeResponses": \{"USERNAME": + * "[username]", "DEVICE_KEY": "[device_key]", "SRP_A": + * "[srp_a]"\} + *

        + *
        + *
        DEVICE_PASSWORD_VERIFIER
        + *
        + *

        + * "ChallengeName": "DEVICE_PASSWORD_VERIFIER", "ChallengeResponses": + * \{"DEVICE_KEY": "[device_key]", "PASSWORD_CLAIM_SIGNATURE": + * "[claim_signature]", "PASSWORD_CLAIM_SECRET_BLOCK": "[secret_block]", + * "TIMESTAMP": [timestamp], "USERNAME": "[username]"\} + *

        + *
        + *
        MFA_SETUP
        + *
        + *

        + * "ChallengeName": "MFA_SETUP", "ChallengeResponses": \{"USERNAME": + * "[username]"\}, "SESSION": "[Session ID from + * VerifySoftwareToken]" + *

        + *
        + *
        SELECT_MFA_TYPE
        + *
        + *

        + * "ChallengeName": "SELECT_MFA_TYPE", "ChallengeResponses": \{"USERNAME": + * "[username]", "ANSWER": "[SMS_MFA or SOFTWARE_TOKEN_MFA]"\} + *

        + *
        + *
        + *

        For more information about SECRET_HASH, see Computing secret hash values. For information about + * DEVICE_KEY, see Working with user devices in your user pool.

        + * @public + */ + ChallengeResponses?: Record | undefined; + + /** + *

        The Amazon Pinpoint analytics metadata that contributes to your metrics for + * RespondToAuthChallenge calls.

        + * @public + */ + AnalyticsMetadata?: AnalyticsMetadataType | undefined; + + /** + *

        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.

        + * @public + */ + UserContextData?: UserContextDataType | undefined; + + /** + *

        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 RespondToAuthChallenge API action, Amazon Cognito invokes any + * functions that are assigned to the following triggers: post + * authentication, pre token generation, + * define auth challenge, create auth + * challenge, and verify auth challenge. 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 RespondToAuthChallenge + * 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 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.

          + *
        • + *
        + *
        + * @public + */ + ClientMetadata?: Record | undefined; +} + /** *

        The response to respond to the authentication challenge.

        * @public @@ -397,6 +2007,14 @@ export interface SetUserPoolMfaConfigRequest { * @public */ MfaConfiguration?: UserPoolMfaType | undefined; + + /** + *

        The configuration of your user pool for passkey, or webauthN, authentication and + * registration. You can set this configuration independent of the MFA configuration + * options in this operation.

        + * @public + */ + WebAuthnConfiguration?: WebAuthnConfigurationType | undefined; } /** @@ -445,6 +2063,13 @@ export interface SetUserPoolMfaConfigResponse { * @public */ MfaConfiguration?: UserPoolMfaType | undefined; + + /** + *

        The configuration of your user pool for passkey, or webauthN, biometric and + * security-key devices.

        + * @public + */ + WebAuthnConfiguration?: WebAuthnConfigurationType | undefined; } /** @@ -500,9 +2125,13 @@ export interface SignUpRequest { /** *

        The password of the user you want to register.

        + *

        Users can sign up without a password when your user pool supports passwordless sign-in + * with email or SMS OTPs. To create a user with no password, omit this parameter or submit + * a blank value. You can only create a passwordless user when passwordless sign-in is + * available. See the SignInPolicyType property of CreateUserPool and UpdateUserPool.

        * @public */ - Password: string | undefined; + Password?: string | undefined; /** *

        An array of name-value pairs representing user attributes.

        @@ -604,6 +2233,14 @@ export interface SignUpResponse { * @public */ UserSub: string | undefined; + + /** + *

        A session Id that you can pass to ConfirmSignUp when you want to + * immediately sign in your user with the USER_AUTH flow after they complete + * sign-up.

        + * @public + */ + Session?: string | undefined; } /** @@ -637,6 +2274,51 @@ export interface StartUserImportJobResponse { UserImportJob?: UserImportJobType | undefined; } +/** + * @public + */ +export interface StartWebAuthnRegistrationRequest { + /** + *

        A valid access token that Amazon Cognito issued to the user whose passkey metadata you want to + * generate.

        + * @public + */ + AccessToken: string | undefined; +} + +/** + * @public + */ +export interface StartWebAuthnRegistrationResponse { + /** + *

        The information that a user can provide in their request to register with their + * passkey provider.

        + * @public + */ + CredentialCreationOptions: __DocumentType | undefined; +} + +/** + *

        This exception is thrown when a user pool doesn't have a configured relying party + * id or a user pool domain.

        + * @public + */ +export class WebAuthnConfigurationMissingException extends __BaseException { + readonly name: "WebAuthnConfigurationMissingException" = "WebAuthnConfigurationMissingException"; + readonly $fault: "client" = "client"; + /** + * @internal + */ + constructor(opts: __ExceptionOptionType) { + super({ + name: "WebAuthnConfigurationMissingException", + $fault: "client", + ...opts, + }); + Object.setPrototypeOf(this, WebAuthnConfigurationMissingException.prototype); + } +} + /** *

        Represents the request to stop the user import job.

        * @public @@ -1004,6 +2686,60 @@ export interface UpdateIdentityProviderResponse { IdentityProvider: IdentityProviderType | undefined; } +/** + * @public + */ +export interface UpdateManagedLoginBrandingRequest { + /** + *

        The ID of the user pool that contains the managed login branding style that you want + * to update.

        + * @public + */ + UserPoolId?: string | undefined; + + /** + *

        The ID of the managed login branding style that you want to update.

        + * @public + */ + ManagedLoginBrandingId?: string | undefined; + + /** + *

        When true, applies the default branding style options. This option reverts to default + * style options that are managed by Amazon Cognito. You can modify them later in the branding + * designer.

        + *

        When you specify true for this option, you must also omit values for + * Settings and Assets in the request.

        + * @public + */ + UseCognitoProvidedValues?: boolean | undefined; + + /** + *

        A JSON file, encoded as a Document type, with the the settings that you + * want to apply to your style.

        + * @public + */ + Settings?: __DocumentType | undefined; + + /** + *

        An array of image files that you want to apply to roles like backgrounds, logos, and + * icons. Each object must also indicate whether it is for dark mode, light mode, or + * browser-adaptive mode.

        + * @public + */ + Assets?: AssetType[] | undefined; +} + +/** + * @public + */ +export interface UpdateManagedLoginBrandingResponse { + /** + *

        The details of the branding style that you updated.

        + * @public + */ + ManagedLoginBranding?: ManagedLoginBrandingType | undefined; +} + /** * @public */ @@ -1293,6 +3029,20 @@ export interface UpdateUserPoolRequest { * @public */ AccountRecoverySetting?: AccountRecoverySettingType | undefined; + + /** + *

        The updated name of your user pool.

        + * @public + */ + PoolName?: string | undefined; + + /** + *

        The user pool feature plan, or tier. This parameter determines the + * eligibility of the user pool for features like managed login, access-token + * customization, and threat protection. Defaults to ESSENTIALS.

        + * @public + */ + UserPoolTier?: UserPoolTierType | undefined; } /** @@ -1436,6 +3186,18 @@ export interface UpdateUserPoolClientRequest { *
          *
        • *

          + * ALLOW_USER_AUTH: Enable selection-based sign-in + * with USER_AUTH. This setting covers username-password, + * secure remote password (SRP), passwordless, and passkey authentication. + * This authentiation flow can do username-password and SRP authentication + * without other ExplicitAuthFlows permitting them. For example + * users can complete an SRP challenge through USER_AUTH + * without the flow USER_SRP_AUTH being active for the app + * client. This flow doesn't include CUSTOM_AUTH. + *

          + *
        • + *
        • + *

          * ALLOW_ADMIN_USER_PASSWORD_AUTH: Enable admin based user password * authentication flow ADMIN_USER_PASSWORD_AUTH. This setting replaces * the ADMIN_NO_SRP_AUTH setting. With this authentication flow, your app @@ -1471,10 +3233,16 @@ export interface UpdateUserPoolClientRequest { ExplicitAuthFlows?: ExplicitAuthFlowsType[] | undefined; /** - *

          A list of provider names for the IdPs that this client supports. The following are - * supported: COGNITO, Facebook, Google, - * SignInWithApple, LoginWithAmazon, and the names of your - * own SAML and OIDC providers.

          + *

          A list of provider names for the identity providers (IdPs) that are supported on this + * client. The following are supported: COGNITO, Facebook, + * Google, SignInWithApple, and LoginWithAmazon. + * You can also specify the names that you configured for the SAML and OIDC IdPs in your + * user pool, for example MySAMLIdP or MyOIDCIdP.

          + *

          This setting applies to providers that you can access with the hosted + * UI and OAuth 2.0 authorization server. The removal of COGNITO + * from this list doesn't prevent authentication operations for local users with the + * user pools API in an Amazon Web Services SDK. The only way to prevent API-based authentication is to + * block access with a WAF rule.

          * @public */ SupportedIdentityProviders?: string[] | undefined; @@ -1644,7 +3412,7 @@ export interface UpdateUserPoolClientRequest { /** *

          Activates the propagation of additional user context data. For more information about - * propagation of user context data, see Adding advanced security to a user pool. If you don’t include this + * propagation of user context data, see Adding advanced security to a user pool. If you don’t include this * parameter, you can't send device fingerprint information, including source IP address, * to Amazon Cognito advanced security. You can only activate * EnablePropagateAdditionalUserContextData in an app client that has a @@ -1696,10 +3464,23 @@ export interface UpdateUserPoolDomainRequest { */ UserPoolId: string | undefined; + /** + *

          A version number that indicates the state of managed login for your domain. Version + * 1 is hosted UI (classic). Version 2 is the newer managed + * login with the branding designer. For more information, see Managed login.

          + * @public + */ + ManagedLoginVersion?: number | undefined; + /** *

          The configuration for a custom domain that hosts the sign-up and sign-in pages for * your application. Use this object to specify an SSL certificate that is managed by * ACM.

          + *

          When you create a custom domain, the passkey RP ID defaults to the custom domain. If + * you had a prefix domain active, this will cause passkey integration for your prefix + * domain to stop working due to a mismatch in RP ID. To keep the prefix domain passkey + * integration working, you can explicitly set RP ID to the prefix domain. Update the RP ID + * in a SetUserPoolMfaConfig request.

          * @public */ CustomDomainConfig: CustomDomainConfigType | undefined; @@ -1710,6 +3491,14 @@ export interface UpdateUserPoolDomainRequest { * @public */ export interface UpdateUserPoolDomainResponse { + /** + *

          A version number that indicates the state of managed login for your domain. Version + * 1 is hosted UI (classic). Version 2 is the newer managed + * login with the branding designer. For more information, see Managed login.

          + * @public + */ + ManagedLoginVersion?: number | undefined; + /** *

          The Amazon CloudFront endpoint that Amazon Cognito set up when you added the custom domain to your user * pool.

          @@ -1835,6 +3624,115 @@ export interface VerifyUserAttributeRequest { */ export interface VerifyUserAttributeResponse {} +/** + * @internal + */ +export const GlobalSignOutRequestFilterSensitiveLog = (obj: GlobalSignOutRequest): any => ({ + ...obj, + ...(obj.AccessToken && { AccessToken: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const InitiateAuthRequestFilterSensitiveLog = (obj: InitiateAuthRequest): any => ({ + ...obj, + ...(obj.AuthParameters && { AuthParameters: SENSITIVE_STRING }), + ...(obj.ClientId && { ClientId: SENSITIVE_STRING }), + ...(obj.UserContextData && { UserContextData: SENSITIVE_STRING }), + ...(obj.Session && { Session: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const InitiateAuthResponseFilterSensitiveLog = (obj: InitiateAuthResponse): any => ({ + ...obj, + ...(obj.Session && { Session: SENSITIVE_STRING }), + ...(obj.AuthenticationResult && { + AuthenticationResult: AuthenticationResultTypeFilterSensitiveLog(obj.AuthenticationResult), + }), +}); + +/** + * @internal + */ +export const ListDevicesRequestFilterSensitiveLog = (obj: ListDevicesRequest): any => ({ + ...obj, + ...(obj.AccessToken && { AccessToken: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const ListDevicesResponseFilterSensitiveLog = (obj: ListDevicesResponse): any => ({ + ...obj, +}); + +/** + * @internal + */ +export const UserPoolClientDescriptionFilterSensitiveLog = (obj: UserPoolClientDescription): any => ({ + ...obj, + ...(obj.ClientId && { ClientId: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const ListUserPoolClientsResponseFilterSensitiveLog = (obj: ListUserPoolClientsResponse): any => ({ + ...obj, + ...(obj.UserPoolClients && { + UserPoolClients: obj.UserPoolClients.map((item) => UserPoolClientDescriptionFilterSensitiveLog(item)), + }), +}); + +/** + * @internal + */ +export const ListUsersResponseFilterSensitiveLog = (obj: ListUsersResponse): any => ({ + ...obj, + ...(obj.Users && { Users: obj.Users.map((item) => UserTypeFilterSensitiveLog(item)) }), +}); + +/** + * @internal + */ +export const ListUsersInGroupResponseFilterSensitiveLog = (obj: ListUsersInGroupResponse): any => ({ + ...obj, + ...(obj.Users && { Users: obj.Users.map((item) => UserTypeFilterSensitiveLog(item)) }), +}); + +/** + * @internal + */ +export const ListWebAuthnCredentialsRequestFilterSensitiveLog = (obj: ListWebAuthnCredentialsRequest): any => ({ + ...obj, + ...(obj.AccessToken && { AccessToken: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const ResendConfirmationCodeRequestFilterSensitiveLog = (obj: ResendConfirmationCodeRequest): any => ({ + ...obj, + ...(obj.ClientId && { ClientId: SENSITIVE_STRING }), + ...(obj.SecretHash && { SecretHash: SENSITIVE_STRING }), + ...(obj.UserContextData && { UserContextData: SENSITIVE_STRING }), + ...(obj.Username && { Username: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const RespondToAuthChallengeRequestFilterSensitiveLog = (obj: RespondToAuthChallengeRequest): any => ({ + ...obj, + ...(obj.ClientId && { ClientId: SENSITIVE_STRING }), + ...(obj.Session && { Session: SENSITIVE_STRING }), + ...(obj.ChallengeResponses && { ChallengeResponses: SENSITIVE_STRING }), + ...(obj.UserContextData && { UserContextData: SENSITIVE_STRING }), +}); + /** * @internal */ @@ -1922,6 +3820,22 @@ export const SignUpRequestFilterSensitiveLog = (obj: SignUpRequest): any => ({ ...(obj.UserContextData && { UserContextData: SENSITIVE_STRING }), }); +/** + * @internal + */ +export const SignUpResponseFilterSensitiveLog = (obj: SignUpResponse): any => ({ + ...obj, + ...(obj.Session && { Session: SENSITIVE_STRING }), +}); + +/** + * @internal + */ +export const StartWebAuthnRegistrationRequestFilterSensitiveLog = (obj: StartWebAuthnRegistrationRequest): any => ({ + ...obj, + ...(obj.AccessToken && { AccessToken: SENSITIVE_STRING }), +}); + /** * @internal */ diff --git a/clients/client-cognito-identity-provider/src/protocols/Aws_json1_1.ts b/clients/client-cognito-identity-provider/src/protocols/Aws_json1_1.ts index e21e011a7ebe..2245407413ef 100644 --- a/clients/client-cognito-identity-provider/src/protocols/Aws_json1_1.ts +++ b/clients/client-cognito-identity-provider/src/protocols/Aws_json1_1.ts @@ -16,6 +16,7 @@ import { withBaseException, } from "@smithy/smithy-client"; import { + DocumentType as __DocumentType, Endpoint as __Endpoint, HeaderBag as __HeaderBag, ResponseMetadata as __ResponseMetadata, @@ -105,6 +106,10 @@ import { AssociateSoftwareTokenCommandOutput, } from "../commands/AssociateSoftwareTokenCommand"; import { ChangePasswordCommandInput, ChangePasswordCommandOutput } from "../commands/ChangePasswordCommand"; +import { + CompleteWebAuthnRegistrationCommandInput, + CompleteWebAuthnRegistrationCommandOutput, +} from "../commands/CompleteWebAuthnRegistrationCommand"; import { ConfirmDeviceCommandInput, ConfirmDeviceCommandOutput } from "../commands/ConfirmDeviceCommand"; import { ConfirmForgotPasswordCommandInput, @@ -116,6 +121,10 @@ import { CreateIdentityProviderCommandInput, CreateIdentityProviderCommandOutput, } from "../commands/CreateIdentityProviderCommand"; +import { + CreateManagedLoginBrandingCommandInput, + CreateManagedLoginBrandingCommandOutput, +} from "../commands/CreateManagedLoginBrandingCommand"; import { CreateResourceServerCommandInput, CreateResourceServerCommandOutput, @@ -138,6 +147,10 @@ import { DeleteIdentityProviderCommandInput, DeleteIdentityProviderCommandOutput, } from "../commands/DeleteIdentityProviderCommand"; +import { + DeleteManagedLoginBrandingCommandInput, + DeleteManagedLoginBrandingCommandOutput, +} from "../commands/DeleteManagedLoginBrandingCommand"; import { DeleteResourceServerCommandInput, DeleteResourceServerCommandOutput, @@ -156,10 +169,22 @@ import { DeleteUserPoolDomainCommandInput, DeleteUserPoolDomainCommandOutput, } from "../commands/DeleteUserPoolDomainCommand"; +import { + DeleteWebAuthnCredentialCommandInput, + DeleteWebAuthnCredentialCommandOutput, +} from "../commands/DeleteWebAuthnCredentialCommand"; import { DescribeIdentityProviderCommandInput, DescribeIdentityProviderCommandOutput, } from "../commands/DescribeIdentityProviderCommand"; +import { + DescribeManagedLoginBrandingByClientCommandInput, + DescribeManagedLoginBrandingByClientCommandOutput, +} from "../commands/DescribeManagedLoginBrandingByClientCommand"; +import { + DescribeManagedLoginBrandingCommandInput, + DescribeManagedLoginBrandingCommandOutput, +} from "../commands/DescribeManagedLoginBrandingCommand"; import { DescribeResourceServerCommandInput, DescribeResourceServerCommandOutput, @@ -203,6 +228,7 @@ import { GetUserAttributeVerificationCodeCommandInput, GetUserAttributeVerificationCodeCommandOutput, } from "../commands/GetUserAttributeVerificationCodeCommand"; +import { GetUserAuthFactorsCommandInput, GetUserAuthFactorsCommandOutput } from "../commands/GetUserAuthFactorsCommand"; import { GetUserCommandInput, GetUserCommandOutput } from "../commands/GetUserCommand"; import { GetUserPoolMfaConfigCommandInput, @@ -232,6 +258,10 @@ import { import { ListUserPoolsCommandInput, ListUserPoolsCommandOutput } from "../commands/ListUserPoolsCommand"; import { ListUsersCommandInput, ListUsersCommandOutput } from "../commands/ListUsersCommand"; import { ListUsersInGroupCommandInput, ListUsersInGroupCommandOutput } from "../commands/ListUsersInGroupCommand"; +import { + ListWebAuthnCredentialsCommandInput, + ListWebAuthnCredentialsCommandOutput, +} from "../commands/ListWebAuthnCredentialsCommand"; import { ResendConfirmationCodeCommandInput, ResendConfirmationCodeCommandOutput, @@ -261,6 +291,10 @@ import { import { SetUserSettingsCommandInput, SetUserSettingsCommandOutput } from "../commands/SetUserSettingsCommand"; import { SignUpCommandInput, SignUpCommandOutput } from "../commands/SignUpCommand"; import { StartUserImportJobCommandInput, StartUserImportJobCommandOutput } from "../commands/StartUserImportJobCommand"; +import { + StartWebAuthnRegistrationCommandInput, + StartWebAuthnRegistrationCommandOutput, +} from "../commands/StartWebAuthnRegistrationCommand"; import { StopUserImportJobCommandInput, StopUserImportJobCommandOutput } from "../commands/StopUserImportJobCommand"; import { TagResourceCommandInput, TagResourceCommandOutput } from "../commands/TagResourceCommand"; import { UntagResourceCommandInput, UntagResourceCommandOutput } from "../commands/UntagResourceCommand"; @@ -274,6 +308,10 @@ import { UpdateIdentityProviderCommandInput, UpdateIdentityProviderCommandOutput, } from "../commands/UpdateIdentityProviderCommand"; +import { + UpdateManagedLoginBrandingCommandInput, + UpdateManagedLoginBrandingCommandOutput, +} from "../commands/UpdateManagedLoginBrandingCommand"; import { UpdateResourceServerCommandInput, UpdateResourceServerCommandOutput, @@ -344,13 +382,16 @@ import { AliasExistsException, AnalyticsConfigurationType, AnalyticsMetadataType, + AssetType, AssociateSoftwareTokenRequest, AttributeType, AuthEventType, + AuthFactorType, ChangePasswordRequest, CloudWatchLogsConfigurationType, CodeDeliveryFailureException, CodeMismatchException, + CompleteWebAuthnRegistrationRequest, CompromisedCredentialsActionsType, CompromisedCredentialsRiskConfigurationType, ConcurrentModificationException, @@ -362,6 +403,8 @@ import { CreateGroupResponse, CreateIdentityProviderRequest, CreateIdentityProviderResponse, + CreateManagedLoginBrandingRequest, + CreateManagedLoginBrandingResponse, CreateResourceServerRequest, CreateUserImportJobRequest, CreateUserImportJobResponse, @@ -375,15 +418,21 @@ import { CustomSMSLambdaVersionConfigType, DeleteGroupRequest, DeleteIdentityProviderRequest, + DeleteManagedLoginBrandingRequest, DeleteResourceServerRequest, DeleteUserAttributesRequest, DeleteUserPoolClientRequest, DeleteUserPoolDomainRequest, DeleteUserPoolRequest, DeleteUserRequest, + DeleteWebAuthnCredentialRequest, DeliveryMediumType, DescribeIdentityProviderRequest, DescribeIdentityProviderResponse, + DescribeManagedLoginBrandingByClientRequest, + DescribeManagedLoginBrandingByClientResponse, + DescribeManagedLoginBrandingRequest, + DescribeManagedLoginBrandingResponse, DescribeResourceServerRequest, DescribeRiskConfigurationRequest, DescribeRiskConfigurationResponse, @@ -405,6 +454,7 @@ import { EventFilterType, ExpiredCodeException, ExplicitAuthFlowsType, + FeatureUnavailableInTierException, FirehoseConfigurationType, ForbiddenException, ForgetDeviceRequest, @@ -421,14 +471,13 @@ import { GetUICustomizationRequest, GetUICustomizationResponse, GetUserAttributeVerificationCodeRequest, + GetUserAuthFactorsRequest, GetUserPoolMfaConfigRequest, GetUserRequest, - GlobalSignOutRequest, GroupExistsException, GroupType, HttpHeader, IdentityProviderType, - InitiateAuthRequest, InternalErrorException, InvalidEmailRoleAccessPolicyException, InvalidLambdaResponseException, @@ -440,24 +489,9 @@ import { InvalidUserPoolConfigurationException, LambdaConfigType, LimitExceededException, - ListDevicesRequest, - ListDevicesResponse, - ListGroupsRequest, - ListGroupsResponse, - ListIdentityProvidersRequest, - ListIdentityProvidersResponse, - ListResourceServersRequest, - ListTagsForResourceRequest, - ListUserImportJobsRequest, - ListUserImportJobsResponse, - ListUserPoolClientsRequest, - ListUserPoolsRequest, - ListUserPoolsResponse, - ListUsersInGroupRequest, - ListUsersInGroupResponse, - ListUsersRequest, - ListUsersResponse, LogConfigurationType, + ManagedLoginBrandingExistsException, + ManagedLoginBrandingType, MessageTemplateType, MFAMethodNotFoundException, MFAOptionType, @@ -471,18 +505,16 @@ import { PasswordResetRequiredException, PreconditionNotMetException, PreTokenGenerationVersionConfigType, - ProviderDescription, ProviderUserIdentifierType, RecoveryOptionType, - ResendConfirmationCodeRequest, ResourceNotFoundException, ResourceServerScopeType, - RespondToAuthChallengeRequest, RiskConfigurationType, RiskExceptionConfigurationType, S3ConfigurationType, SchemaAttributeType, ScopeDoesNotExistException, + SignInPolicyType, SmsConfigurationType, SmsMfaConfigType, SMSMfaSettingsType, @@ -490,6 +522,7 @@ import { SoftwareTokenMFANotFoundException, SoftwareTokenMfaSettingsType, StringAttributeConstraintsType, + TierChangeNotAllowedException, TokenValidityUnitsType, TooManyFailedAttemptsException, TooManyRequestsException, @@ -510,16 +543,45 @@ import { UserPoolAddOnNotEnabledException, UserPoolAddOnsType, UserPoolClientType, - UserPoolDescriptionType, UserPoolPolicyType, UserPoolTaggingException, UserPoolType, UserType, VerificationMessageTemplateType, VerifiedAttributeType, + WebAuthnChallengeNotFoundException, + WebAuthnClientMismatchException, + WebAuthnCredentialNotSupportedException, + WebAuthnNotEnabledException, + WebAuthnOriginNotAllowedException, + WebAuthnRelyingPartyMismatchException, } from "../models/models_0"; import { EnableSoftwareTokenMFAException, + GlobalSignOutRequest, + InitiateAuthRequest, + ListDevicesRequest, + ListDevicesResponse, + ListGroupsRequest, + ListGroupsResponse, + ListIdentityProvidersRequest, + ListIdentityProvidersResponse, + ListResourceServersRequest, + ListTagsForResourceRequest, + ListUserImportJobsRequest, + ListUserImportJobsResponse, + ListUserPoolClientsRequest, + ListUserPoolsRequest, + ListUserPoolsResponse, + ListUsersInGroupRequest, + ListUsersInGroupResponse, + ListUsersRequest, + ListUsersResponse, + ListWebAuthnCredentialsRequest, + ListWebAuthnCredentialsResponse, + ProviderDescription, + ResendConfirmationCodeRequest, + RespondToAuthChallengeRequest, RevokeTokenRequest, SetLogDeliveryConfigurationRequest, SetRiskConfigurationRequest, @@ -532,6 +594,8 @@ import { SignUpRequest, StartUserImportJobRequest, StartUserImportJobResponse, + StartWebAuthnRegistrationRequest, + StartWebAuthnRegistrationResponse, StopUserImportJobRequest, StopUserImportJobResponse, TagResourceRequest, @@ -545,14 +609,20 @@ import { UpdateGroupResponse, UpdateIdentityProviderRequest, UpdateIdentityProviderResponse, + UpdateManagedLoginBrandingRequest, + UpdateManagedLoginBrandingResponse, UpdateResourceServerRequest, UpdateUserAttributesRequest, UpdateUserPoolClientRequest, UpdateUserPoolClientResponse, UpdateUserPoolDomainRequest, UpdateUserPoolRequest, + UserPoolDescriptionType, VerifySoftwareTokenRequest, VerifyUserAttributeRequest, + WebAuthnConfigurationMissingException, + WebAuthnConfigurationType, + WebAuthnCredentialDescription, } from "../models/models_1"; /** @@ -932,6 +1002,19 @@ export const se_ChangePasswordCommand = async ( return buildHttpRpcRequest(context, headers, "/", undefined, body); }; +/** + * serializeAws_json1_1CompleteWebAuthnRegistrationCommand + */ +export const se_CompleteWebAuthnRegistrationCommand = async ( + input: CompleteWebAuthnRegistrationCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = sharedHeaders("CompleteWebAuthnRegistration"); + let body: any; + body = JSON.stringify(se_CompleteWebAuthnRegistrationRequest(input, context)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + /** * serializeAws_json1_1ConfirmDeviceCommand */ @@ -997,6 +1080,19 @@ export const se_CreateIdentityProviderCommand = async ( return buildHttpRpcRequest(context, headers, "/", undefined, body); }; +/** + * serializeAws_json1_1CreateManagedLoginBrandingCommand + */ +export const se_CreateManagedLoginBrandingCommand = async ( + input: CreateManagedLoginBrandingCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = sharedHeaders("CreateManagedLoginBranding"); + let body: any; + body = JSON.stringify(se_CreateManagedLoginBrandingRequest(input, context)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + /** * serializeAws_json1_1CreateResourceServerCommand */ @@ -1088,6 +1184,19 @@ export const se_DeleteIdentityProviderCommand = async ( return buildHttpRpcRequest(context, headers, "/", undefined, body); }; +/** + * serializeAws_json1_1DeleteManagedLoginBrandingCommand + */ +export const se_DeleteManagedLoginBrandingCommand = async ( + input: DeleteManagedLoginBrandingCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = sharedHeaders("DeleteManagedLoginBranding"); + let body: any; + body = JSON.stringify(_json(input)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + /** * serializeAws_json1_1DeleteResourceServerCommand */ @@ -1166,6 +1275,19 @@ export const se_DeleteUserPoolDomainCommand = async ( return buildHttpRpcRequest(context, headers, "/", undefined, body); }; +/** + * serializeAws_json1_1DeleteWebAuthnCredentialCommand + */ +export const se_DeleteWebAuthnCredentialCommand = async ( + input: DeleteWebAuthnCredentialCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = sharedHeaders("DeleteWebAuthnCredential"); + let body: any; + body = JSON.stringify(_json(input)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + /** * serializeAws_json1_1DescribeIdentityProviderCommand */ @@ -1179,6 +1301,32 @@ export const se_DescribeIdentityProviderCommand = async ( return buildHttpRpcRequest(context, headers, "/", undefined, body); }; +/** + * serializeAws_json1_1DescribeManagedLoginBrandingCommand + */ +export const se_DescribeManagedLoginBrandingCommand = async ( + input: DescribeManagedLoginBrandingCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = sharedHeaders("DescribeManagedLoginBranding"); + let body: any; + body = JSON.stringify(_json(input)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + +/** + * serializeAws_json1_1DescribeManagedLoginBrandingByClientCommand + */ +export const se_DescribeManagedLoginBrandingByClientCommand = async ( + input: DescribeManagedLoginBrandingByClientCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = sharedHeaders("DescribeManagedLoginBrandingByClient"); + let body: any; + body = JSON.stringify(_json(input)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + /** * serializeAws_json1_1DescribeResourceServerCommand */ @@ -1400,6 +1548,19 @@ export const se_GetUserAttributeVerificationCodeCommand = async ( return buildHttpRpcRequest(context, headers, "/", undefined, body); }; +/** + * serializeAws_json1_1GetUserAuthFactorsCommand + */ +export const se_GetUserAuthFactorsCommand = async ( + input: GetUserAuthFactorsCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = sharedHeaders("GetUserAuthFactors"); + let body: any; + body = JSON.stringify(_json(input)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + /** * serializeAws_json1_1GetUserPoolMfaConfigCommand */ @@ -1569,6 +1730,19 @@ export const se_ListUsersInGroupCommand = async ( return buildHttpRpcRequest(context, headers, "/", undefined, body); }; +/** + * serializeAws_json1_1ListWebAuthnCredentialsCommand + */ +export const se_ListWebAuthnCredentialsCommand = async ( + input: ListWebAuthnCredentialsCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = sharedHeaders("ListWebAuthnCredentials"); + let body: any; + body = JSON.stringify(_json(input)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + /** * serializeAws_json1_1ResendConfirmationCodeCommand */ @@ -1709,6 +1883,19 @@ export const se_StartUserImportJobCommand = async ( return buildHttpRpcRequest(context, headers, "/", undefined, body); }; +/** + * serializeAws_json1_1StartWebAuthnRegistrationCommand + */ +export const se_StartWebAuthnRegistrationCommand = async ( + input: StartWebAuthnRegistrationCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = sharedHeaders("StartWebAuthnRegistration"); + let body: any; + body = JSON.stringify(_json(input)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + /** * serializeAws_json1_1StopUserImportJobCommand */ @@ -1800,6 +1987,19 @@ export const se_UpdateIdentityProviderCommand = async ( return buildHttpRpcRequest(context, headers, "/", undefined, body); }; +/** + * serializeAws_json1_1UpdateManagedLoginBrandingCommand + */ +export const se_UpdateManagedLoginBrandingCommand = async ( + input: UpdateManagedLoginBrandingCommandInput, + context: __SerdeContext +): Promise<__HttpRequest> => { + const headers: __HeaderBag = sharedHeaders("UpdateManagedLoginBranding"); + let body: any; + body = JSON.stringify(se_UpdateManagedLoginBrandingRequest(input, context)); + return buildHttpRpcRequest(context, headers, "/", undefined, body); +}; + /** * serializeAws_json1_1UpdateResourceServerCommand */ @@ -2459,6 +2659,26 @@ export const de_ChangePasswordCommand = async ( return response; }; +/** + * deserializeAws_json1_1CompleteWebAuthnRegistrationCommand + */ +export const de_CompleteWebAuthnRegistrationCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode >= 300) { + return de_CommandError(output, context); + } + const data: any = await parseBody(output.body, context); + let contents: any = {}; + contents = _json(data); + const response: CompleteWebAuthnRegistrationCommandOutput = { + $metadata: deserializeMetadata(output), + ...contents, + }; + return response; +}; + /** * deserializeAws_json1_1ConfirmDeviceCommand */ @@ -2559,6 +2779,26 @@ export const de_CreateIdentityProviderCommand = async ( return response; }; +/** + * deserializeAws_json1_1CreateManagedLoginBrandingCommand + */ +export const de_CreateManagedLoginBrandingCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode >= 300) { + return de_CommandError(output, context); + } + const data: any = await parseBody(output.body, context); + let contents: any = {}; + contents = de_CreateManagedLoginBrandingResponse(data, context); + const response: CreateManagedLoginBrandingCommandOutput = { + $metadata: deserializeMetadata(output), + ...contents, + }; + return response; +}; + /** * deserializeAws_json1_1CreateResourceServerCommand */ @@ -2693,6 +2933,23 @@ export const de_DeleteIdentityProviderCommand = async ( return response; }; +/** + * deserializeAws_json1_1DeleteManagedLoginBrandingCommand + */ +export const de_DeleteManagedLoginBrandingCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode >= 300) { + return de_CommandError(output, context); + } + await collectBody(output.body, context); + const response: DeleteManagedLoginBrandingCommandOutput = { + $metadata: deserializeMetadata(output), + }; + return response; +}; + /** * deserializeAws_json1_1DeleteResourceServerCommand */ @@ -2801,6 +3058,26 @@ export const de_DeleteUserPoolDomainCommand = async ( return response; }; +/** + * deserializeAws_json1_1DeleteWebAuthnCredentialCommand + */ +export const de_DeleteWebAuthnCredentialCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode >= 300) { + return de_CommandError(output, context); + } + const data: any = await parseBody(output.body, context); + let contents: any = {}; + contents = _json(data); + const response: DeleteWebAuthnCredentialCommandOutput = { + $metadata: deserializeMetadata(output), + ...contents, + }; + return response; +}; + /** * deserializeAws_json1_1DescribeIdentityProviderCommand */ @@ -2821,6 +3098,46 @@ export const de_DescribeIdentityProviderCommand = async ( return response; }; +/** + * deserializeAws_json1_1DescribeManagedLoginBrandingCommand + */ +export const de_DescribeManagedLoginBrandingCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode >= 300) { + return de_CommandError(output, context); + } + const data: any = await parseBody(output.body, context); + let contents: any = {}; + contents = de_DescribeManagedLoginBrandingResponse(data, context); + const response: DescribeManagedLoginBrandingCommandOutput = { + $metadata: deserializeMetadata(output), + ...contents, + }; + return response; +}; + +/** + * deserializeAws_json1_1DescribeManagedLoginBrandingByClientCommand + */ +export const de_DescribeManagedLoginBrandingByClientCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode >= 300) { + return de_CommandError(output, context); + } + const data: any = await parseBody(output.body, context); + let contents: any = {}; + contents = de_DescribeManagedLoginBrandingByClientResponse(data, context); + const response: DescribeManagedLoginBrandingByClientCommandOutput = { + $metadata: deserializeMetadata(output), + ...contents, + }; + return response; +}; + /** * deserializeAws_json1_1DescribeResourceServerCommand */ @@ -3158,6 +3475,26 @@ export const de_GetUserAttributeVerificationCodeCommand = async ( return response; }; +/** + * deserializeAws_json1_1GetUserAuthFactorsCommand + */ +export const de_GetUserAuthFactorsCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode >= 300) { + return de_CommandError(output, context); + } + const data: any = await parseBody(output.body, context); + let contents: any = {}; + contents = _json(data); + const response: GetUserAuthFactorsCommandOutput = { + $metadata: deserializeMetadata(output), + ...contents, + }; + return response; +}; + /** * deserializeAws_json1_1GetUserPoolMfaConfigCommand */ @@ -3419,19 +3756,19 @@ export const de_ListUsersInGroupCommand = async ( }; /** - * deserializeAws_json1_1ResendConfirmationCodeCommand + * deserializeAws_json1_1ListWebAuthnCredentialsCommand */ -export const de_ResendConfirmationCodeCommand = async ( +export const de_ListWebAuthnCredentialsCommand = async ( output: __HttpResponse, context: __SerdeContext -): Promise => { +): Promise => { if (output.statusCode >= 300) { return de_CommandError(output, context); } const data: any = await parseBody(output.body, context); let contents: any = {}; - contents = _json(data); - const response: ResendConfirmationCodeCommandOutput = { + contents = de_ListWebAuthnCredentialsResponse(data, context); + const response: ListWebAuthnCredentialsCommandOutput = { $metadata: deserializeMetadata(output), ...contents, }; @@ -3439,9 +3776,29 @@ export const de_ResendConfirmationCodeCommand = async ( }; /** - * deserializeAws_json1_1RespondToAuthChallengeCommand + * deserializeAws_json1_1ResendConfirmationCodeCommand */ -export const de_RespondToAuthChallengeCommand = async ( +export const de_ResendConfirmationCodeCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode >= 300) { + return de_CommandError(output, context); + } + const data: any = await parseBody(output.body, context); + let contents: any = {}; + contents = _json(data); + const response: ResendConfirmationCodeCommandOutput = { + $metadata: deserializeMetadata(output), + ...contents, + }; + return response; +}; + +/** + * deserializeAws_json1_1RespondToAuthChallengeCommand + */ +export const de_RespondToAuthChallengeCommand = async ( output: __HttpResponse, context: __SerdeContext ): Promise => { @@ -3638,6 +3995,26 @@ export const de_StartUserImportJobCommand = async ( return response; }; +/** + * deserializeAws_json1_1StartWebAuthnRegistrationCommand + */ +export const de_StartWebAuthnRegistrationCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode >= 300) { + return de_CommandError(output, context); + } + const data: any = await parseBody(output.body, context); + let contents: any = {}; + contents = de_StartWebAuthnRegistrationResponse(data, context); + const response: StartWebAuthnRegistrationCommandOutput = { + $metadata: deserializeMetadata(output), + ...contents, + }; + return response; +}; + /** * deserializeAws_json1_1StopUserImportJobCommand */ @@ -3778,6 +4155,26 @@ export const de_UpdateIdentityProviderCommand = async ( return response; }; +/** + * deserializeAws_json1_1UpdateManagedLoginBrandingCommand + */ +export const de_UpdateManagedLoginBrandingCommand = async ( + output: __HttpResponse, + context: __SerdeContext +): Promise => { + if (output.statusCode >= 300) { + return de_CommandError(output, context); + } + const data: any = await parseBody(output.body, context); + let contents: any = {}; + contents = de_UpdateManagedLoginBrandingResponse(data, context); + const response: UpdateManagedLoginBrandingCommandOutput = { + $metadata: deserializeMetadata(output), + ...contents, + }; + return response; +}; + /** * deserializeAws_json1_1UpdateResourceServerCommand */ @@ -4024,12 +4421,39 @@ const de_CommandError = async (output: __HttpResponse, context: __SerdeContext): case "ForbiddenException": case "com.amazonaws.cognitoidentityprovider#ForbiddenException": throw await de_ForbiddenExceptionRes(parsedOutput, context); + case "WebAuthnChallengeNotFoundException": + case "com.amazonaws.cognitoidentityprovider#WebAuthnChallengeNotFoundException": + throw await de_WebAuthnChallengeNotFoundExceptionRes(parsedOutput, context); + case "WebAuthnClientMismatchException": + case "com.amazonaws.cognitoidentityprovider#WebAuthnClientMismatchException": + throw await de_WebAuthnClientMismatchExceptionRes(parsedOutput, context); + case "WebAuthnCredentialNotSupportedException": + case "com.amazonaws.cognitoidentityprovider#WebAuthnCredentialNotSupportedException": + throw await de_WebAuthnCredentialNotSupportedExceptionRes(parsedOutput, context); + case "WebAuthnNotEnabledException": + case "com.amazonaws.cognitoidentityprovider#WebAuthnNotEnabledException": + throw await de_WebAuthnNotEnabledExceptionRes(parsedOutput, context); + case "WebAuthnOriginNotAllowedException": + case "com.amazonaws.cognitoidentityprovider#WebAuthnOriginNotAllowedException": + throw await de_WebAuthnOriginNotAllowedExceptionRes(parsedOutput, context); + case "WebAuthnRelyingPartyMismatchException": + case "com.amazonaws.cognitoidentityprovider#WebAuthnRelyingPartyMismatchException": + throw await de_WebAuthnRelyingPartyMismatchExceptionRes(parsedOutput, context); case "GroupExistsException": case "com.amazonaws.cognitoidentityprovider#GroupExistsException": throw await de_GroupExistsExceptionRes(parsedOutput, context); case "DuplicateProviderException": case "com.amazonaws.cognitoidentityprovider#DuplicateProviderException": throw await de_DuplicateProviderExceptionRes(parsedOutput, context); + case "ManagedLoginBrandingExistsException": + case "com.amazonaws.cognitoidentityprovider#ManagedLoginBrandingExistsException": + throw await de_ManagedLoginBrandingExistsExceptionRes(parsedOutput, context); + case "FeatureUnavailableInTierException": + case "com.amazonaws.cognitoidentityprovider#FeatureUnavailableInTierException": + throw await de_FeatureUnavailableInTierExceptionRes(parsedOutput, context); + case "TierChangeNotAllowedException": + case "com.amazonaws.cognitoidentityprovider#TierChangeNotAllowedException": + throw await de_TierChangeNotAllowedExceptionRes(parsedOutput, context); case "UserPoolTaggingException": case "com.amazonaws.cognitoidentityprovider#UserPoolTaggingException": throw await de_UserPoolTaggingExceptionRes(parsedOutput, context); @@ -4051,6 +4475,9 @@ const de_CommandError = async (output: __HttpResponse, context: __SerdeContext): case "UnsupportedTokenTypeException": case "com.amazonaws.cognitoidentityprovider#UnsupportedTokenTypeException": throw await de_UnsupportedTokenTypeExceptionRes(parsedOutput, context); + case "WebAuthnConfigurationMissingException": + case "com.amazonaws.cognitoidentityprovider#WebAuthnConfigurationMissingException": + throw await de_WebAuthnConfigurationMissingExceptionRes(parsedOutput, context); case "EnableSoftwareTokenMFAException": case "com.amazonaws.cognitoidentityprovider#EnableSoftwareTokenMFAException": throw await de_EnableSoftwareTokenMFAExceptionRes(parsedOutput, context); @@ -4176,6 +4603,22 @@ const de_ExpiredCodeExceptionRes = async ( return __decorateServiceException(exception, body); }; +/** + * deserializeAws_json1_1FeatureUnavailableInTierExceptionRes + */ +const de_FeatureUnavailableInTierExceptionRes = async ( + parsedOutput: any, + context: __SerdeContext +): Promise => { + const body = parsedOutput.body; + const deserialized: any = _json(body); + const exception = new FeatureUnavailableInTierException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized, + }); + return __decorateServiceException(exception, body); +}; + /** * deserializeAws_json1_1ForbiddenExceptionRes */ @@ -4365,6 +4808,22 @@ const de_LimitExceededExceptionRes = async ( return __decorateServiceException(exception, body); }; +/** + * deserializeAws_json1_1ManagedLoginBrandingExistsExceptionRes + */ +const de_ManagedLoginBrandingExistsExceptionRes = async ( + parsedOutput: any, + context: __SerdeContext +): Promise => { + const body = parsedOutput.body; + const deserialized: any = _json(body); + const exception = new ManagedLoginBrandingExistsException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized, + }); + return __decorateServiceException(exception, body); +}; + /** * deserializeAws_json1_1MFAMethodNotFoundExceptionRes */ @@ -4493,6 +4952,22 @@ const de_SoftwareTokenMFANotFoundExceptionRes = async ( return __decorateServiceException(exception, body); }; +/** + * deserializeAws_json1_1TierChangeNotAllowedExceptionRes + */ +const de_TierChangeNotAllowedExceptionRes = async ( + parsedOutput: any, + context: __SerdeContext +): Promise => { + const body = parsedOutput.body; + const deserialized: any = _json(body); + const exception = new TierChangeNotAllowedException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized, + }); + return __decorateServiceException(exception, body); +}; + /** * deserializeAws_json1_1TooManyFailedAttemptsExceptionRes */ @@ -4733,6 +5208,118 @@ const de_UserPoolTaggingExceptionRes = async ( return __decorateServiceException(exception, body); }; +/** + * deserializeAws_json1_1WebAuthnChallengeNotFoundExceptionRes + */ +const de_WebAuthnChallengeNotFoundExceptionRes = async ( + parsedOutput: any, + context: __SerdeContext +): Promise => { + const body = parsedOutput.body; + const deserialized: any = _json(body); + const exception = new WebAuthnChallengeNotFoundException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized, + }); + return __decorateServiceException(exception, body); +}; + +/** + * deserializeAws_json1_1WebAuthnClientMismatchExceptionRes + */ +const de_WebAuthnClientMismatchExceptionRes = async ( + parsedOutput: any, + context: __SerdeContext +): Promise => { + const body = parsedOutput.body; + const deserialized: any = _json(body); + const exception = new WebAuthnClientMismatchException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized, + }); + return __decorateServiceException(exception, body); +}; + +/** + * deserializeAws_json1_1WebAuthnConfigurationMissingExceptionRes + */ +const de_WebAuthnConfigurationMissingExceptionRes = async ( + parsedOutput: any, + context: __SerdeContext +): Promise => { + const body = parsedOutput.body; + const deserialized: any = _json(body); + const exception = new WebAuthnConfigurationMissingException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized, + }); + return __decorateServiceException(exception, body); +}; + +/** + * deserializeAws_json1_1WebAuthnCredentialNotSupportedExceptionRes + */ +const de_WebAuthnCredentialNotSupportedExceptionRes = async ( + parsedOutput: any, + context: __SerdeContext +): Promise => { + const body = parsedOutput.body; + const deserialized: any = _json(body); + const exception = new WebAuthnCredentialNotSupportedException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized, + }); + return __decorateServiceException(exception, body); +}; + +/** + * deserializeAws_json1_1WebAuthnNotEnabledExceptionRes + */ +const de_WebAuthnNotEnabledExceptionRes = async ( + parsedOutput: any, + context: __SerdeContext +): Promise => { + const body = parsedOutput.body; + const deserialized: any = _json(body); + const exception = new WebAuthnNotEnabledException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized, + }); + return __decorateServiceException(exception, body); +}; + +/** + * deserializeAws_json1_1WebAuthnOriginNotAllowedExceptionRes + */ +const de_WebAuthnOriginNotAllowedExceptionRes = async ( + parsedOutput: any, + context: __SerdeContext +): Promise => { + const body = parsedOutput.body; + const deserialized: any = _json(body); + const exception = new WebAuthnOriginNotAllowedException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized, + }); + return __decorateServiceException(exception, body); +}; + +/** + * deserializeAws_json1_1WebAuthnRelyingPartyMismatchExceptionRes + */ +const de_WebAuthnRelyingPartyMismatchExceptionRes = async ( + parsedOutput: any, + context: __SerdeContext +): Promise => { + const body = parsedOutput.body; + const deserialized: any = _json(body); + const exception = new WebAuthnRelyingPartyMismatchException({ + $metadata: deserializeMetadata(parsedOutput), + ...deserialized, + }); + return __decorateServiceException(exception, body); +}; + // se_AccountRecoverySettingType omitted. // se_AccountTakeoverActionsType omitted. @@ -4801,10 +5388,36 @@ const de_UserPoolTaggingExceptionRes = async ( // se_AliasAttributesListType omitted. +// se_AllowedFirstAuthFactorsListType omitted. + // se_AnalyticsConfigurationType omitted. // se_AnalyticsMetadataType omitted. +/** + * serializeAws_json1_1AssetListType + */ +const se_AssetListType = (input: AssetType[], context: __SerdeContext): any => { + return input + .filter((e: any) => e != null) + .map((entry) => { + return se_AssetType(entry, context); + }); +}; + +/** + * serializeAws_json1_1AssetType + */ +const se_AssetType = (input: AssetType, context: __SerdeContext): any => { + return take(input, { + Bytes: context.base64Encoder, + Category: [], + ColorMode: [], + Extension: [], + ResourceId: [], + }); +}; + // se_AssociateSoftwareTokenRequest omitted. // se_AttributeListType omitted. @@ -4833,6 +5446,19 @@ const de_UserPoolTaggingExceptionRes = async ( // se_CloudWatchLogsConfigurationType omitted. +/** + * serializeAws_json1_1CompleteWebAuthnRegistrationRequest + */ +const se_CompleteWebAuthnRegistrationRequest = ( + input: CompleteWebAuthnRegistrationRequest, + context: __SerdeContext +): any => { + return take(input, { + AccessToken: [], + Credential: (_) => se_Document(_, context), + }); +}; + // se_CompromisedCredentialsActionsType omitted. // se_CompromisedCredentialsRiskConfigurationType omitted. @@ -4849,6 +5475,22 @@ const de_UserPoolTaggingExceptionRes = async ( // se_CreateIdentityProviderRequest omitted. +/** + * serializeAws_json1_1CreateManagedLoginBrandingRequest + */ +const se_CreateManagedLoginBrandingRequest = ( + input: CreateManagedLoginBrandingRequest, + context: __SerdeContext +): any => { + return take(input, { + Assets: (_) => se_AssetListType(_, context), + ClientId: [], + Settings: (_) => se_Document(_, context), + UseCognitoProvidedValues: [], + UserPoolId: [], + }); +}; + // se_CreateResourceServerRequest omitted. // se_CreateUserImportJobRequest omitted. @@ -4871,6 +5513,8 @@ const de_UserPoolTaggingExceptionRes = async ( // se_DeleteIdentityProviderRequest omitted. +// se_DeleteManagedLoginBrandingRequest omitted. + // se_DeleteResourceServerRequest omitted. // se_DeleteUserAttributesRequest omitted. @@ -4883,10 +5527,16 @@ const de_UserPoolTaggingExceptionRes = async ( // se_DeleteUserRequest omitted. +// se_DeleteWebAuthnCredentialRequest omitted. + // se_DeliveryMediumListType omitted. // se_DescribeIdentityProviderRequest omitted. +// se_DescribeManagedLoginBrandingByClientRequest omitted. + +// se_DescribeManagedLoginBrandingRequest omitted. + // se_DescribeResourceServerRequest omitted. // se_DescribeRiskConfigurationRequest omitted. @@ -4903,6 +5553,13 @@ const de_UserPoolTaggingExceptionRes = async ( // se_DeviceSecretVerifierConfigType omitted. +/** + * serializeAws_json1_1Document + */ +const se_Document = (input: __DocumentType, context: __SerdeContext): any => { + return input; +}; + // se_EmailConfigurationType omitted. // se_EmailMfaConfigType omitted. @@ -4935,6 +5592,8 @@ const de_UserPoolTaggingExceptionRes = async ( // se_GetUserAttributeVerificationCodeRequest omitted. +// se_GetUserAuthFactorsRequest omitted. + // se_GetUserPoolMfaConfigRequest omitted. // se_GetUserRequest omitted. @@ -4971,6 +5630,8 @@ const de_UserPoolTaggingExceptionRes = async ( // se_ListUsersRequest omitted. +// se_ListWebAuthnCredentialsRequest omitted. + // se_LogConfigurationListType omitted. // se_LogConfigurationType omitted. @@ -5047,6 +5708,8 @@ const se_SetUICustomizationRequest = (input: SetUICustomizationRequest, context: // se_SetUserSettingsRequest omitted. +// se_SignInPolicyType omitted. + // se_SignUpRequest omitted. // se_SkippedIPRangeListType omitted. @@ -5063,6 +5726,8 @@ const se_SetUICustomizationRequest = (input: SetUICustomizationRequest, context: // se_StartUserImportJobRequest omitted. +// se_StartWebAuthnRegistrationRequest omitted. + // se_StopUserImportJobRequest omitted. // se_StringAttributeConstraintsType omitted. @@ -5083,6 +5748,22 @@ const se_SetUICustomizationRequest = (input: SetUICustomizationRequest, context: // se_UpdateIdentityProviderRequest omitted. +/** + * serializeAws_json1_1UpdateManagedLoginBrandingRequest + */ +const se_UpdateManagedLoginBrandingRequest = ( + input: UpdateManagedLoginBrandingRequest, + context: __SerdeContext +): any => { + return take(input, { + Assets: (_) => se_AssetListType(_, context), + ManagedLoginBrandingId: [], + Settings: (_) => se_Document(_, context), + UseCognitoProvidedValues: [], + UserPoolId: [], + }); +}; + // se_UpdateResourceServerRequest omitted. // se_UpdateUserAttributesRequest omitted. @@ -5117,6 +5798,8 @@ const se_SetUICustomizationRequest = (input: SetUICustomizationRequest, context: // se_VerifyUserAttributeRequest omitted. +// se_WebAuthnConfigurationType omitted. + // de_AccountRecoverySettingType omitted. // de_AccountTakeoverActionsType omitted. @@ -5232,8 +5915,35 @@ const de_AdminListUserAuthEventsResponse = (output: any, context: __SerdeContext // de_AliasExistsException omitted. +// de_AllowedFirstAuthFactorsListType omitted. + // de_AnalyticsConfigurationType omitted. +/** + * deserializeAws_json1_1AssetListType + */ +const de_AssetListType = (output: any, context: __SerdeContext): AssetType[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + return de_AssetType(entry, context); + }); + return retVal; +}; + +/** + * deserializeAws_json1_1AssetType + */ +const de_AssetType = (output: any, context: __SerdeContext): AssetType => { + return take(output, { + Bytes: context.base64Decoder, + Category: __expectString, + ColorMode: __expectString, + Extension: __expectString, + ResourceId: __expectString, + }) as any; +}; + // de_AssociateSoftwareTokenResponse omitted. // de_AttributeListType omitted. @@ -5274,6 +5984,8 @@ const de_AuthEventType = (output: any, context: __SerdeContext): AuthEventType = }) as any; }; +// de_AvailableChallengeListType omitted. + // de_BlockedIPRangeListType omitted. // de_CallbackURLsListType omitted. @@ -5298,12 +6010,16 @@ const de_AuthEventType = (output: any, context: __SerdeContext): AuthEventType = // de_CodeMismatchException omitted. +// de_CompleteWebAuthnRegistrationResponse omitted. + // de_CompromisedCredentialsActionsType omitted. // de_CompromisedCredentialsRiskConfigurationType omitted. // de_ConcurrentModificationException omitted. +// de_ConfiguredUserAuthFactorsListType omitted. + // de_ConfirmDeviceResponse omitted. // de_ConfirmForgotPasswordResponse omitted. @@ -5328,6 +6044,18 @@ const de_CreateIdentityProviderResponse = (output: any, context: __SerdeContext) }) as any; }; +/** + * deserializeAws_json1_1CreateManagedLoginBrandingResponse + */ +const de_CreateManagedLoginBrandingResponse = ( + output: any, + context: __SerdeContext +): CreateManagedLoginBrandingResponse => { + return take(output, { + ManagedLoginBranding: (_: any) => de_ManagedLoginBrandingType(_, context), + }) as any; +}; + // de_CreateResourceServerResponse omitted. /** @@ -5369,6 +6097,8 @@ const de_CreateUserPoolResponse = (output: any, context: __SerdeContext): Create // de_DeleteUserPoolDomainResponse omitted. +// de_DeleteWebAuthnCredentialResponse omitted. + /** * deserializeAws_json1_1DescribeIdentityProviderResponse */ @@ -5381,6 +6111,30 @@ const de_DescribeIdentityProviderResponse = ( }) as any; }; +/** + * deserializeAws_json1_1DescribeManagedLoginBrandingByClientResponse + */ +const de_DescribeManagedLoginBrandingByClientResponse = ( + output: any, + context: __SerdeContext +): DescribeManagedLoginBrandingByClientResponse => { + return take(output, { + ManagedLoginBranding: (_: any) => de_ManagedLoginBrandingType(_, context), + }) as any; +}; + +/** + * deserializeAws_json1_1DescribeManagedLoginBrandingResponse + */ +const de_DescribeManagedLoginBrandingResponse = ( + output: any, + context: __SerdeContext +): DescribeManagedLoginBrandingResponse => { + return take(output, { + ManagedLoginBranding: (_: any) => de_ManagedLoginBrandingType(_, context), + }) as any; +}; + // de_DescribeResourceServerResponse omitted. /** @@ -5451,6 +6205,13 @@ const de_DeviceType = (output: any, context: __SerdeContext): DeviceType => { }) as any; }; +/** + * deserializeAws_json1_1Document + */ +const de_Document = (output: any, context: __SerdeContext): __DocumentType => { + return output; +}; + // de_DomainDescriptionType omitted. // de_DuplicateProviderException omitted. @@ -5482,6 +6243,8 @@ const de_EventFeedbackType = (output: any, context: __SerdeContext): EventFeedba // de_ExplicitAuthFlowsListType omitted. +// de_FeatureUnavailableInTierException omitted. + // de_FirehoseConfigurationType omitted. // de_ForbiddenException omitted. @@ -5535,6 +6298,8 @@ const de_GetUICustomizationResponse = (output: any, context: __SerdeContext): Ge // de_GetUserAttributeVerificationCodeResponse omitted. +// de_GetUserAuthFactorsResponse omitted. + // de_GetUserPoolMfaConfigResponse omitted. // de_GetUserResponse omitted. @@ -5690,6 +6455,16 @@ const de_ListUsersResponse = (output: any, context: __SerdeContext): ListUsersRe }) as any; }; +/** + * deserializeAws_json1_1ListWebAuthnCredentialsResponse + */ +const de_ListWebAuthnCredentialsResponse = (output: any, context: __SerdeContext): ListWebAuthnCredentialsResponse => { + return take(output, { + Credentials: (_: any) => de_WebAuthnCredentialDescriptionListType(_, context), + NextToken: __expectString, + }) as any; +}; + // de_LogConfigurationListType omitted. // de_LogConfigurationType omitted. @@ -5698,6 +6473,23 @@ const de_ListUsersResponse = (output: any, context: __SerdeContext): ListUsersRe // de_LogoutURLsListType omitted. +// de_ManagedLoginBrandingExistsException omitted. + +/** + * deserializeAws_json1_1ManagedLoginBrandingType + */ +const de_ManagedLoginBrandingType = (output: any, context: __SerdeContext): ManagedLoginBrandingType => { + return take(output, { + Assets: (_: any) => de_AssetListType(_, context), + CreationDate: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + LastModifiedDate: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + ManagedLoginBrandingId: __expectString, + Settings: (_: any) => de_Document(_, context), + UseCognitoProvidedValues: __expectBoolean, + UserPoolId: __expectString, + }) as any; +}; + // de_MessageTemplateType omitted. // de_MFAMethodNotFoundException omitted. @@ -5826,6 +6618,8 @@ const de_SetUICustomizationResponse = (output: any, context: __SerdeContext): Se // de_SetUserSettingsResponse omitted. +// de_SignInPolicyType omitted. + // de_SignUpResponse omitted. // de_SkippedIPRangeListType omitted. @@ -5847,6 +6641,18 @@ const de_StartUserImportJobResponse = (output: any, context: __SerdeContext): St }) as any; }; +/** + * deserializeAws_json1_1StartWebAuthnRegistrationResponse + */ +const de_StartWebAuthnRegistrationResponse = ( + output: any, + context: __SerdeContext +): StartWebAuthnRegistrationResponse => { + return take(output, { + CredentialCreationOptions: (_: any) => de_Document(_, context), + }) as any; +}; + /** * deserializeAws_json1_1StopUserImportJobResponse */ @@ -5862,6 +6668,8 @@ const de_StopUserImportJobResponse = (output: any, context: __SerdeContext): Sto // de_TagResourceResponse omitted. +// de_TierChangeNotAllowedException omitted. + // de_TokenValidityUnitsType omitted. // de_TooManyFailedAttemptsException omitted. @@ -5919,6 +6727,18 @@ const de_UpdateIdentityProviderResponse = (output: any, context: __SerdeContext) }) as any; }; +/** + * deserializeAws_json1_1UpdateManagedLoginBrandingResponse + */ +const de_UpdateManagedLoginBrandingResponse = ( + output: any, + context: __SerdeContext +): UpdateManagedLoginBrandingResponse => { + return take(output, { + ManagedLoginBranding: (_: any) => de_ManagedLoginBrandingType(_, context), + }) as any; +}; + // de_UpdateResourceServerResponse omitted. // de_UpdateUserAttributesResponse omitted. @@ -6095,6 +6915,7 @@ const de_UserPoolType = (output: any, context: __SerdeContext): UserPoolType => UserAttributeUpdateSettings: _json, UserPoolAddOns: _json, UserPoolTags: _json, + UserPoolTier: __expectString, UsernameAttributes: _json, UsernameConfiguration: _json, VerificationMessageTemplate: _json, @@ -6136,6 +6957,53 @@ const de_UserType = (output: any, context: __SerdeContext): UserType => { // de_VerifyUserAttributeResponse omitted. +// de_WebAuthnAuthenticatorTransportsList omitted. + +// de_WebAuthnChallengeNotFoundException omitted. + +// de_WebAuthnClientMismatchException omitted. + +// de_WebAuthnConfigurationMissingException omitted. + +// de_WebAuthnConfigurationType omitted. + +/** + * deserializeAws_json1_1WebAuthnCredentialDescription + */ +const de_WebAuthnCredentialDescription = (output: any, context: __SerdeContext): WebAuthnCredentialDescription => { + return take(output, { + AuthenticatorAttachment: __expectString, + AuthenticatorTransports: _json, + CreatedAt: (_: any) => __expectNonNull(__parseEpochTimestamp(__expectNumber(_))), + CredentialId: __expectString, + FriendlyCredentialName: __expectString, + RelyingPartyId: __expectString, + }) as any; +}; + +/** + * deserializeAws_json1_1WebAuthnCredentialDescriptionListType + */ +const de_WebAuthnCredentialDescriptionListType = ( + output: any, + context: __SerdeContext +): WebAuthnCredentialDescription[] => { + const retVal = (output || []) + .filter((e: any) => e != null) + .map((entry: any) => { + return de_WebAuthnCredentialDescription(entry, context); + }); + return retVal; +}; + +// de_WebAuthnCredentialNotSupportedException omitted. + +// de_WebAuthnNotEnabledException omitted. + +// de_WebAuthnOriginNotAllowedException omitted. + +// de_WebAuthnRelyingPartyMismatchException omitted. + const deserializeMetadata = (output: __HttpResponse): __ResponseMetadata => ({ httpStatusCode: output.statusCode, requestId: diff --git a/codegen/sdk-codegen/aws-models/cognito-identity-provider.json b/codegen/sdk-codegen/aws-models/cognito-identity-provider.json index a7802bf3f966..e753dd8ce89f 100644 --- a/codegen/sdk-codegen/aws-models/cognito-identity-provider.json +++ b/codegen/sdk-codegen/aws-models/cognito-identity-provider.json @@ -130,6 +130,9 @@ { "target": "com.amazonaws.cognitoidentityprovider#ChangePassword" }, + { + "target": "com.amazonaws.cognitoidentityprovider#CompleteWebAuthnRegistration" + }, { "target": "com.amazonaws.cognitoidentityprovider#ConfirmDevice" }, @@ -145,6 +148,9 @@ { "target": "com.amazonaws.cognitoidentityprovider#CreateIdentityProvider" }, + { + "target": "com.amazonaws.cognitoidentityprovider#CreateManagedLoginBranding" + }, { "target": "com.amazonaws.cognitoidentityprovider#CreateResourceServer" }, @@ -166,6 +172,9 @@ { "target": "com.amazonaws.cognitoidentityprovider#DeleteIdentityProvider" }, + { + "target": "com.amazonaws.cognitoidentityprovider#DeleteManagedLoginBranding" + }, { "target": "com.amazonaws.cognitoidentityprovider#DeleteResourceServer" }, @@ -184,9 +193,18 @@ { "target": "com.amazonaws.cognitoidentityprovider#DeleteUserPoolDomain" }, + { + "target": "com.amazonaws.cognitoidentityprovider#DeleteWebAuthnCredential" + }, { "target": "com.amazonaws.cognitoidentityprovider#DescribeIdentityProvider" }, + { + "target": "com.amazonaws.cognitoidentityprovider#DescribeManagedLoginBranding" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#DescribeManagedLoginBrandingByClient" + }, { "target": "com.amazonaws.cognitoidentityprovider#DescribeResourceServer" }, @@ -238,6 +256,9 @@ { "target": "com.amazonaws.cognitoidentityprovider#GetUserAttributeVerificationCode" }, + { + "target": "com.amazonaws.cognitoidentityprovider#GetUserAuthFactors" + }, { "target": "com.amazonaws.cognitoidentityprovider#GetUserPoolMfaConfig" }, @@ -277,6 +298,9 @@ { "target": "com.amazonaws.cognitoidentityprovider#ListUsersInGroup" }, + { + "target": "com.amazonaws.cognitoidentityprovider#ListWebAuthnCredentials" + }, { "target": "com.amazonaws.cognitoidentityprovider#ResendConfirmationCode" }, @@ -310,6 +334,9 @@ { "target": "com.amazonaws.cognitoidentityprovider#StartUserImportJob" }, + { + "target": "com.amazonaws.cognitoidentityprovider#StartWebAuthnRegistration" + }, { "target": "com.amazonaws.cognitoidentityprovider#StopUserImportJob" }, @@ -331,6 +358,9 @@ { "target": "com.amazonaws.cognitoidentityprovider#UpdateIdentityProvider" }, + { + "target": "com.amazonaws.cognitoidentityprovider#UpdateManagedLoginBranding" + }, { "target": "com.amazonaws.cognitoidentityprovider#UpdateResourceServer" }, @@ -1289,12 +1319,12 @@ "RecoveryMechanisms": { "target": "com.amazonaws.cognitoidentityprovider#RecoveryMechanismsType", "traits": { - "smithy.api#documentation": "

          The list of RecoveryOptionTypes.

          " + "smithy.api#documentation": "

          The list of options and priorities for user message delivery in forgot-password\n operations. Sets or displays user pool preferences for email or SMS message priority,\n whether users should fall back to a second delivery method, and whether passwords should\n only be reset by administrators.

          " } } }, "traits": { - "smithy.api#documentation": "

          The data type for AccountRecoverySetting.

          " + "smithy.api#documentation": "

          The settings for user message delivery in forgot-password operations. Contains\n preference for email or SMS message delivery of password reset codes, or for admin-only\n password reset.

          \n

          This data type is a request and response parameter of CreateUserPool and UpdateUserPool, and a response parameter of DescribeUserPool.

          " } }, "com.amazonaws.cognitoidentityprovider#AccountTakeoverActionNotifyType": { @@ -1310,20 +1340,20 @@ "target": "com.amazonaws.cognitoidentityprovider#AccountTakeoverActionNotifyType", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

          Flag specifying whether to send a notification.

          ", + "smithy.api#documentation": "

          Determines whether Amazon Cognito sends a user a notification message when your user pools\n assesses a user's session at the associated risk level.

          ", "smithy.api#required": {} } }, "EventAction": { "target": "com.amazonaws.cognitoidentityprovider#AccountTakeoverEventActionType", "traits": { - "smithy.api#documentation": "

          The action to take in response to the account takeover action. Valid values are as\n follows:

          \n
            \n
          • \n

            \n BLOCK Choosing this action will block the request.

            \n
          • \n
          • \n

            \n MFA_IF_CONFIGURED Present an MFA challenge if user has configured\n it, else allow the request.

            \n
          • \n
          • \n

            \n MFA_REQUIRED Present an MFA challenge if user has configured it,\n else block the request.

            \n
          • \n
          • \n

            \n NO_ACTION Allow the user to sign in.

            \n
          • \n
          ", + "smithy.api#documentation": "

          The action to take for the attempted account takeover action for the associated risk\n level. Valid values are as follows:

          \n
            \n
          • \n

            \n BLOCK: Block the request.

            \n
          • \n
          • \n

            \n MFA_IF_CONFIGURED: Present an MFA challenge if possible. MFA is\n possible if the user pool has active MFA methods that the user can set up. For\n example, if the user pool only supports SMS message MFA but the user\n doesn't have a phone number attribute, MFA setup isn't possible. If MFA\n setup isn't possible, allow the request.

            \n
          • \n
          • \n

            \n MFA_REQUIRED: Present an MFA challenge if possible. Block the\n request if a user hasn't set up MFA. To sign in with required MFA, users must\n have an email address or phone number attribute, or a registered TOTP\n factor.

            \n
          • \n
          • \n

            \n NO_ACTION: Take no action. Permit sign-in.

            \n
          • \n
          ", "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

          Account takeover action type.

          " + "smithy.api#documentation": "

          The automated response to a risk level for adaptive authentication in full-function,\n or ENFORCED, mode. You can assign an action to each risk level that\n advanced security features evaluates.

          \n

          This data type is a request parameter of SetRiskConfiguration and a response parameter of DescribeRiskConfiguration.

          " } }, "com.amazonaws.cognitoidentityprovider#AccountTakeoverActionsType": { @@ -1332,24 +1362,24 @@ "LowAction": { "target": "com.amazonaws.cognitoidentityprovider#AccountTakeoverActionType", "traits": { - "smithy.api#documentation": "

          Action to take for a low risk.

          " + "smithy.api#documentation": "

          The action that you assign to a low-risk assessment by advanced security\n features.

          " } }, "MediumAction": { "target": "com.amazonaws.cognitoidentityprovider#AccountTakeoverActionType", "traits": { - "smithy.api#documentation": "

          Action to take for a medium risk.

          " + "smithy.api#documentation": "

          The action that you assign to a medium-risk assessment by advanced security\n features.

          " } }, "HighAction": { "target": "com.amazonaws.cognitoidentityprovider#AccountTakeoverActionType", "traits": { - "smithy.api#documentation": "

          Action to take for a high risk.

          " + "smithy.api#documentation": "

          The action that you assign to a high-risk assessment by advanced security\n features.

          " } } }, "traits": { - "smithy.api#documentation": "

          Account takeover actions type.

          " + "smithy.api#documentation": "

          A list of account-takeover actions for each level of risk that Amazon Cognito might assess with\n advanced security features.

          \n

          This data type is a request parameter of SetRiskConfiguration and a response parameter of DescribeRiskConfiguration.

          " } }, "com.amazonaws.cognitoidentityprovider#AccountTakeoverEventActionType": { @@ -1387,19 +1417,19 @@ "NotifyConfiguration": { "target": "com.amazonaws.cognitoidentityprovider#NotifyConfigurationType", "traits": { - "smithy.api#documentation": "

          The notify configuration used to construct email notifications.

          " + "smithy.api#documentation": "

          The settings for composing and sending an email message when advanced security\n features assesses a risk level with adaptive authentication. When you choose to notify\n users in AccountTakeoverRiskConfiguration, Amazon Cognito sends an email message\n using the method and template that you set with this data type.

          " } }, "Actions": { "target": "com.amazonaws.cognitoidentityprovider#AccountTakeoverActionsType", "traits": { - "smithy.api#documentation": "

          Account takeover risk configuration actions.

          ", + "smithy.api#documentation": "

          A list of account-takeover actions for each level of risk that Amazon Cognito might assess with\n advanced security features.

          ", "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

          Configuration for mitigation actions and notification for different levels of risk\n detected for a potential account takeover.

          " + "smithy.api#documentation": "

          The settings for automated responses and notification templates for adaptive\n authentication with advanced security features.

          \n

          This data type is a request parameter of SetRiskConfiguration and a response parameter of DescribeRiskConfiguration.

          " } }, "com.amazonaws.cognitoidentityprovider#AddCustomAttributes": { @@ -1669,7 +1699,7 @@ } ], "traits": { - "smithy.api#documentation": "

          Creates a new user in the specified user pool.

          \n

          If MessageAction isn't set, the default is to send a welcome message via\n email or phone (SMS).

          \n \n

          This action might generate an SMS text message. Starting June 1, 2021, US telecom carriers\n require you to register an origination phone number before you can send SMS messages\n to US phone numbers. If you use SMS text messages in Amazon Cognito, you must register a\n phone number with Amazon Pinpoint.\n Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must\n receive SMS messages might not be able to sign up, activate their accounts, or sign\n in.

          \n

          If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Servicesservice,\n Amazon Simple Notification Service might place your account in the SMS sandbox. In \n sandbox\n mode\n , you can send messages only to verified phone\n numbers. After you test your app while in the sandbox environment, you can move out\n of the sandbox and into production. For more information, see SMS message settings for Amazon Cognito user pools in the Amazon Cognito\n Developer Guide.

          \n
          \n

          This message is based on a template that you configured in your call to create or\n update a user pool. This template includes your custom sign-up instructions and\n placeholders for user name and temporary password.

          \n

          Alternatively, you can call AdminCreateUser with SUPPRESS\n for the MessageAction parameter, and Amazon Cognito won't send any email.

          \n

          In either case, the user will be in the FORCE_CHANGE_PASSWORD state until\n they sign in and change their password.

          \n \n

          Amazon Cognito evaluates Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you must use IAM credentials to authorize requests, and you must\n grant yourself the corresponding IAM permission in a policy.

          \n

          \n Learn more\n

          \n \n
          ", + "smithy.api#documentation": "

          Creates a new user in the specified user pool.

          \n

          If MessageAction isn't set, the default is to send a welcome message via\n email or phone (SMS).

          \n \n

          This action might generate an SMS text message. Starting June 1, 2021, US telecom carriers\n require you to register an origination phone number before you can send SMS messages\n to US phone numbers. If you use SMS text messages in Amazon Cognito, you must register a\n phone number with Amazon Pinpoint.\n Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must\n receive SMS messages might not be able to sign up, activate their accounts, or sign\n in.

          \n

          If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Services service,\n Amazon Simple Notification Service might place your account in the SMS sandbox. In \n sandbox\n mode\n , you can send messages only to verified phone\n numbers. After you test your app while in the sandbox environment, you can move out\n of the sandbox and into production. For more information, see SMS message settings for Amazon Cognito user pools in the Amazon Cognito\n Developer Guide.

          \n
          \n

          This message is based on a template that you configured in your call to create or\n update a user pool. This template includes your custom sign-up instructions and\n placeholders for user name and temporary password.

          \n

          Alternatively, you can call AdminCreateUser with SUPPRESS\n for the MessageAction parameter, and Amazon Cognito won't send any email.

          \n

          In either case, if the user has a password, they will be in the\n FORCE_CHANGE_PASSWORD state until they sign in and set their password.\n Your invitation message template must have the {####} password placeholder\n if your users have passwords. If your template doesn't have this placeholder, Amazon Cognito\n doesn't deliver the invitation message. In this case, you must update your message\n template and resend the password with a new AdminCreateUser request with a\n MessageAction value of RESEND.

          \n \n

          Amazon Cognito evaluates Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you must use IAM credentials to authorize requests, and you must\n grant yourself the corresponding IAM permission in a policy.

          \n

          \n Learn more\n

          \n \n
          ", "smithy.api#examples": [ { "title": "An AdminCreateUser request for for a test user named John.", @@ -1733,25 +1763,25 @@ "target": "com.amazonaws.cognitoidentityprovider#BooleanType", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

          Set to True if only the administrator is allowed to create user profiles.\n Set to False if users can sign themselves up via an app.

          " + "smithy.api#documentation": "

          The setting for allowing self-service sign-up. When true, only\n administrators can create new user profiles. When false, users can register\n themselves and create a new user profile with the SignUp operation.

          " } }, "UnusedAccountValidityDays": { "target": "com.amazonaws.cognitoidentityprovider#AdminCreateUserUnusedAccountValidityDaysType", "traits": { "smithy.api#default": 0, - "smithy.api#documentation": "

          The user account expiration limit, in days, after which a new account that hasn't\n signed in is no longer usable. To reset the account after that time limit, you must call\n AdminCreateUser again, specifying \"RESEND\" for the\n MessageAction parameter. The default value for this parameter is\n 7.

          \n \n

          If you set a value for TemporaryPasswordValidityDays in\n PasswordPolicy, that value will be used, and\n UnusedAccountValidityDays will be no longer be an available\n parameter for that user pool.

          \n
          " + "smithy.api#documentation": "

          This parameter is no longer in use. Configure the duration of temporary passwords with\n the TemporaryPasswordValidityDays parameter of PasswordPolicyType. For older user pools that have a\n UnusedAccountValidityDays configuration, that value is effective until\n you set a value for TemporaryPasswordValidityDays.

          \n

          The password expiration limit in days for administrator-created users. When this time\n expires, the user can't sign in with their temporary password. To reset the account\n after that time limit, you must call AdminCreateUser again, specifying\n RESEND for the MessageAction parameter.

          \n

          The default value for this parameter is 7.

          " } }, "InviteMessageTemplate": { "target": "com.amazonaws.cognitoidentityprovider#MessageTemplateType", "traits": { - "smithy.api#documentation": "

          The message template to be used for the welcome message to new users.

          \n

          See also Customizing User Invitation Messages.

          " + "smithy.api#documentation": "

          The template for the welcome message to new users. This template must include the\n {####} temporary password placeholder if you are creating users with\n passwords. If your users don't have passwords, you can omit the placeholder.

          \n

          See also Customizing User Invitation Messages.

          " } } }, "traits": { - "smithy.api#documentation": "

          The configuration for creating a new user profile.

          " + "smithy.api#documentation": "

          The settings for administrator creation of users in a user pool. Contains settings for\n allowing user sign-up, customizing invitation messages to new users, and the amount of\n time before temporary passwords expire.

          \n

          This data type is a request and response parameter of CreateUserPool and UpdateUserPool, and a response parameter of DescribeUserPool.

          " } }, "com.amazonaws.cognitoidentityprovider#AdminCreateUserRequest": { @@ -1774,7 +1804,7 @@ "UserAttributes": { "target": "com.amazonaws.cognitoidentityprovider#AttributeListType", "traits": { - "smithy.api#documentation": "

          An array of name-value pairs that contain user attributes and attribute values to be\n set for the user to be created. You can create a user without specifying any attributes\n other than Username. However, any attributes that you specify as required\n (when creating a user pool or in the Attributes tab of\n the console) either you should supply (in your call to AdminCreateUser) or\n the user should supply (when they sign up in response to your welcome message).

          \n

          For custom attributes, you must prepend the custom: prefix to the\n attribute name.

          \n

          To send a message inviting the user to sign up, you must specify the user's email\n address or phone number. You can do this in your call to AdminCreateUser or in the\n Users tab of the Amazon Cognito console for managing your\n user pools.

          \n

          In your call to AdminCreateUser, you can set the\n email_verified attribute to True, and you can set the\n phone_number_verified attribute to True. You can also do\n this by calling AdminUpdateUserAttributes.

          \n
            \n
          • \n

            \n email: The email address of the user to whom\n the message that contains the code and username will be sent. Required if the\n email_verified attribute is set to True, or if\n \"EMAIL\" is specified in the DesiredDeliveryMediums\n parameter.

            \n
          • \n
          • \n

            \n phone_number: The phone number of the user to\n whom the message that contains the code and username will be sent. Required if\n the phone_number_verified attribute is set to True, or\n if \"SMS\" is specified in the DesiredDeliveryMediums\n parameter.

            \n
          • \n
          " + "smithy.api#documentation": "

          An array of name-value pairs that contain user attributes and attribute values to be\n set for the user to be created. You can create a user without specifying any attributes\n other than Username. However, any attributes that you specify as required\n (when creating a user pool or in the Attributes tab of\n the console) either you should supply (in your call to AdminCreateUser) or\n the user should supply (when they sign up in response to your welcome message).

          \n

          For custom attributes, you must prepend the custom: prefix to the\n attribute name.

          \n

          To send a message inviting the user to sign up, you must specify the user's email\n address or phone number. You can do this in your call to AdminCreateUser or in the\n Users tab of the Amazon Cognito console for managing your\n user pools.

          \n

          You must also provide an email address or phone number when you expect the user to do\n passwordless sign-in with an email or SMS OTP. These attributes must be provided when\n passwordless options are the only available, or when you don't submit a\n TemporaryPassword.

          \n

          In your call to AdminCreateUser, you can set the\n email_verified attribute to True, and you can set the\n phone_number_verified attribute to True. You can also do\n this by calling AdminUpdateUserAttributes.

          \n
            \n
          • \n

            \n email: The email address of the user to whom\n the message that contains the code and username will be sent. Required if the\n email_verified attribute is set to True, or if\n \"EMAIL\" is specified in the DesiredDeliveryMediums\n parameter.

            \n
          • \n
          • \n

            \n phone_number: The phone number of the user to\n whom the message that contains the code and username will be sent. Required if\n the phone_number_verified attribute is set to True, or\n if \"SMS\" is specified in the DesiredDeliveryMediums\n parameter.

            \n
          • \n
          " } }, "ValidationData": { @@ -1786,7 +1816,7 @@ "TemporaryPassword": { "target": "com.amazonaws.cognitoidentityprovider#PasswordType", "traits": { - "smithy.api#documentation": "

          The user's temporary password. This password must conform to the password policy that\n you specified when you created the user pool.

          \n

          The temporary password is valid only once. To complete the Admin Create User flow, the\n user must enter the temporary password in the sign-in page, along with a new password to\n be used in all future sign-ins.

          \n

          This parameter isn't required. If you don't specify a value, Amazon Cognito generates one for\n you.

          \n

          The temporary password can only be used until the user account expiration limit that\n you set for your user pool. To reset the account after that time limit, you must call\n AdminCreateUser again and specify RESEND for the\n MessageAction parameter.

          " + "smithy.api#documentation": "

          The user's temporary password. This password must conform to the password policy that\n you specified when you created the user pool.

          \n

          The exception to the requirement for a password is when your user pool supports\n passwordless sign-in with email or SMS OTPs. To create a user with no password, omit\n this parameter or submit a blank value. You can only create a passwordless user when\n passwordless sign-in is available. See the SignInPolicyType property of CreateUserPool and UpdateUserPool.

          \n

          The temporary password is valid only once. To complete the Admin Create User flow, the\n user must enter the temporary password in the sign-in page, along with a new password to\n be used in all future sign-ins.

          \n

          If you don't specify a value, Amazon Cognito generates one for you unless you have passwordless\n options active for your user pool.

          \n

          The temporary password can only be used until the user account expiration limit that\n you set for your user pool. To reset the account after that time limit, you must call\n AdminCreateUser again and specify RESEND for the\n MessageAction parameter.

          " } }, "ForceAliasCreation": { @@ -1816,7 +1846,7 @@ } }, "traits": { - "smithy.api#documentation": "

          Represents the request to create a user in the specified user pool.

          ", + "smithy.api#documentation": "

          Creates a new user in the specified user pool.

          ", "smithy.api#input": {} } }, @@ -2332,7 +2362,7 @@ } ], "traits": { - "smithy.api#documentation": "

          Gets the specified user by user name in a user pool as an administrator. Works on any\n user.

          \n \n

          Amazon Cognito evaluates Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you must use IAM credentials to authorize requests, and you must\n grant yourself the corresponding IAM permission in a policy.

          \n

          \n Learn more\n

          \n \n
          " + "smithy.api#documentation": "

          Gets the specified user by user name in a user pool as an administrator. Works on any\n user. This operation contributes to your monthly active user (MAU) count for the purpose\n of billing.

          \n \n

          Amazon Cognito evaluates Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you must use IAM credentials to authorize requests, and you must\n grant yourself the corresponding IAM permission in a policy.

          \n

          \n Learn more\n

          \n \n
          " } }, "com.amazonaws.cognitoidentityprovider#AdminGetUserRequest": { @@ -2414,7 +2444,7 @@ "UserMFASettingList": { "target": "com.amazonaws.cognitoidentityprovider#UserMFASettingListType", "traits": { - "smithy.api#documentation": "

          The MFA options that are activated for the user. The possible values in this list are\n SMS_MFA, EMAIL_OTP, and SOFTWARE_TOKEN_MFA.

          " + "smithy.api#documentation": "

          The MFA options that are activated for the user. The possible values in this list are\n SMS_MFA, EMAIL_OTP, and\n SOFTWARE_TOKEN_MFA.

          " } } }, @@ -2482,7 +2512,7 @@ } ], "traits": { - "smithy.api#documentation": "

          Initiates the authentication flow, as an administrator.

          \n \n

          This action might generate an SMS text message. Starting June 1, 2021, US telecom carriers\n require you to register an origination phone number before you can send SMS messages\n to US phone numbers. If you use SMS text messages in Amazon Cognito, you must register a\n phone number with Amazon Pinpoint.\n Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must\n receive SMS messages might not be able to sign up, activate their accounts, or sign\n in.

          \n

          If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Servicesservice,\n Amazon Simple Notification Service might place your account in the SMS sandbox. In \n sandbox\n mode\n , you can send messages only to verified phone\n numbers. After you test your app while in the sandbox environment, you can move out\n of the sandbox and into production. For more information, see SMS message settings for Amazon Cognito user pools in the Amazon Cognito\n Developer Guide.

          \n
          \n \n

          Amazon Cognito evaluates Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you must use IAM credentials to authorize requests, and you must\n grant yourself the corresponding IAM permission in a policy.

          \n

          \n Learn more\n

          \n \n
          " + "smithy.api#documentation": "

          Initiates the authentication flow, as an administrator.

          \n \n

          This action might generate an SMS text message. Starting June 1, 2021, US telecom carriers\n require you to register an origination phone number before you can send SMS messages\n to US phone numbers. If you use SMS text messages in Amazon Cognito, you must register a\n phone number with Amazon Pinpoint.\n Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must\n receive SMS messages might not be able to sign up, activate their accounts, or sign\n in.

          \n

          If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Services service,\n Amazon Simple Notification Service might place your account in the SMS sandbox. In \n sandbox\n mode\n , you can send messages only to verified phone\n numbers. After you test your app while in the sandbox environment, you can move out\n of the sandbox and into production. For more information, see SMS message settings for Amazon Cognito user pools in the Amazon Cognito\n Developer Guide.

          \n
          \n \n

          Amazon Cognito evaluates Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you must use IAM credentials to authorize requests, and you must\n grant yourself the corresponding IAM permission in a policy.

          \n

          \n Learn more\n

          \n \n
          " } }, "com.amazonaws.cognitoidentityprovider#AdminInitiateAuthRequest": { @@ -2505,20 +2535,20 @@ "AuthFlow": { "target": "com.amazonaws.cognitoidentityprovider#AuthFlowType", "traits": { - "smithy.api#documentation": "

          The authentication flow for this call to run. The API action will depend on this\n value. For example:

          \n
            \n
          • \n

            \n REFRESH_TOKEN_AUTH will take in a valid refresh token and return\n new tokens.

            \n
          • \n
          • \n

            \n USER_SRP_AUTH will take in USERNAME and\n SRP_A and return the Secure Remote Password (SRP) protocol\n variables to be used for next challenge execution.

            \n
          • \n
          • \n

            \n ADMIN_USER_PASSWORD_AUTH will take in USERNAME and\n PASSWORD and return the next challenge or tokens.

            \n
          • \n
          \n

          Valid values include:

          \n
            \n
          • \n

            \n USER_SRP_AUTH: Authentication flow for the Secure Remote Password\n (SRP) protocol.

            \n
          • \n
          • \n

            \n REFRESH_TOKEN_AUTH/REFRESH_TOKEN: Authentication\n flow for refreshing the access token and ID token by supplying a valid refresh\n token.

            \n
          • \n
          • \n

            \n CUSTOM_AUTH: Custom authentication flow.

            \n
          • \n
          • \n

            \n ADMIN_NO_SRP_AUTH: Non-SRP authentication flow; you can pass in\n the USERNAME and PASSWORD directly if the flow is enabled for calling the app\n client.

            \n
          • \n
          • \n

            \n ADMIN_USER_PASSWORD_AUTH: Admin-based user password\n authentication. This replaces the ADMIN_NO_SRP_AUTH authentication\n flow. In this flow, Amazon Cognito receives the password in the request instead of using\n the SRP process to verify passwords.

            \n
          • \n
          ", + "smithy.api#documentation": "

          The authentication flow that you want to initiate. The AuthParameters\n that you must submit are linked to the flow that you submit. For example:

          \n
            \n
          • \n

            \n USER_AUTH: Request a preferred authentication type or review\n available authentication types. From the offered authentication types, select\n one in a challenge response and then authenticate with that method in an\n additional challenge response.

            \n
          • \n
          • \n

            \n REFRESH_TOKEN_AUTH: Receive new ID and access tokens when you\n pass a REFRESH_TOKEN parameter with a valid refresh token as the\n value.

            \n
          • \n
          • \n

            \n USER_SRP_AUTH: Receive secure remote password (SRP) variables for\n the next challenge, PASSWORD_VERIFIER, when you pass\n USERNAME and SRP_A parameters..

            \n
          • \n
          • \n

            \n ADMIN_USER_PASSWORD_AUTH: Receive new tokens or the next\n challenge, for example SOFTWARE_TOKEN_MFA, when you pass\n USERNAME and PASSWORD parameters.

            \n
          • \n
          \n

          Valid values include the following:

          \n
          \n
          USER_AUTH
          \n
          \n

          The entry point for sign-in with passwords, one-time passwords, biometric\n devices, and security keys.

          \n
          \n
          USER_SRP_AUTH
          \n
          \n

          Username-password authentication with the Secure Remote Password (SRP)\n protocol. For more information, see Use SRP password verification in custom\n authentication flow.

          \n
          \n
          REFRESH_TOKEN_AUTH and REFRESH_TOKEN
          \n
          \n

          Provide a valid refresh token and receive new ID and access tokens. For\n more information, see Using the refresh token.

          \n
          \n
          CUSTOM_AUTH
          \n
          \n

          Custom authentication with Lambda triggers. For more information, see\n Custom authentication challenge Lambda\n triggers.

          \n
          \n
          ADMIN_USER_PASSWORD_AUTH
          \n
          \n

          Username-password authentication with the password sent directly in the\n request. For more information, see Admin authentication flow.

          \n
          \n
          \n

          \n USER_PASSWORD_AUTH is a flow type of InitiateAuth and isn't valid for\n AdminInitiateAuth.

          ", "smithy.api#required": {} } }, "AuthParameters": { "target": "com.amazonaws.cognitoidentityprovider#AuthParametersType", "traits": { - "smithy.api#documentation": "

          The authentication parameters. These are inputs corresponding to the\n AuthFlow that you're invoking. The required values depend on the value\n of AuthFlow:

          \n
            \n
          • \n

            For USER_SRP_AUTH: USERNAME (required),\n SRP_A (required), SECRET_HASH (required if the app\n client is configured with a client secret), DEVICE_KEY.

            \n
          • \n
          • \n

            For ADMIN_USER_PASSWORD_AUTH: USERNAME (required),\n PASSWORD (required), SECRET_HASH (required if the\n app client is configured with a client secret), DEVICE_KEY.

            \n
          • \n
          • \n

            For REFRESH_TOKEN_AUTH/REFRESH_TOKEN: REFRESH_TOKEN\n (required), SECRET_HASH (required if the app client is configured\n with a client secret), DEVICE_KEY.

            \n
          • \n
          • \n

            For CUSTOM_AUTH: USERNAME (required),\n SECRET_HASH (if app client is configured with client secret),\n DEVICE_KEY. To start the authentication flow with password\n verification, include ChallengeName: SRP_A and SRP_A: (The\n SRP_A Value).

            \n
          • \n
          \n

          For more information about SECRET_HASH, see Computing secret hash values. For information about\n DEVICE_KEY, see Working with user devices in your user pool.

          " + "smithy.api#documentation": "

          The authentication parameters. These are inputs corresponding to the\n AuthFlow that you're invoking. The required values depend on the value\n of AuthFlow:

          \n
            \n
          • \n

            For USER_AUTH: USERNAME (required),\n PREFERRED_CHALLENGE. If you don't provide a value for\n PREFERRED_CHALLENGE, Amazon Cognito responds with the\n AvailableChallenges parameter that specifies the available\n sign-in methods.

            \n
          • \n
          • \n

            For USER_SRP_AUTH: USERNAME (required),\n SRP_A (required), SECRET_HASH (required if the app\n client is configured with a client secret), DEVICE_KEY.

            \n
          • \n
          • \n

            For ADMIN_USER_PASSWORD_AUTH: USERNAME (required),\n PASSWORD (required), SECRET_HASH (required if the\n app client is configured with a client secret), DEVICE_KEY.

            \n
          • \n
          • \n

            For REFRESH_TOKEN_AUTH/REFRESH_TOKEN: REFRESH_TOKEN\n (required), SECRET_HASH (required if the app client is configured\n with a client secret), DEVICE_KEY.

            \n
          • \n
          • \n

            For CUSTOM_AUTH: USERNAME (required),\n SECRET_HASH (if app client is configured with client secret),\n DEVICE_KEY. To start the authentication flow with password\n verification, include ChallengeName: SRP_A and SRP_A: (The\n SRP_A Value).

            \n
          • \n
          \n

          For more information about SECRET_HASH, see Computing secret hash values. For information about\n DEVICE_KEY, see Working with user devices in your user pool.

          " } }, "ClientMetadata": { "target": "com.amazonaws.cognitoidentityprovider#ClientMetadataType", "traits": { - "smithy.api#documentation": "

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

          \n

          You create custom workflows by assigning Lambda functions to user pool triggers.\n When you use the AdminInitiateAuth API action, Amazon Cognito invokes the Lambda functions that\n are specified for various triggers. The ClientMetadata value is passed as input to the\n functions for only the following triggers:

          \n
            \n
          • \n

            Pre signup

            \n
          • \n
          • \n

            Pre authentication

            \n
          • \n
          • \n

            User migration

            \n
          • \n
          \n

          When Amazon Cognito invokes the functions for these triggers, it passes a JSON payload, which\n the function receives as input. This payload contains a validationData\n attribute, which provides the data that you assigned to the ClientMetadata parameter in\n your AdminInitiateAuth request. In your function code in Lambda, you can process the\n validationData value to enhance your workflow for your specific\n needs.

          \n

          When you use the AdminInitiateAuth API action, Amazon Cognito also invokes the functions for\n the following triggers, but it doesn't provide the ClientMetadata value as input:

          \n
            \n
          • \n

            Post authentication

            \n
          • \n
          • \n

            Custom message

            \n
          • \n
          • \n

            Pre token generation

            \n
          • \n
          • \n

            Create auth challenge

            \n
          • \n
          • \n

            Define auth challenge

            \n
          • \n
          \n

          For more information, see \nCustomizing user pool Workflows with Lambda Triggers in the Amazon Cognito Developer Guide.

          \n \n

          When you use the ClientMetadata parameter, remember that Amazon Cognito won't do the\n following:

          \n
            \n
          • \n

            Store the ClientMetadata value. This data is available only to Lambda\n triggers that are assigned to a user pool to support custom workflows. If\n your user pool configuration doesn't include triggers, the ClientMetadata\n parameter serves no purpose.

            \n
          • \n
          • \n

            Validate the ClientMetadata value.

            \n
          • \n
          • \n

            Encrypt the ClientMetadata value. Don't use Amazon Cognito to provide sensitive\n information.

            \n
          • \n
          \n
          " + "smithy.api#documentation": "

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

          \n

          You create custom workflows by assigning Lambda functions to user pool triggers.\n When you use the AdminInitiateAuth API action, Amazon Cognito invokes the Lambda functions that\n are specified for various triggers. The ClientMetadata value is passed as input to the\n functions for only the following triggers:

          \n
            \n
          • \n

            Pre signup

            \n
          • \n
          • \n

            Pre authentication

            \n
          • \n
          • \n

            User migration

            \n
          • \n
          \n

          When Amazon Cognito invokes the functions for these triggers, it passes a JSON payload, which\n the function receives as input. This payload contains a validationData\n attribute, which provides the data that you assigned to the ClientMetadata parameter in\n your AdminInitiateAuth request. In your function code in Lambda, you can process the\n validationData value to enhance your workflow for your specific\n needs.

          \n

          When you use the AdminInitiateAuth API action, Amazon Cognito also invokes the functions for\n the following triggers, but it doesn't provide the ClientMetadata value as input:

          \n
            \n
          • \n

            Post authentication

            \n
          • \n
          • \n

            Custom message

            \n
          • \n
          • \n

            Pre token generation

            \n
          • \n
          • \n

            Create auth challenge

            \n
          • \n
          • \n

            Define auth challenge

            \n
          • \n
          • \n

            Custom email sender

            \n
          • \n
          • \n

            Custom SMS sender

            \n
          • \n
          \n

          For more information, see \nCustomizing user pool Workflows with Lambda Triggers in the Amazon Cognito Developer Guide.

          \n \n

          When you use the ClientMetadata parameter, remember that Amazon Cognito won't do the\n following:

          \n
            \n
          • \n

            Store the ClientMetadata value. This data is available only to Lambda\n triggers that are assigned to a user pool to support custom workflows. If\n your user pool configuration doesn't include triggers, the ClientMetadata\n parameter serves no purpose.

            \n
          • \n
          • \n

            Validate the ClientMetadata value.

            \n
          • \n
          • \n

            Encrypt the ClientMetadata value. Don't use Amazon Cognito to provide sensitive\n information.

            \n
          • \n
          \n
          " } }, "AnalyticsMetadata": { @@ -2532,6 +2562,12 @@ "traits": { "smithy.api#documentation": "

          Contextual data about your user session, such as the device fingerprint, IP address, or location. Amazon Cognito advanced \nsecurity evaluates the risk of an authentication event based on the context that your app generates and passes to Amazon Cognito\nwhen it makes API requests.

          " } + }, + "Session": { + "target": "com.amazonaws.cognitoidentityprovider#SessionType", + "traits": { + "smithy.api#documentation": "

          The optional session ID from a ConfirmSignUp API request. You can sign in\n a user directly from the sign-up process with the USER_AUTH authentication\n flow.

          " + } } }, "traits": { @@ -2545,7 +2581,7 @@ "ChallengeName": { "target": "com.amazonaws.cognitoidentityprovider#ChallengeNameType", "traits": { - "smithy.api#documentation": "

          The name of the challenge that you're responding to with this call. This is returned\n in the AdminInitiateAuth response if you must pass another\n challenge.

          \n
            \n
          • \n

            \n MFA_SETUP: If MFA is required, users who don't have at least one\n of the MFA methods set up are presented with an MFA_SETUP\n challenge. The user must set up at least one MFA type to continue to\n authenticate.

            \n
          • \n
          • \n

            \n SELECT_MFA_TYPE: Selects the MFA type. Valid MFA options are\n SMS_MFA for SMS message MFA, EMAIL_OTP for email \n message MFA, and SOFTWARE_TOKEN_MFA for time-based one-time \n password (TOTP) software token MFA.

            \n
          • \n
          • \n

            \n SMS_MFA: Next challenge is to supply an\n SMS_MFA_CODEthat your user pool delivered\n in an SMS message.

            \n
          • \n
          • \n

            \n EMAIL_OTP: Next challenge is to supply an\n EMAIL_OTP_CODE that your user pool delivered \n in an email message.

            \n
          • \n
          • \n

            \n PASSWORD_VERIFIER: Next challenge is to supply\n PASSWORD_CLAIM_SIGNATURE,\n PASSWORD_CLAIM_SECRET_BLOCK, and TIMESTAMP after\n the client-side SRP calculations.

            \n
          • \n
          • \n

            \n CUSTOM_CHALLENGE: This is returned if your custom authentication\n flow determines that the user should pass another challenge before tokens are\n issued.

            \n
          • \n
          • \n

            \n DEVICE_SRP_AUTH: If device tracking was activated in your user\n pool and the previous challenges were passed, this challenge is returned so that\n Amazon Cognito can start tracking this device.

            \n
          • \n
          • \n

            \n DEVICE_PASSWORD_VERIFIER: Similar to\n PASSWORD_VERIFIER, but for devices only.

            \n
          • \n
          • \n

            \n ADMIN_NO_SRP_AUTH: This is returned if you must authenticate with\n USERNAME and PASSWORD directly. An app client must\n be enabled to use this flow.

            \n
          • \n
          • \n

            \n NEW_PASSWORD_REQUIRED: For users who are required to change their\n passwords after successful first login. Respond to this challenge with\n NEW_PASSWORD and any required attributes that Amazon Cognito returned in\n the requiredAttributes parameter. You can also set values for\n attributes that aren't required by your user pool and that your app client can\n write. For more information, see AdminRespondToAuthChallenge.

            \n \n

            In a NEW_PASSWORD_REQUIRED challenge response, you can't modify a required attribute that already has a value. \nIn AdminRespondToAuthChallenge, set a value for any keys that Amazon Cognito returned in the requiredAttributes parameter, \nthen use the AdminUpdateUserAttributes API operation to modify the value of any additional attributes.

            \n
            \n
          • \n
          • \n

            \n MFA_SETUP: For users who are required to set up an MFA factor\n before they can sign in. The MFA types activated for the user pool will be\n listed in the challenge parameters MFAS_CAN_SETUP value.

            \n

            To set up software token MFA, use the session returned here from\n InitiateAuth as an input to\n AssociateSoftwareToken, and use the session returned by\n VerifySoftwareToken as an input to\n RespondToAuthChallenge with challenge name\n MFA_SETUP to complete sign-in. To set up SMS MFA, users will\n need help from an administrator to add a phone number to their account and then\n call InitiateAuth again to restart sign-in.

            \n
          • \n
          " + "smithy.api#documentation": "

          The name of the challenge that you're responding to with this call. This is returned\n in the AdminInitiateAuth response if you must pass another\n challenge.

          \n
            \n
          • \n

            \n WEB_AUTHN: Respond to the challenge with the results of a\n successful authentication with a passkey, or webauthN, factor. These are\n typically biometric devices or security keys.

            \n
          • \n
          • \n

            \n PASSWORD: Respond with USER_PASSWORD_AUTH\n parameters: USERNAME (required), PASSWORD (required),\n SECRET_HASH (required if the app client is configured with a\n client secret), DEVICE_KEY.

            \n
          • \n
          • \n

            \n PASSWORD_SRP: Respond with USER_SRP_AUTH parameters:\n USERNAME (required), SRP_A (required),\n SECRET_HASH (required if the app client is configured with a\n client secret), DEVICE_KEY.

            \n
          • \n
          • \n

            \n SELECT_CHALLENGE: Respond to the challenge with\n USERNAME and an ANSWER that matches one of the\n challenge types in the AvailableChallenges response\n parameter.

            \n
          • \n
          • \n

            \n MFA_SETUP: If MFA is required, users who don't have at least one\n of the MFA methods set up are presented with an MFA_SETUP\n challenge. The user must set up at least one MFA type to continue to\n authenticate.

            \n
          • \n
          • \n

            \n SELECT_MFA_TYPE: Selects the MFA type. Valid MFA options are\n SMS_MFA for SMS message MFA, EMAIL_OTP for email\n message MFA, and SOFTWARE_TOKEN_MFA for time-based one-time\n password (TOTP) software token MFA.

            \n
          • \n
          • \n

            \n SMS_MFA: Next challenge is to supply an\n SMS_MFA_CODEthat your user pool delivered in an SMS message.

            \n
          • \n
          • \n

            \n EMAIL_OTP: Next challenge is to supply an\n EMAIL_OTP_CODE that your user pool delivered in an email\n message.

            \n
          • \n
          • \n

            \n PASSWORD_VERIFIER: Next challenge is to supply\n PASSWORD_CLAIM_SIGNATURE,\n PASSWORD_CLAIM_SECRET_BLOCK, and TIMESTAMP after\n the client-side SRP calculations.

            \n
          • \n
          • \n

            \n CUSTOM_CHALLENGE: This is returned if your custom authentication\n flow determines that the user should pass another challenge before tokens are\n issued.

            \n
          • \n
          • \n

            \n DEVICE_SRP_AUTH: If device tracking was activated in your user\n pool and the previous challenges were passed, this challenge is returned so that\n Amazon Cognito can start tracking this device.

            \n
          • \n
          • \n

            \n DEVICE_PASSWORD_VERIFIER: Similar to\n PASSWORD_VERIFIER, but for devices only.

            \n
          • \n
          • \n

            \n ADMIN_NO_SRP_AUTH: This is returned if you must authenticate with\n USERNAME and PASSWORD directly. An app client must\n be enabled to use this flow.

            \n
          • \n
          • \n

            \n NEW_PASSWORD_REQUIRED: For users who are required to change their\n passwords after successful first login. Respond to this challenge with\n NEW_PASSWORD and any required attributes that Amazon Cognito returned in\n the requiredAttributes parameter. You can also set values for\n attributes that aren't required by your user pool and that your app client can\n write. For more information, see AdminRespondToAuthChallenge.

            \n

            Amazon Cognito only returns this challenge for users who have temporary passwords.\n Because of this, and because in some cases you can create users who don't have\n values for required attributes, take care to collect and submit\n required-attribute values for all users who don't have passwords. You can create\n a user in the Amazon Cognito console without, for example, a required\n birthdate attribute. The API response from Amazon Cognito won't prompt\n you to submit a birthdate for the user if they don't have a password.

            \n \n

            In a NEW_PASSWORD_REQUIRED challenge response, you can't modify a required attribute that already has a value. \nIn AdminRespondToAuthChallenge, set a value for any keys that Amazon Cognito returned in the requiredAttributes parameter, \nthen use the AdminUpdateUserAttributes API operation to modify the value of any additional attributes.

            \n
            \n
          • \n
          • \n

            \n MFA_SETUP: For users who are required to set up an MFA factor\n before they can sign in. The MFA types activated for the user pool will be\n listed in the challenge parameters MFAS_CAN_SETUP value.

            \n

            To set up software token MFA, use the session returned here from\n InitiateAuth as an input to\n AssociateSoftwareToken, and use the session returned by\n VerifySoftwareToken as an input to\n RespondToAuthChallenge with challenge name\n MFA_SETUP to complete sign-in. To set up SMS MFA, users will\n need help from an administrator to add a phone number to their account and then\n call InitiateAuth again to restart sign-in.

            \n
          • \n
          " } }, "Session": { @@ -2630,7 +2666,7 @@ "SourceUser": { "target": "com.amazonaws.cognitoidentityprovider#ProviderUserIdentifierType", "traits": { - "smithy.api#documentation": "

          An external IdP account for a user who doesn't exist yet in the user pool. This user\n must be a federated user (for example, a SAML or Facebook user), not another native\n user.

          \n

          If the SourceUser is using a federated social IdP, such as Facebook,\n Google, or Login with Amazon, you must set the ProviderAttributeName to\n Cognito_Subject. For social IdPs, the ProviderName will be\n Facebook, Google, or LoginWithAmazon, and\n Amazon Cognito will automatically parse the Facebook, Google, and Login with Amazon tokens for\n id, sub, and user_id, respectively. The\n ProviderAttributeValue for the user must be the same value as the\n id, sub, or user_id value found in the social\n IdP token.

          \n

          \n

          For OIDC, the ProviderAttributeName can be any value that matches a claim\n in the ID token, or that your app retrieves from the userInfo endpoint. You\n must map the claim to a user pool attribute in your IdP configuration, and set the user\n pool attribute name as the value of ProviderAttributeName in your\n AdminLinkProviderForUser request.

          \n

          For SAML, the ProviderAttributeName can be any value that matches a claim\n in the SAML assertion. To link SAML users based on the subject of the SAML assertion,\n map the subject to a claim through the SAML IdP and set that claim name as the value of\n ProviderAttributeName in your AdminLinkProviderForUser\n request.

          \n

          For both OIDC and SAML users, when you set ProviderAttributeName to\n Cognito_Subject, Amazon Cognito will automatically parse the default unique\n identifier found in the subject from the IdP token.

          ", + "smithy.api#documentation": "

          An external IdP account for a user who doesn't exist yet in the user pool. This user\n must be a federated user (for example, a SAML or Facebook user), not another native\n user.

          \n

          If the SourceUser is using a federated social IdP, such as Facebook,\n Google, or Login with Amazon, you must set the ProviderAttributeName to\n Cognito_Subject. For social IdPs, the ProviderName will be\n Facebook, Google, or LoginWithAmazon, and\n Amazon Cognito will automatically parse the Facebook, Google, and Login with Amazon tokens for\n id, sub, and user_id, respectively. The\n ProviderAttributeValue for the user must be the same value as the\n id, sub, or user_id value found in the social\n IdP token.

          \n

          For OIDC, the ProviderAttributeName can be any mapped value from a claim\n in the ID token, or that your app retrieves from the userInfo endpoint. For\n SAML, the ProviderAttributeName can be any mapped value from a claim in the\n SAML assertion.

          \n

          The following additional considerations apply to SourceUser for OIDC and\n SAML providers.

          \n
            \n
          • \n

            You must map the claim to a user pool attribute in your IdP configuration, and\n set the user pool attribute name as the value of\n ProviderAttributeName in your\n AdminLinkProviderForUser request. For example,\n email.

            \n
          • \n
          • \n

            When you set ProviderAttributeName to\n Cognito_Subject, Amazon Cognito will automatically parse the default\n unique identifier found in the subject from the IdP token.

            \n
          • \n
          ", "smithy.api#required": {} } } @@ -2675,7 +2711,7 @@ } ], "traits": { - "smithy.api#documentation": "

          Lists devices, as an administrator.

          \n \n

          Amazon Cognito evaluates Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you must use IAM credentials to authorize requests, and you must\n grant yourself the corresponding IAM permission in a policy.

          \n

          \n Learn more\n

          \n \n
          " + "smithy.api#documentation": "

          Lists a user's registered devices.

          \n \n

          Amazon Cognito evaluates Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you must use IAM credentials to authorize requests, and you must\n grant yourself the corresponding IAM permission in a policy.

          \n

          \n Learn more\n

          \n \n
          " } }, "com.amazonaws.cognitoidentityprovider#AdminListDevicesRequest": { @@ -3032,7 +3068,7 @@ } ], "traits": { - "smithy.api#documentation": "

          Resets the specified user's password in a user pool as an administrator. Works on any\n user.

          \n

          To use this API operation, your user pool must have self-service account recovery\n configured. Use AdminSetUserPassword if you manage passwords as an administrator.

          \n \n

          This action might generate an SMS text message. Starting June 1, 2021, US telecom carriers\n require you to register an origination phone number before you can send SMS messages\n to US phone numbers. If you use SMS text messages in Amazon Cognito, you must register a\n phone number with Amazon Pinpoint.\n Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must\n receive SMS messages might not be able to sign up, activate their accounts, or sign\n in.

          \n

          If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Servicesservice,\n Amazon Simple Notification Service might place your account in the SMS sandbox. In \n sandbox\n mode\n , you can send messages only to verified phone\n numbers. After you test your app while in the sandbox environment, you can move out\n of the sandbox and into production. For more information, see SMS message settings for Amazon Cognito user pools in the Amazon Cognito\n Developer Guide.

          \n
          \n

          Deactivates a user's password, requiring them to change it. If a user tries to sign in\n after the API is called, Amazon Cognito responds with a\n PasswordResetRequiredException error. Your app must then perform the\n actions that reset your user's password: the forgot-password flow. In addition, if the\n user pool has phone verification selected and a verified phone number exists for the\n user, or if email verification is selected and a verified email exists for the user,\n calling this API will also result in sending a message to the end user with the code to\n change their password.

          \n \n

          Amazon Cognito evaluates Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you must use IAM credentials to authorize requests, and you must\n grant yourself the corresponding IAM permission in a policy.

          \n

          \n Learn more\n

          \n \n
          " + "smithy.api#documentation": "

          Resets the specified user's password in a user pool as an administrator. Works on any\n user.

          \n

          To use this API operation, your user pool must have self-service account recovery\n configured. Use AdminSetUserPassword if you manage passwords as an administrator.

          \n \n

          This action might generate an SMS text message. Starting June 1, 2021, US telecom carriers\n require you to register an origination phone number before you can send SMS messages\n to US phone numbers. If you use SMS text messages in Amazon Cognito, you must register a\n phone number with Amazon Pinpoint.\n Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must\n receive SMS messages might not be able to sign up, activate their accounts, or sign\n in.

          \n

          If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Services service,\n Amazon Simple Notification Service might place your account in the SMS sandbox. In \n sandbox\n mode\n , you can send messages only to verified phone\n numbers. After you test your app while in the sandbox environment, you can move out\n of the sandbox and into production. For more information, see SMS message settings for Amazon Cognito user pools in the Amazon Cognito\n Developer Guide.

          \n
          \n

          Deactivates a user's password, requiring them to change it. If a user tries to sign in\n after the API is called, Amazon Cognito responds with a\n PasswordResetRequiredException error. Your app must then perform the\n actions that reset your user's password: the forgot-password flow. In addition, if the\n user pool has phone verification selected and a verified phone number exists for the\n user, or if email verification is selected and a verified email exists for the user,\n calling this API will also result in sending a message to the end user with the code to\n change their password.

          \n \n

          Amazon Cognito evaluates Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you must use IAM credentials to authorize requests, and you must\n grant yourself the corresponding IAM permission in a policy.

          \n

          \n Learn more\n

          \n \n
          " } }, "com.amazonaws.cognitoidentityprovider#AdminResetUserPasswordRequest": { @@ -3149,7 +3185,7 @@ } ], "traits": { - "smithy.api#documentation": "

          Some API operations in a user pool generate a challenge, like a prompt for an MFA\n code, for device authentication that bypasses MFA, or for a custom authentication\n challenge. An AdminRespondToAuthChallenge API request provides the answer\n to that challenge, like a code or a secure remote password (SRP). The parameters of a\n response to an authentication challenge vary with the type of challenge.

          \n

          For more information about custom authentication challenges, see Custom\n authentication challenge Lambda triggers.

          \n \n

          This action might generate an SMS text message. Starting June 1, 2021, US telecom carriers\n require you to register an origination phone number before you can send SMS messages\n to US phone numbers. If you use SMS text messages in Amazon Cognito, you must register a\n phone number with Amazon Pinpoint.\n Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must\n receive SMS messages might not be able to sign up, activate their accounts, or sign\n in.

          \n

          If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Servicesservice,\n Amazon Simple Notification Service might place your account in the SMS sandbox. In \n sandbox\n mode\n , you can send messages only to verified phone\n numbers. After you test your app while in the sandbox environment, you can move out\n of the sandbox and into production. For more information, see SMS message settings for Amazon Cognito user pools in the Amazon Cognito\n Developer Guide.

          \n
          \n \n

          Amazon Cognito evaluates Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you must use IAM credentials to authorize requests, and you must\n grant yourself the corresponding IAM permission in a policy.

          \n

          \n Learn more\n

          \n \n
          " + "smithy.api#documentation": "

          Some API operations in a user pool generate a challenge, like a prompt for an MFA\n code, for device authentication that bypasses MFA, or for a custom authentication\n challenge. An AdminRespondToAuthChallenge API request provides the answer\n to that challenge, like a code or a secure remote password (SRP). The parameters of a\n response to an authentication challenge vary with the type of challenge.

          \n

          For more information about custom authentication challenges, see Custom\n authentication challenge Lambda triggers.

          \n \n

          This action might generate an SMS text message. Starting June 1, 2021, US telecom carriers\n require you to register an origination phone number before you can send SMS messages\n to US phone numbers. If you use SMS text messages in Amazon Cognito, you must register a\n phone number with Amazon Pinpoint.\n Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must\n receive SMS messages might not be able to sign up, activate their accounts, or sign\n in.

          \n

          If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Services service,\n Amazon Simple Notification Service might place your account in the SMS sandbox. In \n sandbox\n mode\n , you can send messages only to verified phone\n numbers. After you test your app while in the sandbox environment, you can move out\n of the sandbox and into production. For more information, see SMS message settings for Amazon Cognito user pools in the Amazon Cognito\n Developer Guide.

          \n
          \n \n

          Amazon Cognito evaluates Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you must use IAM credentials to authorize requests, and you must\n grant yourself the corresponding IAM permission in a policy.

          \n

          \n Learn more\n

          \n \n
          " } }, "com.amazonaws.cognitoidentityprovider#AdminRespondToAuthChallengeRequest": { @@ -3179,7 +3215,7 @@ "ChallengeResponses": { "target": "com.amazonaws.cognitoidentityprovider#ChallengeResponsesType", "traits": { - "smithy.api#documentation": "

          The responses to the challenge that you received in the previous request. Each\n challenge has its own required response parameters. The following examples are partial\n JSON request bodies that highlight challenge-response parameters.

          \n \n

          You must provide a SECRET_HASH parameter in all challenge responses to an app\n client that has a client secret.

          \n
          \n
          \n
          SMS_MFA
          \n
          \n

          \n \"ChallengeName\": \"SMS_MFA\", \"ChallengeResponses\": {\"SMS_MFA_CODE\":\n \"[code]\", \"USERNAME\": \"[username]\"}\n

          \n
          \n
          EMAIL_OTP
          \n
          \n

          \n \"ChallengeName\": \"EMAIL_OTP\", \"ChallengeResponses\": {\"EMAIL_OTP_CODE\":\n \"[code]\", \"USERNAME\": \"[username]\"}\n

          \n
          \n
          PASSWORD_VERIFIER
          \n
          \n

          This challenge response is part of the SRP flow. Amazon Cognito requires \n that your application respond to this challenge within a few seconds. When\n the response time exceeds this period, your user pool returns a\n NotAuthorizedException error.

          \n

          \n \"ChallengeName\": \"PASSWORD_VERIFIER\", \"ChallengeResponses\":\n {\"PASSWORD_CLAIM_SIGNATURE\": \"[claim_signature]\",\n \"PASSWORD_CLAIM_SECRET_BLOCK\": \"[secret_block]\", \"TIMESTAMP\":\n [timestamp], \"USERNAME\": \"[username]\"}\n

          \n

          Add \"DEVICE_KEY\" when you sign in with a remembered\n device.

          \n
          \n
          CUSTOM_CHALLENGE
          \n
          \n

          \n \"ChallengeName\": \"CUSTOM_CHALLENGE\", \"ChallengeResponses\":\n {\"USERNAME\": \"[username]\", \"ANSWER\": \"[challenge_answer]\"}\n

          \n

          Add \"DEVICE_KEY\" when you sign in with a remembered\n device.

          \n
          \n
          NEW_PASSWORD_REQUIRED
          \n
          \n

          \n \"ChallengeName\": \"NEW_PASSWORD_REQUIRED\", \"ChallengeResponses\":\n {\"NEW_PASSWORD\": \"[new_password]\", \"USERNAME\":\n \"[username]\"}\n

          \n

          To set any required attributes that InitiateAuth returned in\n an requiredAttributes parameter, add\n \"userAttributes.[attribute_name]\": \"[attribute_value]\".\n This parameter can also set values for writable attributes that aren't\n required by your user pool.

          \n \n

          In a NEW_PASSWORD_REQUIRED challenge response, you can't modify a required attribute that already has a value. \nIn RespondToAuthChallenge, set a value for any keys that Amazon Cognito returned in the requiredAttributes parameter, \nthen use the UpdateUserAttributes API operation to modify the value of any additional attributes.

          \n
          \n
          \n
          SOFTWARE_TOKEN_MFA
          \n
          \n

          \n \"ChallengeName\": \"SOFTWARE_TOKEN_MFA\", \"ChallengeResponses\":\n {\"USERNAME\": \"[username]\", \"SOFTWARE_TOKEN_MFA_CODE\":\n [authenticator_code]}\n

          \n
          \n
          DEVICE_SRP_AUTH
          \n
          \n

          \n \"ChallengeName\": \"DEVICE_SRP_AUTH\", \"ChallengeResponses\": {\"USERNAME\":\n \"[username]\", \"DEVICE_KEY\": \"[device_key]\", \"SRP_A\":\n \"[srp_a]\"}\n

          \n
          \n
          DEVICE_PASSWORD_VERIFIER
          \n
          \n

          \n \"ChallengeName\": \"DEVICE_PASSWORD_VERIFIER\", \"ChallengeResponses\":\n {\"DEVICE_KEY\": \"[device_key]\", \"PASSWORD_CLAIM_SIGNATURE\":\n \"[claim_signature]\", \"PASSWORD_CLAIM_SECRET_BLOCK\": \"[secret_block]\",\n \"TIMESTAMP\": [timestamp], \"USERNAME\": \"[username]\"}\n

          \n
          \n
          MFA_SETUP
          \n
          \n

          \n \"ChallengeName\": \"MFA_SETUP\", \"ChallengeResponses\": {\"USERNAME\":\n \"[username]\"}, \"SESSION\": \"[Session ID from\n VerifySoftwareToken]\"\n

          \n
          \n
          SELECT_MFA_TYPE
          \n
          \n

          \n \"ChallengeName\": \"SELECT_MFA_TYPE\", \"ChallengeResponses\": {\"USERNAME\":\n \"[username]\", \"ANSWER\": \"[SMS_MFA or SOFTWARE_TOKEN_MFA]\"}\n

          \n
          \n
          \n

          For more information about SECRET_HASH, see Computing secret hash values. For information about\n DEVICE_KEY, see Working with user devices in your user pool.

          " + "smithy.api#documentation": "

          The responses to the challenge that you received in the previous request. Each\n challenge has its own required response parameters. The following examples are partial\n JSON request bodies that highlight challenge-response parameters.

          \n \n

          You must provide a SECRET_HASH parameter in all challenge responses to an app\n client that has a client secret. Include a DEVICE_KEY for device\n authentication.

          \n
          \n
          \n
          SELECT_CHALLENGE
          \n
          \n

          \n \"ChallengeName\": \"SELECT_CHALLENGE\", \"ChallengeResponses\": {\n \"USERNAME\": \"[username]\",\n \"ANSWER\": \"[Challenge name]\"}\n

          \n

          Available challenges are PASSWORD, PASSWORD_SRP, \n EMAIL_OTP, SMS_OTP, and WEB_AUTHN.

          \n

          Complete authentication in the SELECT_CHALLENGE response for\n PASSWORD, PASSWORD_SRP, and WEB_AUTHN:

          \n
            \n
          • \n

            \n \"ChallengeName\": \"SELECT_CHALLENGE\", \"ChallengeResponses\": {\n \"ANSWER\": \"WEB_AUTHN\",\n \"USERNAME\": \"[username]\",\n \"CREDENTIAL\": \"[AuthenticationResponseJSON]\"}\n

            \n

            See \n AuthenticationResponseJSON.

            \n
          • \n
          • \n

            \n \"ChallengeName\": \"SELECT_CHALLENGE\", \"ChallengeResponses\": {\n \"ANSWER\": \"PASSWORD\",\n \"USERNAME\": \"[username]\",\n \"PASSWORD\": \"[password]\"}\n

            \n
          • \n
          • \n

            \n \"ChallengeName\": \"SELECT_CHALLENGE\", \"ChallengeResponses\": {\n \"ANSWER\": \"PASSWORD_SRP\",\n \"USERNAME\": \"[username]\",\n \"SRP_A\": \"[SRP_A]\"}\n

            \n
          • \n
          \n

          For SMS_OTP and EMAIL_OTP, respond with the\n username and answer. Your user pool will send a code for the user to submit in\n the next challenge response.

          \n
            \n
          • \n

            \n \"ChallengeName\": \"SELECT_CHALLENGE\", \"ChallengeResponses\": {\n \"ANSWER\": \"SMS_OTP\",\n \"USERNAME\": \"[username]\"}\n

            \n
          • \n
          • \n

            \n \"ChallengeName\": \"SELECT_CHALLENGE\", \"ChallengeResponses\": {\n \"ANSWER\": \"EMAIL_OTP\",\n \"USERNAME\": \"[username]\"}\n

            \n
          • \n
          \n
          \n
          SMS_OTP
          \n
          \n

          \n \"ChallengeName\": \"SMS_OTP\", \"ChallengeResponses\": \n {\"SMS_OTP_CODE\": \"[code]\", \"USERNAME\": \"[username]\"}\n

          \n
          \n
          EMAIL_OTP
          \n
          \n

          \n \"ChallengeName\": \"EMAIL_OTP\", \"ChallengeResponses\": {\"EMAIL_OTP_CODE\":\n \"[code]\", \"USERNAME\": \"[username]\"}\n

          \n
          \n
          SMS_MFA
          \n
          \n

          \n \"ChallengeName\": \"SMS_MFA\", \"ChallengeResponses\": {\"SMS_MFA_CODE\":\n \"[code]\", \"USERNAME\": \"[username]\"}\n

          \n
          \n
          PASSWORD_VERIFIER
          \n
          \n

          This challenge response is part of the SRP flow. Amazon Cognito requires \n that your application respond to this challenge within a few seconds. When\n the response time exceeds this period, your user pool returns a\n NotAuthorizedException error.

          \n

          \n \"ChallengeName\": \"PASSWORD_VERIFIER\", \"ChallengeResponses\":\n {\"PASSWORD_CLAIM_SIGNATURE\": \"[claim_signature]\",\n \"PASSWORD_CLAIM_SECRET_BLOCK\": \"[secret_block]\", \"TIMESTAMP\":\n [timestamp], \"USERNAME\": \"[username]\"}\n

          \n

          Add \"DEVICE_KEY\" when you sign in with a remembered\n device.

          \n
          \n
          CUSTOM_CHALLENGE
          \n
          \n

          \n \"ChallengeName\": \"CUSTOM_CHALLENGE\", \"ChallengeResponses\":\n {\"USERNAME\": \"[username]\", \"ANSWER\": \"[challenge_answer]\"}\n

          \n

          Add \"DEVICE_KEY\" when you sign in with a remembered\n device.

          \n
          \n
          NEW_PASSWORD_REQUIRED
          \n
          \n

          \n \"ChallengeName\": \"NEW_PASSWORD_REQUIRED\", \"ChallengeResponses\":\n {\"NEW_PASSWORD\": \"[new_password]\", \"USERNAME\":\n \"[username]\"}\n

          \n

          To set any required attributes that InitiateAuth returned in\n an requiredAttributes parameter, add\n \"userAttributes.[attribute_name]\": \"[attribute_value]\".\n This parameter can also set values for writable attributes that aren't\n required by your user pool.

          \n \n

          In a NEW_PASSWORD_REQUIRED challenge response, you can't modify a required attribute that already has a value. \nIn RespondToAuthChallenge, set a value for any keys that Amazon Cognito returned in the requiredAttributes parameter, \nthen use the UpdateUserAttributes API operation to modify the value of any additional attributes.

          \n
          \n
          \n
          SOFTWARE_TOKEN_MFA
          \n
          \n

          \n \"ChallengeName\": \"SOFTWARE_TOKEN_MFA\", \"ChallengeResponses\":\n {\"USERNAME\": \"[username]\", \"SOFTWARE_TOKEN_MFA_CODE\":\n [authenticator_code]}\n

          \n
          \n
          DEVICE_SRP_AUTH
          \n
          \n

          \n \"ChallengeName\": \"DEVICE_SRP_AUTH\", \"ChallengeResponses\": {\"USERNAME\":\n \"[username]\", \"DEVICE_KEY\": \"[device_key]\", \"SRP_A\":\n \"[srp_a]\"}\n

          \n
          \n
          DEVICE_PASSWORD_VERIFIER
          \n
          \n

          \n \"ChallengeName\": \"DEVICE_PASSWORD_VERIFIER\", \"ChallengeResponses\":\n {\"DEVICE_KEY\": \"[device_key]\", \"PASSWORD_CLAIM_SIGNATURE\":\n \"[claim_signature]\", \"PASSWORD_CLAIM_SECRET_BLOCK\": \"[secret_block]\",\n \"TIMESTAMP\": [timestamp], \"USERNAME\": \"[username]\"}\n

          \n
          \n
          MFA_SETUP
          \n
          \n

          \n \"ChallengeName\": \"MFA_SETUP\", \"ChallengeResponses\": {\"USERNAME\":\n \"[username]\"}, \"SESSION\": \"[Session ID from\n VerifySoftwareToken]\"\n

          \n
          \n
          SELECT_MFA_TYPE
          \n
          \n

          \n \"ChallengeName\": \"SELECT_MFA_TYPE\", \"ChallengeResponses\": {\"USERNAME\":\n \"[username]\", \"ANSWER\": \"[SMS_MFA or SOFTWARE_TOKEN_MFA]\"}\n

          \n
          \n
          \n

          For more information about SECRET_HASH, see Computing secret hash values. For information about\n DEVICE_KEY, see Working with user devices in your user pool.

          " } }, "Session": { @@ -3682,7 +3718,7 @@ } ], "traits": { - "smithy.api#documentation": "\n

          This action might generate an SMS text message. Starting June 1, 2021, US telecom carriers\n require you to register an origination phone number before you can send SMS messages\n to US phone numbers. If you use SMS text messages in Amazon Cognito, you must register a\n phone number with Amazon Pinpoint.\n Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must\n receive SMS messages might not be able to sign up, activate their accounts, or sign\n in.

          \n

          If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Servicesservice,\n Amazon Simple Notification Service might place your account in the SMS sandbox. In \n sandbox\n mode\n , you can send messages only to verified phone\n numbers. After you test your app while in the sandbox environment, you can move out\n of the sandbox and into production. For more information, see SMS message settings for Amazon Cognito user pools in the Amazon Cognito\n Developer Guide.

          \n
          \n

          Updates the specified user's attributes, including developer attributes, as an\n administrator. Works on any user. To delete an attribute from your user, submit the\n attribute in your API request with a blank value.

          \n

          For custom attributes, you must prepend the custom: prefix to the\n attribute name.

          \n

          In addition to updating user attributes, this API can also be used to mark phone and\n email as verified.

          \n \n

          Amazon Cognito evaluates Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you must use IAM credentials to authorize requests, and you must\n grant yourself the corresponding IAM permission in a policy.

          \n

          \n Learn more\n

          \n \n
          " + "smithy.api#documentation": "\n

          This action might generate an SMS text message. Starting June 1, 2021, US telecom carriers\n require you to register an origination phone number before you can send SMS messages\n to US phone numbers. If you use SMS text messages in Amazon Cognito, you must register a\n phone number with Amazon Pinpoint.\n Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must\n receive SMS messages might not be able to sign up, activate their accounts, or sign\n in.

          \n

          If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Services service,\n Amazon Simple Notification Service might place your account in the SMS sandbox. In \n sandbox\n mode\n , you can send messages only to verified phone\n numbers. After you test your app while in the sandbox environment, you can move out\n of the sandbox and into production. For more information, see SMS message settings for Amazon Cognito user pools in the Amazon Cognito\n Developer Guide.

          \n
          \n

          Updates the specified user's attributes, including developer attributes, as an\n administrator. Works on any user. To delete an attribute from your user, submit the\n attribute in your API request with a blank value.

          \n

          For custom attributes, you must prepend the custom: prefix to the\n attribute name.

          \n

          In addition to updating user attributes, this API can also be used to mark phone and\n email as verified.

          \n \n

          Amazon Cognito evaluates Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you must use IAM credentials to authorize requests, and you must\n grant yourself the corresponding IAM permission in a policy.

          \n

          \n Learn more\n

          \n \n
          " } }, "com.amazonaws.cognitoidentityprovider#AdminUpdateUserAttributesRequest": { @@ -3705,7 +3741,7 @@ "UserAttributes": { "target": "com.amazonaws.cognitoidentityprovider#AttributeListType", "traits": { - "smithy.api#documentation": "

          An array of name-value pairs representing user attributes.

          \n

          For custom attributes, you must prepend the custom: prefix to the\n attribute name.

          \n

          If your user pool requires verification before Amazon Cognito updates an attribute value that\n you specify in this request, Amazon Cognito doesn’t immediately update the value of that\n attribute. After your user receives and responds to a verification message to verify the\n new value, Amazon Cognito updates the attribute value. Your user can sign in and receive messages\n with the original attribute value until they verify the new value.

          \n

          To update the value of an attribute that requires verification in the same API\n request, include the email_verified or phone_number_verified\n attribute, with a value of true. If you set the email_verified\n or phone_number_verified value for an email or\n phone_number attribute that requires verification to true,\n Amazon Cognito doesn’t send a verification message to your user.

          ", + "smithy.api#documentation": "

          An array of name-value pairs representing user attributes.

          \n

          For custom attributes, you must prepend the custom: prefix to the\n attribute name.

          \n

          If your user pool requires verification before Amazon Cognito updates an attribute value that\n you specify in this request, Amazon Cognito doesn’t immediately update the value of that\n attribute. After your user receives and responds to a verification message to verify the\n new value, Amazon Cognito updates the attribute value. Your user can sign in and receive messages\n with the original attribute value until they verify the new value.

          \n

          To skip the verification message and update the value of an attribute that requires\n verification in the same API request, include the email_verified or\n phone_number_verified attribute, with a value of true. If\n you set the email_verified or phone_number_verified value for\n an email or phone_number attribute that requires verification\n to true, Amazon Cognito doesn’t send a verification message to your user.

          ", "smithy.api#required": {} } }, @@ -3798,7 +3834,7 @@ "CustomAuthMode": { "target": "com.amazonaws.cognitoidentityprovider#AdvancedSecurityEnabledModeType", "traits": { - "smithy.api#documentation": "

          The operating mode of advanced security features in custom authentication with \n \n Custom authentication challenge Lambda triggers.\n

          " + "smithy.api#documentation": "

          The operating mode of advanced security features in custom authentication with Custom\n authentication challenge Lambda triggers.

          " } } }, @@ -3891,31 +3927,43 @@ "smithy.api#httpError": 400 } }, + "com.amazonaws.cognitoidentityprovider#AllowedFirstAuthFactorsListType": { + "type": "list", + "member": { + "target": "com.amazonaws.cognitoidentityprovider#AuthFactorType" + }, + "traits": { + "smithy.api#length": { + "min": 1, + "max": 4 + } + } + }, "com.amazonaws.cognitoidentityprovider#AnalyticsConfigurationType": { "type": "structure", "members": { "ApplicationId": { "target": "com.amazonaws.cognitoidentityprovider#HexStringType", "traits": { - "smithy.api#documentation": "

          The application ID for an Amazon Pinpoint application.

          " + "smithy.api#documentation": "

          Your Amazon Pinpoint project ID.

          " } }, "ApplicationArn": { "target": "com.amazonaws.cognitoidentityprovider#ArnType", "traits": { - "smithy.api#documentation": "

          The Amazon Resource Name (ARN) of an Amazon Pinpoint project. You can use the Amazon Pinpoint project\n to integrate with the chosen user pool Client. Amazon Cognito publishes events to the Amazon Pinpoint\n project that the app ARN declares.

          " + "smithy.api#documentation": "

          The Amazon Resource Name (ARN) of an Amazon Pinpoint project that you want to connect to\n your user pool app client. Amazon Cognito publishes events to the Amazon Pinpoint project that\n ApplicationArn declares. You can also configure your application to\n pass an endpoint ID in the AnalyticsMetadata parameter of sign-in\n operations. The endpoint ID is information about the destination for push\n notifications

          " } }, "RoleArn": { "target": "com.amazonaws.cognitoidentityprovider#ArnType", "traits": { - "smithy.api#documentation": "

          The ARN of an Identity and Access Management role that authorizes Amazon Cognito to publish events to Amazon Pinpoint\n analytics.

          " + "smithy.api#documentation": "

          The ARN of an Identity and Access Management role that has the permissions required for Amazon Cognito to publish\n events to Amazon Pinpoint analytics.

          " } }, "ExternalId": { "target": "com.amazonaws.cognitoidentityprovider#StringType", "traits": { - "smithy.api#documentation": "

          The external ID.

          " + "smithy.api#documentation": "

          The external ID of the role that Amazon Cognito assumes to send\n analytics data to Amazon Pinpoint.

          " } }, "UserDataShared": { @@ -3927,7 +3975,7 @@ } }, "traits": { - "smithy.api#documentation": "

          The Amazon Pinpoint analytics configuration necessary to collect metrics for a user\n pool.

          \n \n

          In Regions where Amazon Pinpoint isn't available, user pools only support sending\n events to Amazon Pinpoint projects in us-east-1. In Regions where Amazon Pinpoint is available, user\n pools support sending events to Amazon Pinpoint projects within that same Region.

          \n
          " + "smithy.api#documentation": "

          The settings for Amazon Pinpoint analytics configuration. With an analytics configuration,\n your application can collect user-activity metrics for user notifications with a Amazon Pinpoint\n campaign.

          \n

          Amazon Pinpoint isn't available in all Amazon Web Services Regions. For a list of available Regions, see\n Amazon Cognito and Amazon Pinpoint Region availability.

          \n

          This data type is a request parameter of CreateUserPoolClient and UpdateUserPoolClient, and a response parameter of\n DescribeUserPoolClient.

          " } }, "com.amazonaws.cognitoidentityprovider#AnalyticsMetadataType": { @@ -3936,12 +3984,12 @@ "AnalyticsEndpointId": { "target": "com.amazonaws.cognitoidentityprovider#StringType", "traits": { - "smithy.api#documentation": "

          The endpoint ID.

          " + "smithy.api#documentation": "

          The endpoint ID. Information that you want to pass to Amazon Pinpoint about where to send\n notifications.

          " } } }, "traits": { - "smithy.api#documentation": "

          An Amazon Pinpoint analytics endpoint.

          \n

          An endpoint uniquely identifies a mobile device, email address, or phone number that\n can receive messages from Amazon Pinpoint analytics. For more information about Amazon Web Services Regions that\n can contain Amazon Pinpoint resources for use with Amazon Cognito user pools, see Using Amazon Pinpoint analytics with Amazon Cognito user pools.

          " + "smithy.api#documentation": "

          Information that your application adds to authentication requests. Applies an endpoint\n ID to the analytics data that your user pool sends to Amazon Pinpoint.

          \n

          An endpoint ID uniquely identifies a mobile device, email address or phone number that\n can receive messages from Amazon Pinpoint analytics. For more information about Amazon Web Services Regions that\n can contain Amazon Pinpoint resources for use with Amazon Cognito user pools, see Using Amazon Pinpoint analytics with Amazon Cognito user pools.

          \n

          This data type is a request parameter of authentication operations like InitiateAuth, AdminInitiateAuth, RespondToAuthChallenge, and AdminRespondToAuthChallenge.

          " } }, "com.amazonaws.cognitoidentityprovider#ArnType": { @@ -3954,6 +4002,198 @@ "smithy.api#pattern": "^arn:[\\w+=/,.@-]+:[\\w+=/,.@-]+:([\\w+=/,.@-]*)?:[0-9]+:[\\w+=/,.@-]+(:[\\w+=/,.@-]+)?(:[\\w+=/,.@-]+)?$" } }, + "com.amazonaws.cognitoidentityprovider#AssetBytesType": { + "type": "blob", + "traits": { + "smithy.api#length": { + "min": 0, + "max": 1000000 + } + } + }, + "com.amazonaws.cognitoidentityprovider#AssetCategoryType": { + "type": "enum", + "members": { + "FAVICON_ICO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FAVICON_ICO" + } + }, + "FAVICON_SVG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FAVICON_SVG" + } + }, + "EMAIL_GRAPHIC": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EMAIL_GRAPHIC" + } + }, + "SMS_GRAPHIC": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SMS_GRAPHIC" + } + }, + "AUTH_APP_GRAPHIC": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "AUTH_APP_GRAPHIC" + } + }, + "PASSWORD_GRAPHIC": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PASSWORD_GRAPHIC" + } + }, + "PASSKEY_GRAPHIC": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PASSKEY_GRAPHIC" + } + }, + "PAGE_HEADER_LOGO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PAGE_HEADER_LOGO" + } + }, + "PAGE_HEADER_BACKGROUND": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PAGE_HEADER_BACKGROUND" + } + }, + "PAGE_FOOTER_LOGO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PAGE_FOOTER_LOGO" + } + }, + "PAGE_FOOTER_BACKGROUND": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PAGE_FOOTER_BACKGROUND" + } + }, + "PAGE_BACKGROUND": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PAGE_BACKGROUND" + } + }, + "FORM_BACKGROUND": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FORM_BACKGROUND" + } + }, + "FORM_LOGO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "FORM_LOGO" + } + }, + "IDP_BUTTON_ICON": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "IDP_BUTTON_ICON" + } + } + } + }, + "com.amazonaws.cognitoidentityprovider#AssetExtensionType": { + "type": "enum", + "members": { + "ICO": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ICO" + } + }, + "JPEG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "JPEG" + } + }, + "PNG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PNG" + } + }, + "SVG": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SVG" + } + }, + "WEBP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "WEBP" + } + } + } + }, + "com.amazonaws.cognitoidentityprovider#AssetListType": { + "type": "list", + "member": { + "target": "com.amazonaws.cognitoidentityprovider#AssetType" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 40 + } + } + }, + "com.amazonaws.cognitoidentityprovider#AssetType": { + "type": "structure", + "members": { + "Category": { + "target": "com.amazonaws.cognitoidentityprovider#AssetCategoryType", + "traits": { + "smithy.api#documentation": "

          The category that the image corresponds to in your managed login configuration.\n Managed login has asset categories for different types of logos, backgrounds, and\n icons.

          ", + "smithy.api#required": {} + } + }, + "ColorMode": { + "target": "com.amazonaws.cognitoidentityprovider#ColorSchemeModeType", + "traits": { + "smithy.api#documentation": "

          The display-mode target of the asset: light, dark, or browser-adaptive. For example,\n Amazon Cognito displays a dark-mode image only when the browser or application is in dark mode,\n but displays a browser-adaptive file in all contexts.

          ", + "smithy.api#required": {} + } + }, + "Extension": { + "target": "com.amazonaws.cognitoidentityprovider#AssetExtensionType", + "traits": { + "smithy.api#documentation": "

          The file type of the image file.

          ", + "smithy.api#required": {} + } + }, + "Bytes": { + "target": "com.amazonaws.cognitoidentityprovider#AssetBytesType", + "traits": { + "smithy.api#documentation": "

          The image file, in Base64-encoded binary.

          " + } + }, + "ResourceId": { + "target": "com.amazonaws.cognitoidentityprovider#ResourceIdType", + "traits": { + "smithy.api#documentation": "

          The ID of the asset.

          " + } + } + }, + "traits": { + "smithy.api#documentation": "

          An image file from a managed login branding style in a user pool.

          \n

          This data type is a request parameter of CreateManagedLoginBranding and UpdateManagedLoginBranding, and a response parameter of\n DescribeManagedLoginBranding.

          " + } + }, "com.amazonaws.cognitoidentityprovider#AssociateSoftwareToken": { "type": "operation", "input": { @@ -4118,7 +4358,7 @@ } }, "traits": { - "smithy.api#documentation": "

          Specifies whether the attribute is standard or custom.

          " + "smithy.api#documentation": "

          The name and value of a user attribute.

          \n

          This data type is a request parameter of AdminUpdateUserAttributes and UpdateUserAttributes.

          " } }, "com.amazonaws.cognitoidentityprovider#AttributeValueType": { @@ -4149,7 +4389,7 @@ "EventType": { "target": "com.amazonaws.cognitoidentityprovider#EventType", "traits": { - "smithy.api#documentation": "

          The event type.

          " + "smithy.api#documentation": "

          The type of authentication event.

          " } }, "CreationDate": { @@ -4167,13 +4407,13 @@ "EventRisk": { "target": "com.amazonaws.cognitoidentityprovider#EventRiskType", "traits": { - "smithy.api#documentation": "

          The event risk.

          " + "smithy.api#documentation": "

          The threat evaluation from your user pool about an event. Contains information about\n whether your user pool detected compromised credentials, whether the event triggered an\n automated response, and the level of risk.

          " } }, "ChallengeResponses": { "target": "com.amazonaws.cognitoidentityprovider#ChallengeResponseListType", "traits": { - "smithy.api#documentation": "

          The challenge responses.

          " + "smithy.api#documentation": "

          A list of the challenges that the user was requested to answer, for example\n Password, and the result, for example Success.

          " } }, "EventContextData": { @@ -4185,12 +4425,12 @@ "EventFeedback": { "target": "com.amazonaws.cognitoidentityprovider#EventFeedbackType", "traits": { - "smithy.api#documentation": "

          A flag specifying the user feedback captured at the time of an event request is good\n or bad.

          " + "smithy.api#documentation": "

          The UpdateAuthEventFeedback or AdminUpdateAuthEventFeedback feedback that you or your\n user provided in response to the event. A value of Valid indicates that you\n disagreed with the level of risk that your user pool assigned, and evaluated a session\n to be valid, or likely safe. A value of Invalid indicates that you agreed\n with the user pool risk level and evaluated a session to be invalid, or likely\n malicious.

          " } } }, "traits": { - "smithy.api#documentation": "

          The authentication event type.

          " + "smithy.api#documentation": "

          One authentication event that Amazon Cognito logged in a user pool with advanced security\n features active. Contains user and device metadata and a risk assessment from your user\n pool.

          \n

          This data type is a request parameter of AdminListUserAuthEvents.

          " } }, "com.amazonaws.cognitoidentityprovider#AuthEventsType": { @@ -4199,6 +4439,35 @@ "target": "com.amazonaws.cognitoidentityprovider#AuthEventType" } }, + "com.amazonaws.cognitoidentityprovider#AuthFactorType": { + "type": "enum", + "members": { + "PASSWORD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PASSWORD" + } + }, + "EMAIL_OTP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "EMAIL_OTP" + } + }, + "SMS_OTP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SMS_OTP" + } + }, + "WEB_AUTHN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "WEB_AUTHN" + } + } + } + }, "com.amazonaws.cognitoidentityprovider#AuthFlowType": { "type": "enum", "members": { @@ -4243,6 +4512,12 @@ "traits": { "smithy.api#enumValue": "ADMIN_USER_PASSWORD_AUTH" } + }, + "USER_AUTH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "USER_AUTH" + } } } }, @@ -4273,7 +4548,7 @@ "AccessToken": { "target": "com.amazonaws.cognitoidentityprovider#TokenModelType", "traits": { - "smithy.api#documentation": "

          A valid access token that Amazon Cognito issued to the user who you want to\n authenticate.

          " + "smithy.api#documentation": "

          Your user's access token.

          " } }, "ExpiresIn": { @@ -4286,19 +4561,19 @@ "TokenType": { "target": "com.amazonaws.cognitoidentityprovider#StringType", "traits": { - "smithy.api#documentation": "

          The token type.

          " + "smithy.api#documentation": "

          The intended use of the token, for example Bearer.

          " } }, "RefreshToken": { "target": "com.amazonaws.cognitoidentityprovider#TokenModelType", "traits": { - "smithy.api#documentation": "

          The refresh token.

          " + "smithy.api#documentation": "

          Your user's refresh token.

          " } }, "IdToken": { "target": "com.amazonaws.cognitoidentityprovider#TokenModelType", "traits": { - "smithy.api#documentation": "

          The ID token.

          " + "smithy.api#documentation": "

          Your user's ID token.

          " } }, "NewDeviceMetadata": { @@ -4309,7 +4584,13 @@ } }, "traits": { - "smithy.api#documentation": "

          The authentication result.

          " + "smithy.api#documentation": "

          The object that your application receives after authentication. Contains tokens and\n information for device authentication.

          \n

          This data type is a response parameter of authentication operations like InitiateAuth, AdminInitiateAuth, RespondToAuthChallenge, and AdminRespondToAuthChallenge.

          " + } + }, + "com.amazonaws.cognitoidentityprovider#AvailableChallengeListType": { + "type": "list", + "member": { + "target": "com.amazonaws.cognitoidentityprovider#ChallengeNameType" } }, "com.amazonaws.cognitoidentityprovider#BlockedIPRangeListType": { @@ -4416,6 +4697,12 @@ "smithy.api#enumValue": "CUSTOM_CHALLENGE" } }, + "SELECT_CHALLENGE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SELECT_CHALLENGE" + } + }, "DEVICE_SRP_AUTH": { "target": "smithy.api#Unit", "traits": { @@ -4439,6 +4726,30 @@ "traits": { "smithy.api#enumValue": "NEW_PASSWORD_REQUIRED" } + }, + "SMS_OTP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "SMS_OTP" + } + }, + "PASSWORD": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PASSWORD" + } + }, + "WEB_AUTHN": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "WEB_AUTHN" + } + }, + "PASSWORD_SRP": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PASSWORD_SRP" + } } } }, @@ -4480,18 +4791,18 @@ "ChallengeName": { "target": "com.amazonaws.cognitoidentityprovider#ChallengeName", "traits": { - "smithy.api#documentation": "

          The challenge name.

          " + "smithy.api#documentation": "

          The type of challenge that your previous authentication request returned in the\n parameter ChallengeName, for example SMS_MFA.

          " } }, "ChallengeResponse": { "target": "com.amazonaws.cognitoidentityprovider#ChallengeResponse", "traits": { - "smithy.api#documentation": "

          The challenge response.

          " + "smithy.api#documentation": "

          The set of key-value pairs that provides a response to the requested challenge.

          " } } }, "traits": { - "smithy.api#documentation": "

          The challenge response type.

          " + "smithy.api#documentation": "

          The responses to the challenge that you received in the previous request. Each\n challenge has its own required response parameters. The following examples are partial\n JSON request bodies that highlight challenge-response parameters.

          \n \n

          You must provide a SECRET_HASH parameter in all challenge responses to an app\n client that has a client secret. Include a DEVICE_KEY for device\n authentication.

          \n
          \n
          \n
          SELECT_CHALLENGE
          \n
          \n

          \n \"ChallengeName\": \"SELECT_CHALLENGE\", \"ChallengeResponses\": {\n \"USERNAME\": \"[username]\",\n \"ANSWER\": \"[Challenge name]\"}\n

          \n

          Available challenges are PASSWORD, PASSWORD_SRP, \n EMAIL_OTP, SMS_OTP, and WEB_AUTHN.

          \n

          Complete authentication in the SELECT_CHALLENGE response for\n PASSWORD, PASSWORD_SRP, and WEB_AUTHN:

          \n
            \n
          • \n

            \n \"ChallengeName\": \"SELECT_CHALLENGE\", \"ChallengeResponses\": {\n \"ANSWER\": \"WEB_AUTHN\",\n \"USERNAME\": \"[username]\",\n \"CREDENTIAL\": \"[AuthenticationResponseJSON]\"}\n

            \n

            See \n AuthenticationResponseJSON.

            \n
          • \n
          • \n

            \n \"ChallengeName\": \"SELECT_CHALLENGE\", \"ChallengeResponses\": {\n \"ANSWER\": \"PASSWORD\",\n \"USERNAME\": \"[username]\",\n \"PASSWORD\": \"[password]\"}\n

            \n
          • \n
          • \n

            \n \"ChallengeName\": \"SELECT_CHALLENGE\", \"ChallengeResponses\": {\n \"ANSWER\": \"PASSWORD_SRP\",\n \"USERNAME\": \"[username]\",\n \"SRP_A\": \"[SRP_A]\"}\n

            \n
          • \n
          \n

          For SMS_OTP and EMAIL_OTP, respond with the\n username and answer. Your user pool will send a code for the user to submit in\n the next challenge response.

          \n
            \n
          • \n

            \n \"ChallengeName\": \"SELECT_CHALLENGE\", \"ChallengeResponses\": {\n \"ANSWER\": \"SMS_OTP\",\n \"USERNAME\": \"[username]\"}\n

            \n
          • \n
          • \n

            \n \"ChallengeName\": \"SELECT_CHALLENGE\", \"ChallengeResponses\": {\n \"ANSWER\": \"EMAIL_OTP\",\n \"USERNAME\": \"[username]\"}\n

            \n
          • \n
          \n
          \n
          SMS_OTP
          \n
          \n

          \n \"ChallengeName\": \"SMS_OTP\", \"ChallengeResponses\": \n {\"SMS_OTP_CODE\": \"[code]\", \"USERNAME\": \"[username]\"}\n

          \n
          \n
          EMAIL_OTP
          \n
          \n

          \n \"ChallengeName\": \"EMAIL_OTP\", \"ChallengeResponses\": {\"EMAIL_OTP_CODE\":\n \"[code]\", \"USERNAME\": \"[username]\"}\n

          \n
          \n
          SMS_MFA
          \n
          \n

          \n \"ChallengeName\": \"SMS_MFA\", \"ChallengeResponses\": {\"SMS_MFA_CODE\":\n \"[code]\", \"USERNAME\": \"[username]\"}\n

          \n
          \n
          PASSWORD_VERIFIER
          \n
          \n

          This challenge response is part of the SRP flow. Amazon Cognito requires \n that your application respond to this challenge within a few seconds. When\n the response time exceeds this period, your user pool returns a\n NotAuthorizedException error.

          \n

          \n \"ChallengeName\": \"PASSWORD_VERIFIER\", \"ChallengeResponses\":\n {\"PASSWORD_CLAIM_SIGNATURE\": \"[claim_signature]\",\n \"PASSWORD_CLAIM_SECRET_BLOCK\": \"[secret_block]\", \"TIMESTAMP\":\n [timestamp], \"USERNAME\": \"[username]\"}\n

          \n

          Add \"DEVICE_KEY\" when you sign in with a remembered\n device.

          \n
          \n
          CUSTOM_CHALLENGE
          \n
          \n

          \n \"ChallengeName\": \"CUSTOM_CHALLENGE\", \"ChallengeResponses\":\n {\"USERNAME\": \"[username]\", \"ANSWER\": \"[challenge_answer]\"}\n

          \n

          Add \"DEVICE_KEY\" when you sign in with a remembered\n device.

          \n
          \n
          NEW_PASSWORD_REQUIRED
          \n
          \n

          \n \"ChallengeName\": \"NEW_PASSWORD_REQUIRED\", \"ChallengeResponses\":\n {\"NEW_PASSWORD\": \"[new_password]\", \"USERNAME\":\n \"[username]\"}\n

          \n

          To set any required attributes that InitiateAuth returned in\n an requiredAttributes parameter, add\n \"userAttributes.[attribute_name]\": \"[attribute_value]\".\n This parameter can also set values for writable attributes that aren't\n required by your user pool.

          \n \n

          In a NEW_PASSWORD_REQUIRED challenge response, you can't modify a required attribute that already has a value. \nIn RespondToAuthChallenge, set a value for any keys that Amazon Cognito returned in the requiredAttributes parameter, \nthen use the UpdateUserAttributes API operation to modify the value of any additional attributes.

          \n
          \n
          \n
          SOFTWARE_TOKEN_MFA
          \n
          \n

          \n \"ChallengeName\": \"SOFTWARE_TOKEN_MFA\", \"ChallengeResponses\":\n {\"USERNAME\": \"[username]\", \"SOFTWARE_TOKEN_MFA_CODE\":\n [authenticator_code]}\n

          \n
          \n
          DEVICE_SRP_AUTH
          \n
          \n

          \n \"ChallengeName\": \"DEVICE_SRP_AUTH\", \"ChallengeResponses\": {\"USERNAME\":\n \"[username]\", \"DEVICE_KEY\": \"[device_key]\", \"SRP_A\":\n \"[srp_a]\"}\n

          \n
          \n
          DEVICE_PASSWORD_VERIFIER
          \n
          \n

          \n \"ChallengeName\": \"DEVICE_PASSWORD_VERIFIER\", \"ChallengeResponses\":\n {\"DEVICE_KEY\": \"[device_key]\", \"PASSWORD_CLAIM_SIGNATURE\":\n \"[claim_signature]\", \"PASSWORD_CLAIM_SECRET_BLOCK\": \"[secret_block]\",\n \"TIMESTAMP\": [timestamp], \"USERNAME\": \"[username]\"}\n

          \n
          \n
          MFA_SETUP
          \n
          \n

          \n \"ChallengeName\": \"MFA_SETUP\", \"ChallengeResponses\": {\"USERNAME\":\n \"[username]\"}, \"SESSION\": \"[Session ID from\n VerifySoftwareToken]\"\n

          \n
          \n
          SELECT_MFA_TYPE
          \n
          \n

          \n \"ChallengeName\": \"SELECT_MFA_TYPE\", \"ChallengeResponses\": {\"USERNAME\":\n \"[username]\", \"ANSWER\": \"[SMS_MFA or SOFTWARE_TOKEN_MFA]\"}\n

          \n
          \n
          \n

          For more information about SECRET_HASH, see Computing secret hash values. For information about\n DEVICE_KEY, see Working with user devices in your user pool.

          \n

          This data type is a request parameter of RespondToAuthChallenge and AdminRespondToAuthChallenge.

          " } }, "com.amazonaws.cognitoidentityprovider#ChallengeResponsesType": { @@ -4564,8 +4875,7 @@ "PreviousPassword": { "target": "com.amazonaws.cognitoidentityprovider#PasswordType", "traits": { - "smithy.api#documentation": "

          The old password.

          ", - "smithy.api#required": {} + "smithy.api#documentation": "

          The user's previous password. Required if the user has a password. If the user\n has no password and only signs in with passwordless authentication options, you can omit\n this parameter.

          " } }, "ProposedPassword": { @@ -4663,7 +4973,7 @@ } }, "traits": { - "smithy.api#documentation": "

          Configuration for the CloudWatch log group destination of user pool detailed activity\n logging, or of user activity log export with advanced security features.

          " + "smithy.api#documentation": "

          Configuration for the CloudWatch log group destination of user pool detailed activity\n logging, or of user activity log export with advanced security features.

          \n

          This data type is a request parameter of SetLogDeliveryConfiguration and a response parameter of\n GetLogDeliveryConfiguration.

          " } }, "com.amazonaws.cognitoidentityprovider#CodeDeliveryDetailsListType": { @@ -4695,7 +5005,7 @@ } }, "traits": { - "smithy.api#documentation": "

          The delivery details for an email or SMS message that Amazon Cognito sent for authentication or\n verification.

          " + "smithy.api#documentation": "

          The delivery details for an email or SMS message that Amazon Cognito sent for authentication or\n verification.

          \n

          This data type is a response parameter of operations that send a code for user profile\n confirmation, verification, or management, for example ForgotPassword and SignUp.

          " } }, "com.amazonaws.cognitoidentityprovider#CodeDeliveryFailureException": { @@ -4730,67 +5040,171 @@ "smithy.api#httpError": 400 } }, - "com.amazonaws.cognitoidentityprovider#CompletionMessageType": { - "type": "string", - "traits": { - "smithy.api#length": { - "min": 1, - "max": 128 - }, - "smithy.api#pattern": "^[\\w]+$" - } - }, - "com.amazonaws.cognitoidentityprovider#CompromisedCredentialsActionsType": { - "type": "structure", - "members": { - "EventAction": { - "target": "com.amazonaws.cognitoidentityprovider#CompromisedCredentialsEventActionType", - "traits": { - "smithy.api#documentation": "

          The event action.

          ", - "smithy.api#required": {} - } - } - }, - "traits": { - "smithy.api#documentation": "

          The compromised credentials actions type.

          " - } - }, - "com.amazonaws.cognitoidentityprovider#CompromisedCredentialsEventActionType": { + "com.amazonaws.cognitoidentityprovider#ColorSchemeModeType": { "type": "enum", "members": { - "BLOCK": { + "LIGHT": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "BLOCK" + "smithy.api#enumValue": "LIGHT" } }, - "NO_ACTION": { + "DARK": { "target": "smithy.api#Unit", "traits": { - "smithy.api#enumValue": "NO_ACTION" - } - } - } - }, - "com.amazonaws.cognitoidentityprovider#CompromisedCredentialsRiskConfigurationType": { - "type": "structure", - "members": { - "EventFilter": { - "target": "com.amazonaws.cognitoidentityprovider#EventFiltersType", - "traits": { - "smithy.api#documentation": "

          Perform the action for these events. The default is to perform all events if no event\n filter is specified.

          " + "smithy.api#enumValue": "DARK" } }, - "Actions": { - "target": "com.amazonaws.cognitoidentityprovider#CompromisedCredentialsActionsType", + "DYNAMIC": { + "target": "smithy.api#Unit", "traits": { - "smithy.api#documentation": "

          The compromised credentials risk configuration actions.

          ", - "smithy.api#required": {} + "smithy.api#enumValue": "DYNAMIC" + } + } + } + }, + "com.amazonaws.cognitoidentityprovider#CompleteWebAuthnRegistration": { + "type": "operation", + "input": { + "target": "com.amazonaws.cognitoidentityprovider#CompleteWebAuthnRegistrationRequest" + }, + "output": { + "target": "com.amazonaws.cognitoidentityprovider#CompleteWebAuthnRegistrationResponse" + }, + "errors": [ + { + "target": "com.amazonaws.cognitoidentityprovider#ForbiddenException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#InternalErrorException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#InvalidParameterException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#LimitExceededException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#NotAuthorizedException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#TooManyRequestsException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#WebAuthnChallengeNotFoundException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#WebAuthnClientMismatchException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#WebAuthnCredentialNotSupportedException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#WebAuthnNotEnabledException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#WebAuthnOriginNotAllowedException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#WebAuthnRelyingPartyMismatchException" + } + ], + "traits": { + "smithy.api#auth": [], + "smithy.api#documentation": "

          Completes registration of a passkey authenticator for the current user. Your\n application provides data from a successful registration request with the data from the\n output of a StartWebAuthnRegistration.

          \n

          Authorize this action with a signed-in user's access token. It must include the scope aws.cognito.signin.user.admin.

          ", + "smithy.api#optionalAuth": {} + } + }, + "com.amazonaws.cognitoidentityprovider#CompleteWebAuthnRegistrationRequest": { + "type": "structure", + "members": { + "AccessToken": { + "target": "com.amazonaws.cognitoidentityprovider#TokenModelType", + "traits": { + "smithy.api#documentation": "

          A valid access token that Amazon Cognito issued to the user whose passkey registration you want\n to verify.

          ", + "smithy.api#required": {} + } + }, + "Credential": { + "target": "com.amazonaws.cognitoidentityprovider#Document", + "traits": { + "smithy.api#documentation": "

          A RegistrationResponseJSON public-key credential response from the\n user's passkey provider.

          ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.cognitoidentityprovider#CompleteWebAuthnRegistrationResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.cognitoidentityprovider#CompletionMessageType": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 128 + }, + "smithy.api#pattern": "^[\\w]+$" + } + }, + "com.amazonaws.cognitoidentityprovider#CompromisedCredentialsActionsType": { + "type": "structure", + "members": { + "EventAction": { + "target": "com.amazonaws.cognitoidentityprovider#CompromisedCredentialsEventActionType", + "traits": { + "smithy.api#documentation": "

          The action that Amazon Cognito takes when it detects compromised credentials.

          ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

          Settings for user pool actions when Amazon Cognito detects compromised credentials with\n advanced security features in full-function ENFORCED mode.

          \n

          This data type is a request parameter of SetRiskConfiguration and a response parameter of DescribeRiskConfiguration.

          " + } + }, + "com.amazonaws.cognitoidentityprovider#CompromisedCredentialsEventActionType": { + "type": "enum", + "members": { + "BLOCK": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "BLOCK" + } + }, + "NO_ACTION": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "NO_ACTION" + } + } + } + }, + "com.amazonaws.cognitoidentityprovider#CompromisedCredentialsRiskConfigurationType": { + "type": "structure", + "members": { + "EventFilter": { + "target": "com.amazonaws.cognitoidentityprovider#EventFiltersType", + "traits": { + "smithy.api#documentation": "

          Settings for the sign-in activity where you want to configure compromised-credentials\n actions. Defaults to all events.

          " + } + }, + "Actions": { + "target": "com.amazonaws.cognitoidentityprovider#CompromisedCredentialsActionsType", + "traits": { + "smithy.api#documentation": "

          Settings for the actions that you want your user pool to take when Amazon Cognito detects\n compromised credentials.

          ", + "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

          The compromised credentials risk configuration type.

          " + "smithy.api#documentation": "

          Settings for compromised-credentials actions and authentication-event sources with\n advanced security features in full-function ENFORCED mode.

          \n

          This data type is a request parameter of SetRiskConfiguration and a response parameter of DescribeRiskConfiguration.

          " } }, "com.amazonaws.cognitoidentityprovider#ConcurrentModificationException": { @@ -4809,6 +5223,18 @@ "smithy.api#httpError": 400 } }, + "com.amazonaws.cognitoidentityprovider#ConfiguredUserAuthFactorsListType": { + "type": "list", + "member": { + "target": "com.amazonaws.cognitoidentityprovider#AuthFactorType" + }, + "traits": { + "smithy.api#length": { + "min": 0, + "max": 8 + } + } + }, "com.amazonaws.cognitoidentityprovider#ConfirmDevice": { "type": "operation", "input": { @@ -5166,6 +5592,12 @@ "traits": { "smithy.api#documentation": "

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

          \n

          You create custom workflows by assigning Lambda functions to user pool\n triggers. When you use the ConfirmSignUp API action, Amazon Cognito invokes the function that is\n assigned to the post confirmation trigger. When Amazon Cognito invokes this\n function, it passes a JSON payload, which the function receives as input. This payload\n contains a clientMetadata attribute, which provides the data that you\n assigned to the ClientMetadata parameter in your ConfirmSignUp request. In your function\n code in Lambda, you can process the clientMetadata value to\n enhance your workflow for your specific needs.

          \n

          For more information, see \nCustomizing user pool Workflows with Lambda Triggers in the Amazon Cognito Developer Guide.

          \n \n

          When you use the ClientMetadata parameter, remember that Amazon Cognito won't do the\n following:

          \n
            \n
          • \n

            Store the ClientMetadata value. This data is available only to Lambda\n triggers that are assigned to a user pool to support custom workflows. If\n your user pool configuration doesn't include triggers, the ClientMetadata\n parameter serves no purpose.

            \n
          • \n
          • \n

            Validate the ClientMetadata value.

            \n
          • \n
          • \n

            Encrypt the ClientMetadata value. Don't use Amazon Cognito to provide sensitive\n information.

            \n
          • \n
          \n
          " } + }, + "Session": { + "target": "com.amazonaws.cognitoidentityprovider#SessionType", + "traits": { + "smithy.api#documentation": "

          The optional session ID from a SignUp API request. You can sign in a user\n directly from the sign-up process with the USER_AUTH authentication\n flow.

          " + } } }, "traits": { @@ -5175,7 +5607,14 @@ }, "com.amazonaws.cognitoidentityprovider#ConfirmSignUpResponse": { "type": "structure", - "members": {}, + "members": { + "Session": { + "target": "com.amazonaws.cognitoidentityprovider#SessionType", + "traits": { + "smithy.api#documentation": "

          You can automatically sign users in with the one-time password that they provided in a\n successful ConfirmSignUp request. To do this, pass the Session\n parameter from the ConfirmSignUp response in the Session\n parameter of an InitiateAuth or AdminInitiateAuth request.

          " + } + } + }, "traits": { "smithy.api#documentation": "

          Represents the response from the server for the registration confirmation.

          ", "smithy.api#output": {} @@ -5204,21 +5643,21 @@ "ServerName": { "target": "com.amazonaws.cognitoidentityprovider#StringType", "traits": { - "smithy.api#documentation": "

          Your server endpoint where this API is invoked.

          ", + "smithy.api#documentation": "

          The name of your application's service endpoint.

          ", "smithy.api#required": {} } }, "ServerPath": { "target": "com.amazonaws.cognitoidentityprovider#StringType", "traits": { - "smithy.api#documentation": "

          Your server path where this API is invoked.

          ", + "smithy.api#documentation": "

          The path of your application's service endpoint.

          ", "smithy.api#required": {} } }, "HttpHeaders": { "target": "com.amazonaws.cognitoidentityprovider#HttpHeaderList", "traits": { - "smithy.api#documentation": "

          HttpHeaders received on your server in same order.

          ", + "smithy.api#documentation": "

          The HTTP headers from your user's authentication request.

          ", "smithy.api#required": {} } }, @@ -5230,7 +5669,7 @@ } }, "traits": { - "smithy.api#documentation": "

          Contextual user data type used for evaluating the risk of an unexpected event by Amazon Cognito\n advanced security.

          " + "smithy.api#documentation": "

          Contextual user data used for evaluating the risk of an authentication event by user\n pool threat protection.

          \n

          This data type is a request parameter of server-side authentication operations like\n AdminInitiateAuth and AdminRespondToAuthChallenge.

          " } }, "com.amazonaws.cognitoidentityprovider#CreateGroup": { @@ -5420,6 +5859,99 @@ "smithy.api#output": {} } }, + "com.amazonaws.cognitoidentityprovider#CreateManagedLoginBranding": { + "type": "operation", + "input": { + "target": "com.amazonaws.cognitoidentityprovider#CreateManagedLoginBrandingRequest" + }, + "output": { + "target": "com.amazonaws.cognitoidentityprovider#CreateManagedLoginBrandingResponse" + }, + "errors": [ + { + "target": "com.amazonaws.cognitoidentityprovider#ConcurrentModificationException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#InternalErrorException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#InvalidParameterException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#LimitExceededException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#ManagedLoginBrandingExistsException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#NotAuthorizedException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#TooManyRequestsException" + } + ], + "traits": { + "smithy.api#documentation": "

          Creates a new set of branding settings for a user pool style and associates it with an\n app client. This operation is the programmatic option for the creation of a new style in\n the branding designer.

          \n

          Provides values for UI customization in a Settings JSON object and image\n files in an Assets array. To send the JSON object Document\n type parameter in Settings, you might need to update to the most recent\n version of your Amazon Web Services SDK.

          \n

          This operation has a 2-megabyte request-size limit and include the CSS settings and\n image assets for your app client. Your branding settings might exceed 2MB in size. Amazon Cognito\n doesn't require that you pass all parameters in one request and preserves existing\n style settings that you don't specify. If your request is larger than 2MB, separate it\n into multiple requests, each with a size smaller than the limit.

          \n

          For more information, see API and SDK operations for managed login branding\n

          \n \n

          Amazon Cognito evaluates Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you must use IAM credentials to authorize requests, and you must\n grant yourself the corresponding IAM permission in a policy.

          \n

          \n Learn more\n

          \n \n
          " + } + }, + "com.amazonaws.cognitoidentityprovider#CreateManagedLoginBrandingRequest": { + "type": "structure", + "members": { + "UserPoolId": { + "target": "com.amazonaws.cognitoidentityprovider#UserPoolIdType", + "traits": { + "smithy.api#documentation": "

          The ID of the user pool where you want to create a new branding style.

          ", + "smithy.api#required": {} + } + }, + "ClientId": { + "target": "com.amazonaws.cognitoidentityprovider#ClientIdType", + "traits": { + "smithy.api#documentation": "

          The app client that you want to create the branding style for. Each style is\n permanently linked to an app client. To change the style for an app client, delete the\n existing style with DeleteManagedLoginBranding and create a new one.

          ", + "smithy.api#required": {} + } + }, + "UseCognitoProvidedValues": { + "target": "com.amazonaws.cognitoidentityprovider#BooleanType", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

          When true, applies the default branding style options. This option reverts to default\n style options that are managed by Amazon Cognito. You can modify them later in the branding\n designer.

          \n

          When you specify true for this option, you must also omit values for\n Settings and Assets in the request.

          " + } + }, + "Settings": { + "target": "com.amazonaws.cognitoidentityprovider#Document", + "traits": { + "smithy.api#documentation": "

          A JSON file, encoded as a Document type, with the the settings that you\n want to apply to your style.

          " + } + }, + "Assets": { + "target": "com.amazonaws.cognitoidentityprovider#AssetListType", + "traits": { + "smithy.api#documentation": "

          An array of image files that you want to apply to roles like backgrounds, logos, and\n icons. Each object must also indicate whether it is for dark mode, light mode, or\n browser-adaptive mode.

          " + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.cognitoidentityprovider#CreateManagedLoginBrandingResponse": { + "type": "structure", + "members": { + "ManagedLoginBranding": { + "target": "com.amazonaws.cognitoidentityprovider#ManagedLoginBrandingType", + "traits": { + "smithy.api#documentation": "

          The details of the branding style that you created.

          " + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.cognitoidentityprovider#CreateResourceServer": { "type": "operation", "input": { @@ -5591,6 +6123,9 @@ "target": "com.amazonaws.cognitoidentityprovider#CreateUserPoolResponse" }, "errors": [ + { + "target": "com.amazonaws.cognitoidentityprovider#FeatureUnavailableInTierException" + }, { "target": "com.amazonaws.cognitoidentityprovider#InternalErrorException" }, @@ -5612,6 +6147,9 @@ { "target": "com.amazonaws.cognitoidentityprovider#NotAuthorizedException" }, + { + "target": "com.amazonaws.cognitoidentityprovider#TierChangeNotAllowedException" + }, { "target": "com.amazonaws.cognitoidentityprovider#TooManyRequestsException" }, @@ -5620,7 +6158,7 @@ } ], "traits": { - "smithy.api#documentation": "\n

          This action might generate an SMS text message. Starting June 1, 2021, US telecom carriers\n require you to register an origination phone number before you can send SMS messages\n to US phone numbers. If you use SMS text messages in Amazon Cognito, you must register a\n phone number with Amazon Pinpoint.\n Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must\n receive SMS messages might not be able to sign up, activate their accounts, or sign\n in.

          \n

          If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Servicesservice,\n Amazon Simple Notification Service might place your account in the SMS sandbox. In \n sandbox\n mode\n , you can send messages only to verified phone\n numbers. After you test your app while in the sandbox environment, you can move out\n of the sandbox and into production. For more information, see SMS message settings for Amazon Cognito user pools in the Amazon Cognito\n Developer Guide.

          \n
          \n

          Creates a new Amazon Cognito user pool and sets the password policy for the\n pool.

          \n \n

          If you don't provide a value for an attribute, Amazon Cognito sets it to its default value.

          \n
          \n \n

          Amazon Cognito evaluates Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you must use IAM credentials to authorize requests, and you must\n grant yourself the corresponding IAM permission in a policy.

          \n

          \n Learn more\n

          \n \n
          ", + "smithy.api#documentation": "\n

          This action might generate an SMS text message. Starting June 1, 2021, US telecom carriers\n require you to register an origination phone number before you can send SMS messages\n to US phone numbers. If you use SMS text messages in Amazon Cognito, you must register a\n phone number with Amazon Pinpoint.\n Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must\n receive SMS messages might not be able to sign up, activate their accounts, or sign\n in.

          \n

          If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Services service,\n Amazon Simple Notification Service might place your account in the SMS sandbox. In \n sandbox\n mode\n , you can send messages only to verified phone\n numbers. After you test your app while in the sandbox environment, you can move out\n of the sandbox and into production. For more information, see SMS message settings for Amazon Cognito user pools in the Amazon Cognito\n Developer Guide.

          \n
          \n

          Creates a new Amazon Cognito user pool and sets the password policy for the\n pool.

          \n \n

          If you don't provide a value for an attribute, Amazon Cognito sets it to its default value.

          \n
          \n \n

          Amazon Cognito evaluates Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you must use IAM credentials to authorize requests, and you must\n grant yourself the corresponding IAM permission in a policy.

          \n

          \n Learn more\n

          \n \n
          ", "smithy.api#examples": [ { "title": "Example user pool with email and username sign-in", @@ -6247,13 +6785,13 @@ "ExplicitAuthFlows": { "target": "com.amazonaws.cognitoidentityprovider#ExplicitAuthFlowsListType", "traits": { - "smithy.api#documentation": "

          The authentication flows that you want your user pool client to support. For each app client in your user pool, you can sign in \nyour users with any combination of one or more flows, including with a user name and Secure Remote Password (SRP), a user name and \npassword, or a custom authentication process that you define with Lambda functions.

          \n \n

          If you don't specify a value for ExplicitAuthFlows, your user client supports ALLOW_REFRESH_TOKEN_AUTH, ALLOW_USER_SRP_AUTH, and ALLOW_CUSTOM_AUTH.

          \n
          \n

          Valid values include:

          \n
            \n
          • \n

            \n ALLOW_ADMIN_USER_PASSWORD_AUTH: Enable admin based user password\n authentication flow ADMIN_USER_PASSWORD_AUTH. This setting replaces\n the ADMIN_NO_SRP_AUTH setting. With this authentication flow, your app\n passes a user name and password to Amazon Cognito in the request, instead of using the Secure \n Remote Password (SRP) protocol to securely transmit the password.

            \n
          • \n
          • \n

            \n ALLOW_CUSTOM_AUTH: Enable Lambda trigger based\n authentication.

            \n
          • \n
          • \n

            \n ALLOW_USER_PASSWORD_AUTH: Enable user password-based\n authentication. In this flow, Amazon Cognito receives the password in the request instead\n of using the SRP protocol to verify passwords.

            \n
          • \n
          • \n

            \n ALLOW_USER_SRP_AUTH: Enable SRP-based authentication.

            \n
          • \n
          • \n

            \n ALLOW_REFRESH_TOKEN_AUTH: Enable authflow to refresh\n tokens.

            \n
          • \n
          \n

          In some environments, you will see the values ADMIN_NO_SRP_AUTH, CUSTOM_AUTH_FLOW_ONLY, or USER_PASSWORD_AUTH. \nYou can't assign these legacy ExplicitAuthFlows values to user pool clients at the same time as values that begin with ALLOW_,\nlike ALLOW_USER_SRP_AUTH.

          " + "smithy.api#documentation": "

          The authentication flows that you want your user pool client to support. For each app client in your user pool, you can sign in \nyour users with any combination of one or more flows, including with a user name and Secure Remote Password (SRP), a user name and \npassword, or a custom authentication process that you define with Lambda functions.

          \n \n

          If you don't specify a value for ExplicitAuthFlows, your user client supports ALLOW_REFRESH_TOKEN_AUTH, ALLOW_USER_SRP_AUTH, and ALLOW_CUSTOM_AUTH.

          \n
          \n

          Valid values include:

          \n
            \n
          • \n

            \n ALLOW_USER_AUTH: Enable selection-based sign-in\n with USER_AUTH. This setting covers username-password,\n secure remote password (SRP), passwordless, and passkey authentication.\n This authentiation flow can do username-password and SRP authentication\n without other ExplicitAuthFlows permitting them. For example\n users can complete an SRP challenge through USER_AUTH \n without the flow USER_SRP_AUTH being active for the app\n client. This flow doesn't include CUSTOM_AUTH.\n

            \n
          • \n
          • \n

            \n ALLOW_ADMIN_USER_PASSWORD_AUTH: Enable admin based user password\n authentication flow ADMIN_USER_PASSWORD_AUTH. This setting replaces\n the ADMIN_NO_SRP_AUTH setting. With this authentication flow, your app\n passes a user name and password to Amazon Cognito in the request, instead of using the Secure \n Remote Password (SRP) protocol to securely transmit the password.

            \n
          • \n
          • \n

            \n ALLOW_CUSTOM_AUTH: Enable Lambda trigger based\n authentication.

            \n
          • \n
          • \n

            \n ALLOW_USER_PASSWORD_AUTH: Enable user password-based\n authentication. In this flow, Amazon Cognito receives the password in the request instead\n of using the SRP protocol to verify passwords.

            \n
          • \n
          • \n

            \n ALLOW_USER_SRP_AUTH: Enable SRP-based authentication.

            \n
          • \n
          • \n

            \n ALLOW_REFRESH_TOKEN_AUTH: Enable authflow to refresh\n tokens.

            \n
          • \n
          \n

          In some environments, you will see the values ADMIN_NO_SRP_AUTH, CUSTOM_AUTH_FLOW_ONLY, or USER_PASSWORD_AUTH. \nYou can't assign these legacy ExplicitAuthFlows values to user pool clients at the same time as values that begin with ALLOW_,\nlike ALLOW_USER_SRP_AUTH.

          " } }, "SupportedIdentityProviders": { "target": "com.amazonaws.cognitoidentityprovider#SupportedIdentityProvidersListType", "traits": { - "smithy.api#documentation": "

          A list of provider names for the identity providers (IdPs) that are supported on this\n client. The following are supported: COGNITO, Facebook,\n Google, SignInWithApple, and LoginWithAmazon.\n You can also specify the names that you configured for the SAML and OIDC IdPs in your\n user pool, for example MySAMLIdP or MyOIDCIdP.

          " + "smithy.api#documentation": "

          A list of provider names for the identity providers (IdPs) that are supported on this\n client. The following are supported: COGNITO, Facebook,\n Google, SignInWithApple, and LoginWithAmazon.\n You can also specify the names that you configured for the SAML and OIDC IdPs in your\n user pool, for example MySAMLIdP or MyOIDCIdP.

          \n

          This setting applies to providers that you can access with the hosted\n UI and OAuth 2.0 authorization server. The removal of COGNITO\n from this list doesn't prevent authentication operations for local users with the\n user pools API in an Amazon Web Services SDK. The only way to prevent API-based authentication is to\n block access with a WAF rule.

          " } }, "CallbackURLs": { @@ -6314,7 +6852,7 @@ "EnablePropagateAdditionalUserContextData": { "target": "com.amazonaws.cognitoidentityprovider#WrappedBooleanType", "traits": { - "smithy.api#documentation": "

          Activates the propagation of additional user context data. For more information about\n propagation of user context data, see Adding advanced security to a user pool. If you don’t include this\n parameter, you can't send device fingerprint information, including source IP address,\n to Amazon Cognito advanced security. You can only activate\n EnablePropagateAdditionalUserContextData in an app client that has a\n client secret.

          " + "smithy.api#documentation": "

          Activates the propagation of additional user context data. For more information about\n propagation of user context data, see Adding advanced security to a user pool. If you don’t include this\n parameter, you can't send device fingerprint information, including source IP address,\n to Amazon Cognito advanced security. You can only activate\n EnablePropagateAdditionalUserContextData in an app client that has a\n client secret.

          " } }, "AuthSessionValidity": { @@ -6353,6 +6891,9 @@ "target": "com.amazonaws.cognitoidentityprovider#CreateUserPoolDomainResponse" }, "errors": [ + { + "target": "com.amazonaws.cognitoidentityprovider#FeatureUnavailableInTierException" + }, { "target": "com.amazonaws.cognitoidentityprovider#InternalErrorException" }, @@ -6370,7 +6911,7 @@ } ], "traits": { - "smithy.api#documentation": "

          Creates a new domain for a user pool.

          \n \n

          Amazon Cognito evaluates Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you must use IAM credentials to authorize requests, and you must\n grant yourself the corresponding IAM permission in a policy.

          \n

          \n Learn more\n

          \n \n
          " + "smithy.api#documentation": "

          Creates a new domain for a user pool. The domain hosts user pool domain services like\n managed login, the hosted UI (classic), and the user pool authorization server.

          \n \n

          Amazon Cognito evaluates Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you must use IAM credentials to authorize requests, and you must\n grant yourself the corresponding IAM permission in a policy.

          \n

          \n Learn more\n

          \n \n
          " } }, "com.amazonaws.cognitoidentityprovider#CreateUserPoolDomainRequest": { @@ -6386,10 +6927,16 @@ "UserPoolId": { "target": "com.amazonaws.cognitoidentityprovider#UserPoolIdType", "traits": { - "smithy.api#documentation": "

          The user pool ID.

          ", + "smithy.api#documentation": "

          The ID of the user pool where you want to add a domain.

          ", "smithy.api#required": {} } }, + "ManagedLoginVersion": { + "target": "com.amazonaws.cognitoidentityprovider#WrappedIntegerType", + "traits": { + "smithy.api#documentation": "

          The version of managed login branding that you want to apply to your domain. A value\n of 1 indicates hosted UI (classic) branding and a version of 2\n indicates managed login branding.

          \n

          Managed login requires that your user pool be configured for any feature plan other than Lite.

          " + } + }, "CustomDomainConfig": { "target": "com.amazonaws.cognitoidentityprovider#CustomDomainConfigType", "traits": { @@ -6404,6 +6951,12 @@ "com.amazonaws.cognitoidentityprovider#CreateUserPoolDomainResponse": { "type": "structure", "members": { + "ManagedLoginVersion": { + "target": "com.amazonaws.cognitoidentityprovider#WrappedIntegerType", + "traits": { + "smithy.api#documentation": "

          The version of managed login branding applied your domain. A value of 1\n indicates hosted UI (classic) branding and a version of 2 indicates managed\n login branding.

          " + } + }, "CloudFrontDomain": { "target": "com.amazonaws.cognitoidentityprovider#DomainType", "traits": { @@ -6440,7 +6993,7 @@ "LambdaConfig": { "target": "com.amazonaws.cognitoidentityprovider#LambdaConfigType", "traits": { - "smithy.api#documentation": "

          The Lambda trigger configuration information for the new user pool.

          \n \n

          In a push model, event sources (such as Amazon S3 and custom applications) need\n permission to invoke a function. So you must make an extra call to add permission\n for these event sources to invoke your Lambda function.

          \n

          \n

          For more information on using the Lambda API to add permission, see\n AddPermission .

          \n

          For adding permission using the CLI, see add-permission\n .

          \n
          " + "smithy.api#documentation": "

          A collection of user pool Lambda triggers. Amazon Cognito invokes triggers at several possible\n stages of authentication operations. Triggers can modify the outcome of the operations\n that invoked them.

          " } }, "AutoVerifiedAttributes": { @@ -6482,7 +7035,7 @@ "VerificationMessageTemplate": { "target": "com.amazonaws.cognitoidentityprovider#VerificationMessageTemplateType", "traits": { - "smithy.api#documentation": "

          The template for the verification message that the user sees when the app requests\n permission to access the user's information.

          " + "smithy.api#documentation": "

          The template for the verification message that your user pool delivers to users who\n set an email address or phone number attribute.

          \n

          Set the email message type that corresponds to your DefaultEmailOption\n selection. For CONFIRM_WITH_LINK, specify an\n EmailMessageByLink and leave EmailMessage blank. For\n CONFIRM_WITH_CODE, specify an EmailMessage and leave\n EmailMessageByLink blank. When you supply both parameters with either\n choice, Amazon Cognito returns an error.

          " } }, "SmsAuthenticationMessage": { @@ -6556,6 +7109,12 @@ "traits": { "smithy.api#documentation": "

          The available verified method a user can use to recover their password when they call\n ForgotPassword. You can use this setting to define a preferred method\n when a user has more than one method available. With this setting, SMS doesn't qualify\n for a valid password recovery mechanism if the user also has SMS multi-factor\n authentication (MFA) activated. In the absence of this setting, Amazon Cognito uses the legacy\n behavior to determine the recovery method where SMS is preferred through email.

          " } + }, + "UserPoolTier": { + "target": "com.amazonaws.cognitoidentityprovider#UserPoolTierType", + "traits": { + "smithy.api#documentation": "

          The user pool feature plan, or tier. This parameter determines the\n eligibility of the user pool for features like managed login, access-token\n customization, and threat protection. Defaults to ESSENTIALS.

          " + } } }, "traits": { @@ -6612,7 +7171,7 @@ } }, "traits": { - "smithy.api#documentation": "

          The configuration for a custom domain that hosts the sign-up and sign-in webpages for\n your application.

          " + "smithy.api#documentation": "

          The configuration for a hosted UI custom domain.

          \n

          This data type is a request parameter of CreateUserPoolDomain and UpdateUserPoolDomain.

          " } }, "com.amazonaws.cognitoidentityprovider#CustomEmailLambdaVersionConfigType": { @@ -6634,7 +7193,7 @@ } }, "traits": { - "smithy.api#documentation": "

          The properties of a custom email sender Lambda trigger.

          " + "smithy.api#documentation": "

          The properties of a custom email sender Lambda trigger.

          \n

          This data type is a request and response parameter of CreateUserPool and UpdateUserPool, and a response parameter of DescribeUserPool.

          " } }, "com.amazonaws.cognitoidentityprovider#CustomEmailSenderLambdaVersionType": { @@ -6667,7 +7226,7 @@ } }, "traits": { - "smithy.api#documentation": "

          The properties of a custom SMS sender Lambda trigger.

          " + "smithy.api#documentation": "

          The properties of a custom SMS sender Lambda trigger.

          \n

          This data type is a request and response parameter of CreateUserPool and UpdateUserPool, and a response parameter of DescribeUserPool.

          " } }, "com.amazonaws.cognitoidentityprovider#CustomSMSSenderLambdaVersionType": { @@ -6809,15 +7368,18 @@ "smithy.api#input": {} } }, - "com.amazonaws.cognitoidentityprovider#DeleteResourceServer": { + "com.amazonaws.cognitoidentityprovider#DeleteManagedLoginBranding": { "type": "operation", "input": { - "target": "com.amazonaws.cognitoidentityprovider#DeleteResourceServerRequest" + "target": "com.amazonaws.cognitoidentityprovider#DeleteManagedLoginBrandingRequest" }, "output": { "target": "smithy.api#Unit" }, "errors": [ + { + "target": "com.amazonaws.cognitoidentityprovider#ConcurrentModificationException" + }, { "target": "com.amazonaws.cognitoidentityprovider#InternalErrorException" }, @@ -6835,23 +7397,23 @@ } ], "traits": { - "smithy.api#documentation": "

          Deletes a resource server.

          " + "smithy.api#documentation": "

          Deletes a managed login branding style. When you delete a style, you delete the\n branding association for an app client and restore it to default settings.

          \n \n

          Amazon Cognito evaluates Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you must use IAM credentials to authorize requests, and you must\n grant yourself the corresponding IAM permission in a policy.

          \n

          \n Learn more\n

          \n \n
          " } }, - "com.amazonaws.cognitoidentityprovider#DeleteResourceServerRequest": { + "com.amazonaws.cognitoidentityprovider#DeleteManagedLoginBrandingRequest": { "type": "structure", "members": { - "UserPoolId": { - "target": "com.amazonaws.cognitoidentityprovider#UserPoolIdType", + "ManagedLoginBrandingId": { + "target": "com.amazonaws.cognitoidentityprovider#ManagedLoginBrandingIdType", "traits": { - "smithy.api#documentation": "

          The user pool ID for the user pool that hosts the resource server.

          ", + "smithy.api#documentation": "

          The ID of the managed login branding style that you want to delete.

          ", "smithy.api#required": {} } }, - "Identifier": { - "target": "com.amazonaws.cognitoidentityprovider#ResourceServerIdentifierType", + "UserPoolId": { + "target": "com.amazonaws.cognitoidentityprovider#UserPoolIdType", "traits": { - "smithy.api#documentation": "

          The identifier for the resource server.

          ", + "smithy.api#documentation": "

          The ID of the user pool that contains the managed login branding style that you want\n to delete.

          ", "smithy.api#required": {} } } @@ -6860,18 +7422,15 @@ "smithy.api#input": {} } }, - "com.amazonaws.cognitoidentityprovider#DeleteUser": { + "com.amazonaws.cognitoidentityprovider#DeleteResourceServer": { "type": "operation", "input": { - "target": "com.amazonaws.cognitoidentityprovider#DeleteUserRequest" + "target": "com.amazonaws.cognitoidentityprovider#DeleteResourceServerRequest" }, "output": { "target": "smithy.api#Unit" }, "errors": [ - { - "target": "com.amazonaws.cognitoidentityprovider#ForbiddenException" - }, { "target": "com.amazonaws.cognitoidentityprovider#InternalErrorException" }, @@ -6882,7 +7441,61 @@ "target": "com.amazonaws.cognitoidentityprovider#NotAuthorizedException" }, { - "target": "com.amazonaws.cognitoidentityprovider#PasswordResetRequiredException" + "target": "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#TooManyRequestsException" + } + ], + "traits": { + "smithy.api#documentation": "

          Deletes a resource server.

          " + } + }, + "com.amazonaws.cognitoidentityprovider#DeleteResourceServerRequest": { + "type": "structure", + "members": { + "UserPoolId": { + "target": "com.amazonaws.cognitoidentityprovider#UserPoolIdType", + "traits": { + "smithy.api#documentation": "

          The user pool ID for the user pool that hosts the resource server.

          ", + "smithy.api#required": {} + } + }, + "Identifier": { + "target": "com.amazonaws.cognitoidentityprovider#ResourceServerIdentifierType", + "traits": { + "smithy.api#documentation": "

          The identifier for the resource server.

          ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.cognitoidentityprovider#DeleteUser": { + "type": "operation", + "input": { + "target": "com.amazonaws.cognitoidentityprovider#DeleteUserRequest" + }, + "output": { + "target": "smithy.api#Unit" + }, + "errors": [ + { + "target": "com.amazonaws.cognitoidentityprovider#ForbiddenException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#InternalErrorException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#InvalidParameterException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#NotAuthorizedException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#PasswordResetRequiredException" }, { "target": "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException" @@ -7151,6 +7764,66 @@ "smithy.api#input": {} } }, + "com.amazonaws.cognitoidentityprovider#DeleteWebAuthnCredential": { + "type": "operation", + "input": { + "target": "com.amazonaws.cognitoidentityprovider#DeleteWebAuthnCredentialRequest" + }, + "output": { + "target": "com.amazonaws.cognitoidentityprovider#DeleteWebAuthnCredentialResponse" + }, + "errors": [ + { + "target": "com.amazonaws.cognitoidentityprovider#ForbiddenException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#InternalErrorException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#InvalidParameterException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#NotAuthorizedException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException" + } + ], + "traits": { + "smithy.api#auth": [], + "smithy.api#documentation": "

          Deletes a registered passkey, or webauthN, device for the currently signed-in\n user.

          \n

          Authorize this action with a signed-in user's access token. It must include the scope aws.cognito.signin.user.admin.

          ", + "smithy.api#optionalAuth": {} + } + }, + "com.amazonaws.cognitoidentityprovider#DeleteWebAuthnCredentialRequest": { + "type": "structure", + "members": { + "AccessToken": { + "target": "com.amazonaws.cognitoidentityprovider#TokenModelType", + "traits": { + "smithy.api#documentation": "

          A valid access token that Amazon Cognito issued to the user whose passkey you want to\n delete.

          ", + "smithy.api#required": {} + } + }, + "CredentialId": { + "target": "com.amazonaws.cognitoidentityprovider#StringType", + "traits": { + "smithy.api#documentation": "

          The unique identifier of the passkey that you want to delete. Look up registered\n devices with ListWebAuthnCredentials.

          ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.cognitoidentityprovider#DeleteWebAuthnCredentialResponse": { + "type": "structure", + "members": {}, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.cognitoidentityprovider#DeletionProtectionType": { "type": "enum", "members": { @@ -7257,6 +7930,150 @@ "smithy.api#output": {} } }, + "com.amazonaws.cognitoidentityprovider#DescribeManagedLoginBranding": { + "type": "operation", + "input": { + "target": "com.amazonaws.cognitoidentityprovider#DescribeManagedLoginBrandingRequest" + }, + "output": { + "target": "com.amazonaws.cognitoidentityprovider#DescribeManagedLoginBrandingResponse" + }, + "errors": [ + { + "target": "com.amazonaws.cognitoidentityprovider#InternalErrorException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#InvalidParameterException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#NotAuthorizedException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#TooManyRequestsException" + } + ], + "traits": { + "smithy.api#documentation": "

          When given the ID of a managed login branding style, returns detailed information\n about the style.

          " + } + }, + "com.amazonaws.cognitoidentityprovider#DescribeManagedLoginBrandingByClient": { + "type": "operation", + "input": { + "target": "com.amazonaws.cognitoidentityprovider#DescribeManagedLoginBrandingByClientRequest" + }, + "output": { + "target": "com.amazonaws.cognitoidentityprovider#DescribeManagedLoginBrandingByClientResponse" + }, + "errors": [ + { + "target": "com.amazonaws.cognitoidentityprovider#InternalErrorException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#InvalidParameterException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#NotAuthorizedException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#TooManyRequestsException" + } + ], + "traits": { + "smithy.api#documentation": "

          When given the ID of a user pool app client, returns detailed information about the\n style assigned to the app client.

          " + } + }, + "com.amazonaws.cognitoidentityprovider#DescribeManagedLoginBrandingByClientRequest": { + "type": "structure", + "members": { + "UserPoolId": { + "target": "com.amazonaws.cognitoidentityprovider#UserPoolIdType", + "traits": { + "smithy.api#documentation": "

          The ID of the user pool that contains the app client where you want more information\n about the managed login branding style.

          ", + "smithy.api#required": {} + } + }, + "ClientId": { + "target": "com.amazonaws.cognitoidentityprovider#ClientIdType", + "traits": { + "smithy.api#documentation": "

          The app client that's assigned to the branding style that you want more information\n about.

          ", + "smithy.api#required": {} + } + }, + "ReturnMergedResources": { + "target": "com.amazonaws.cognitoidentityprovider#BooleanType", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

          When true, returns values for branding options that are unchanged from\n Amazon Cognito defaults. When false or when you omit this parameter, returns only\n values that you customized in your branding style.

          " + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.cognitoidentityprovider#DescribeManagedLoginBrandingByClientResponse": { + "type": "structure", + "members": { + "ManagedLoginBranding": { + "target": "com.amazonaws.cognitoidentityprovider#ManagedLoginBrandingType", + "traits": { + "smithy.api#documentation": "

          The details of the requested branding style.

          " + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.cognitoidentityprovider#DescribeManagedLoginBrandingRequest": { + "type": "structure", + "members": { + "UserPoolId": { + "target": "com.amazonaws.cognitoidentityprovider#UserPoolIdType", + "traits": { + "smithy.api#documentation": "

          The ID of the user pool that contains the managed login branding style that you want\n to get information about.

          ", + "smithy.api#required": {} + } + }, + "ManagedLoginBrandingId": { + "target": "com.amazonaws.cognitoidentityprovider#ManagedLoginBrandingIdType", + "traits": { + "smithy.api#documentation": "

          The ID of the managed login branding style that you want to get more information\n about.

          ", + "smithy.api#required": {} + } + }, + "ReturnMergedResources": { + "target": "com.amazonaws.cognitoidentityprovider#BooleanType", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

          When true, returns values for branding options that are unchanged from\n Amazon Cognito defaults. When false or when you omit this parameter, returns only\n values that you customized in your branding style.

          " + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.cognitoidentityprovider#DescribeManagedLoginBrandingResponse": { + "type": "structure", + "members": { + "ManagedLoginBranding": { + "target": "com.amazonaws.cognitoidentityprovider#ManagedLoginBrandingType", + "traits": { + "smithy.api#documentation": "

          The details of the requested branding style.

          " + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.cognitoidentityprovider#DescribeResourceServer": { "type": "operation", "input": { @@ -7671,7 +8488,7 @@ } }, "traits": { - "smithy.api#documentation": "

          The device-remembering configuration for a user pool. A \n DescribeUserPool request returns a null value for this object when the user\n pool isn't configured to remember devices. When device remembering is active, you can\n remember a user's device with a ConfirmDevice API request. Additionally. when the property\n DeviceOnlyRememberedOnUserPrompt is true, you must follow\n ConfirmDevice with an UpdateDeviceStatus API request that sets the user's device to\n remembered or not_remembered.

          \n

          To sign in with a remembered device, include DEVICE_KEY in the\n authentication parameters in your user's \n InitiateAuth request. If your app doesn't include a DEVICE_KEY\n parameter, the response from Amazon Cognito includes newly-generated DEVICE_KEY and\n DEVICE_GROUP_KEY values under NewDeviceMetadata. Store\n these values to use in future device-authentication requests.

          \n \n

          When you provide a value for any property of DeviceConfiguration, you\n activate the device remembering for the user pool.

          \n
          " + "smithy.api#documentation": "

          The device-remembering configuration for a user pool. A \n DescribeUserPool request returns a null value for this object when the user\n pool isn't configured to remember devices. When device remembering is active, you can\n remember a user's device with a ConfirmDevice API request. Additionally. when the property\n DeviceOnlyRememberedOnUserPrompt is true, you must follow\n ConfirmDevice with an UpdateDeviceStatus API request that sets the user's device to\n remembered or not_remembered.

          \n

          To sign in with a remembered device, include DEVICE_KEY in the\n authentication parameters in your user's \n InitiateAuth request. If your app doesn't include a DEVICE_KEY\n parameter, the response from Amazon Cognito includes newly-generated DEVICE_KEY and\n DEVICE_GROUP_KEY values under NewDeviceMetadata. Store\n these values to use in future device-authentication requests.

          \n \n

          When you provide a value for any property of DeviceConfiguration, you\n activate the device remembering for the user pool.

          \n

          This data type is a request and response parameter of CreateUserPool and UpdateUserPool, and a response parameter of DescribeUserPool.

          \n
          " } }, "com.amazonaws.cognitoidentityprovider#DeviceKeyType": { @@ -7722,18 +8539,18 @@ "PasswordVerifier": { "target": "com.amazonaws.cognitoidentityprovider#StringType", "traits": { - "smithy.api#documentation": "

          The password verifier.

          " + "smithy.api#documentation": "

          A password verifier for a user's device. Used in SRP authentication.

          " } }, "Salt": { "target": "com.amazonaws.cognitoidentityprovider#StringType", "traits": { - "smithy.api#documentation": "

          The salt\n

          " + "smithy.api#documentation": "

          The salt that you want to use in SRP authentication with the user's device.

          " } } }, "traits": { - "smithy.api#documentation": "

          The device verifier against which it is authenticated.

          " + "smithy.api#documentation": "

          A Secure Remote Password (SRP) value that your application generates when you register\n a user's device. For more information, see Getting a device key.

          \n

          This data type is a request parameter of ConfirmDevice.

          " } }, "com.amazonaws.cognitoidentityprovider#DeviceType": { @@ -7742,19 +8559,19 @@ "DeviceKey": { "target": "com.amazonaws.cognitoidentityprovider#DeviceKeyType", "traits": { - "smithy.api#documentation": "

          The device key.

          " + "smithy.api#documentation": "

          The device key, for example\n us-west-2_EXAMPLE-a1b2c3d4-5678-90ab-cdef-EXAMPLE22222.

          " } }, "DeviceAttributes": { "target": "com.amazonaws.cognitoidentityprovider#AttributeListType", "traits": { - "smithy.api#documentation": "

          The device attributes.

          " + "smithy.api#documentation": "

          Metadata about a user's device, like name and last-access source IP.

          " } }, "DeviceCreateDate": { "target": "com.amazonaws.cognitoidentityprovider#DateType", "traits": { - "smithy.api#documentation": "

          The creation date of the device.

          " + "smithy.api#documentation": "

          The date and time when the item was created. Amazon Cognito returns this timestamp in UNIX epoch time format. Your SDK might render the output in a \nhuman-readable format like ISO 8601 or a Java Date object.

          " } }, "DeviceLastModifiedDate": { @@ -7766,27 +8583,30 @@ "DeviceLastAuthenticatedDate": { "target": "com.amazonaws.cognitoidentityprovider#DateType", "traits": { - "smithy.api#documentation": "

          The date when the device was last authenticated.

          " + "smithy.api#documentation": "

          The date when the user last signed in with the device.

          " } } }, "traits": { - "smithy.api#documentation": "

          The device type.

          " + "smithy.api#documentation": "

          Information about a user's device that they've registered for device SRP\n authentication in your application. For more information, see Working with user devices in your user pool.

          \n

          The data type is a response parameter of AdminGetDevice, AdminListDevices, and GetDevice.

          " } }, + "com.amazonaws.cognitoidentityprovider#Document": { + "type": "document" + }, "com.amazonaws.cognitoidentityprovider#DomainDescriptionType": { "type": "structure", "members": { "UserPoolId": { "target": "com.amazonaws.cognitoidentityprovider#UserPoolIdType", "traits": { - "smithy.api#documentation": "

          The user pool ID.

          " + "smithy.api#documentation": "

          The ID of the user pool that the domain is attached to.

          " } }, "AWSAccountId": { "target": "com.amazonaws.cognitoidentityprovider#AWSAccountIdType", "traits": { - "smithy.api#documentation": "

          The Amazon Web Services ID for the user pool owner.

          " + "smithy.api#documentation": "

          The Amazon Web Services account that you created the user pool in.

          " } }, "Domain": { @@ -7804,7 +8624,7 @@ "CloudFrontDistribution": { "target": "com.amazonaws.cognitoidentityprovider#StringType", "traits": { - "smithy.api#documentation": "

          The Amazon CloudFront endpoint that you use as the target of the alias that you set up with\n your Domain Name Service (DNS) provider.

          " + "smithy.api#documentation": "

          The Amazon CloudFront endpoint that hosts your custom domain.

          " } }, "Version": { @@ -7824,10 +8644,16 @@ "traits": { "smithy.api#documentation": "

          The configuration for a custom domain that hosts the sign-up and sign-in webpages for\n your application.

          " } + }, + "ManagedLoginVersion": { + "target": "com.amazonaws.cognitoidentityprovider#WrappedIntegerType", + "traits": { + "smithy.api#documentation": "

          The version of managed login branding that you want to apply to your domain. A value\n of 1 indicates hosted UI (classic) branding and a version of 2\n indicates managed login branding.

          \n

          Managed login requires that your user pool be configured for any feature plan other than Lite.

          " + } } }, "traits": { - "smithy.api#documentation": "

          A container for information about a domain.

          " + "smithy.api#documentation": "

          A container for information about the user pool domain associated with the hosted UI\n and OAuth endpoints.

          \n

          This data type is a response parameter of DescribeUserPoolDomain.

          " } }, "com.amazonaws.cognitoidentityprovider#DomainStatusType": { @@ -7938,7 +8764,17 @@ } }, "traits": { - "smithy.api#documentation": "

          The email configuration of your user pool. The email configuration type sets your\n preferred sending method, Amazon Web Services Region, and sender for messages from your user\n pool.

          \n \n

          Amazon Cognito can send email messages with Amazon Simple Email Service resources in the Amazon Web Services Region where\n you created your user pool, and in alternate Regions in some cases. For more\n information on the supported Regions, see Email settings for Amazon Cognito user pools.

          \n
          " + "smithy.api#documentation": "

          The email configuration of your user pool. The email configuration type sets your\n preferred sending method, Amazon Web Services Region, and sender for messages from your user\n pool.

          \n \n

          Amazon Cognito can send email messages with Amazon Simple Email Service resources in the Amazon Web Services Region where\n you created your user pool, and in alternate Regions in some cases. For more\n information on the supported Regions, see Email settings for Amazon Cognito user pools.

          \n
          \n

          This data type is a request parameter of CreateUserPool, UpdateUserPool, and SetUserPoolMfaConfig, and a response parameter of\n CreateUserPool, UpdateUserPool, and GetUserPoolMfaConfig.

          " + } + }, + "com.amazonaws.cognitoidentityprovider#EmailInviteMessageType": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 6, + "max": 20000 + }, + "smithy.api#pattern": "^[\\p{L}\\p{M}\\p{S}\\p{N}\\p{P}\\s*]*$" } }, "com.amazonaws.cognitoidentityprovider#EmailMfaConfigType": { @@ -7958,7 +8794,7 @@ } }, "traits": { - "smithy.api#documentation": "

          Sets or shows user pool email message configuration for MFA. Includes the subject and\n body of the email message template for MFA messages. To activate this setting, \n advanced security features must be active in your user pool.

          " + "smithy.api#documentation": "

          Sets or shows user pool email message configuration for MFA. Includes the subject and\n body of the email message template for MFA messages. To activate this setting, \n advanced security features must be active in your user pool.

          \n

          This data type is a request parameter of SetUserPoolMfaConfig and a response parameter of GetUserPoolMfaConfig.

          " } }, "com.amazonaws.cognitoidentityprovider#EmailMfaMessageType": { @@ -7990,7 +8826,7 @@ } }, "traits": { - "smithy.api#documentation": "

          User preferences for multi-factor authentication with email messages. Activates or\n deactivates email MFA and sets it as the preferred MFA method when multiple methods are\n available. To activate this setting, \n advanced security features must be active in your user pool.

          " + "smithy.api#documentation": "

          User preferences for multi-factor authentication with email messages. Activates or\n deactivates email MFA and sets it as the preferred MFA method when multiple methods are\n available. To activate this setting, \n advanced security features must be active in your user pool.

          \n

          This data type is a request parameter of SetUserMFAPreference and AdminSetUserMFAPreference.

          " } }, "com.amazonaws.cognitoidentityprovider#EmailMfaSubjectType": { @@ -8124,7 +8960,7 @@ } }, "traits": { - "smithy.api#documentation": "

          Specifies the user context data captured at the time of an event request.

          " + "smithy.api#documentation": "

          The context data that your application submitted in an authentication request with\n advanced security features, as displayed in an AdminListUserAuthEvents response.

          " } }, "com.amazonaws.cognitoidentityprovider#EventFeedbackType": { @@ -8140,19 +8976,19 @@ "Provider": { "target": "com.amazonaws.cognitoidentityprovider#StringType", "traits": { - "smithy.api#documentation": "

          The provider.

          ", + "smithy.api#documentation": "

          The submitter of the event feedback. For example, if you submit event feedback in the\n Amazon Cognito console, this value is Admin.

          ", "smithy.api#required": {} } }, "FeedbackDate": { "target": "com.amazonaws.cognitoidentityprovider#DateType", "traits": { - "smithy.api#documentation": "

          The event feedback date.

          " + "smithy.api#documentation": "

          The date that you or your user submitted the feedback.

          " } } }, "traits": { - "smithy.api#documentation": "

          Specifies the event feedback type.

          " + "smithy.api#documentation": "

          The feedback that your application submitted to an advanced security features event\n log, as displayed in an AdminListUserAuthEvents response.

          " } }, "com.amazonaws.cognitoidentityprovider#EventFilterType": { @@ -8223,13 +9059,13 @@ "RiskDecision": { "target": "com.amazonaws.cognitoidentityprovider#RiskDecisionType", "traits": { - "smithy.api#documentation": "

          The risk decision.

          " + "smithy.api#documentation": "

          The action taken by adaptive authentication. If NoRisk, your user pool\n took no action. If AccountTakeover, your user pool applied the adaptive\n authentication automated response that you configured. If Block, your user\n pool prevented the attempt.

          " } }, "RiskLevel": { "target": "com.amazonaws.cognitoidentityprovider#RiskLevelType", "traits": { - "smithy.api#documentation": "

          The risk level.

          " + "smithy.api#documentation": "

          The risk level that adaptive authentication assessed for the authentication\n event.

          " } }, "CompromisedCredentialsDetected": { @@ -8240,7 +9076,7 @@ } }, "traits": { - "smithy.api#documentation": "

          The event risk type.

          " + "smithy.api#documentation": "

          The risk evaluation by adaptive authentication, as displayed in an AdminListUserAuthEvents response. Contains evaluations\n of compromised-credentials detection and assessed risk level and action taken by\n adaptive authentication.

          " } }, "com.amazonaws.cognitoidentityprovider#EventSourceName": { @@ -8367,7 +9203,26 @@ "traits": { "smithy.api#enumValue": "ALLOW_REFRESH_TOKEN_AUTH" } + }, + "ALLOW_USER_AUTH": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ALLOW_USER_AUTH" + } + } + } + }, + "com.amazonaws.cognitoidentityprovider#FeatureUnavailableInTierException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.cognitoidentityprovider#MessageType" } + }, + "traits": { + "smithy.api#documentation": "

          This exception is thrown when a feature you attempted to configure isn't\n available in your current feature plan.

          ", + "smithy.api#error": "client", + "smithy.api#httpError": 403 } }, "com.amazonaws.cognitoidentityprovider#FeedbackValueType": { @@ -8548,7 +9403,7 @@ ], "traits": { "smithy.api#auth": [], - "smithy.api#documentation": "

          Calling this API causes a message to be sent to the end user with a confirmation code\n that is required to change the user's password. For the Username parameter,\n you can use the username or user alias. The method used to send the confirmation code is\n sent according to the specified AccountRecoverySetting. For more information, see Recovering\n User Accounts in the Amazon Cognito Developer Guide. To\n use the confirmation code for resetting the password, call ConfirmForgotPassword.

          \n

          If neither a verified phone number nor a verified email exists, this API returns\n InvalidParameterException. If your app client has a client secret and\n you don't provide a SECRET_HASH parameter, this API returns\n NotAuthorizedException.

          \n

          To use this API operation, your user pool must have self-service account recovery\n configured. Use AdminSetUserPassword if you manage passwords as an administrator.

          \n \n

          Amazon Cognito doesn't evaluate Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you can't use IAM credentials to authorize requests, and you can't\n grant IAM permissions in policies. For more information about authorization models in\n Amazon Cognito, see Using the Amazon Cognito user pools API and user pool endpoints.

          \n
          \n \n

          This action might generate an SMS text message. Starting June 1, 2021, US telecom carriers\n require you to register an origination phone number before you can send SMS messages\n to US phone numbers. If you use SMS text messages in Amazon Cognito, you must register a\n phone number with Amazon Pinpoint.\n Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must\n receive SMS messages might not be able to sign up, activate their accounts, or sign\n in.

          \n

          If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Servicesservice,\n Amazon Simple Notification Service might place your account in the SMS sandbox. In \n sandbox\n mode\n , you can send messages only to verified phone\n numbers. After you test your app while in the sandbox environment, you can move out\n of the sandbox and into production. For more information, see SMS message settings for Amazon Cognito user pools in the Amazon Cognito\n Developer Guide.

          \n
          ", + "smithy.api#documentation": "

          Calling this API causes a message to be sent to the end user with a confirmation code\n that is required to change the user's password. For the Username parameter,\n you can use the username or user alias. The method used to send the confirmation code is\n sent according to the specified AccountRecoverySetting. For more information, see Recovering\n User Accounts in the Amazon Cognito Developer Guide. To\n use the confirmation code for resetting the password, call ConfirmForgotPassword.

          \n

          If neither a verified phone number nor a verified email exists, this API returns\n InvalidParameterException. If your app client has a client secret and\n you don't provide a SECRET_HASH parameter, this API returns\n NotAuthorizedException.

          \n

          To use this API operation, your user pool must have self-service account recovery\n configured. Use AdminSetUserPassword if you manage passwords as an administrator.

          \n \n

          Amazon Cognito doesn't evaluate Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you can't use IAM credentials to authorize requests, and you can't\n grant IAM permissions in policies. For more information about authorization models in\n Amazon Cognito, see Using the Amazon Cognito user pools API and user pool endpoints.

          \n
          \n \n

          This action might generate an SMS text message. Starting June 1, 2021, US telecom carriers\n require you to register an origination phone number before you can send SMS messages\n to US phone numbers. If you use SMS text messages in Amazon Cognito, you must register a\n phone number with Amazon Pinpoint.\n Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must\n receive SMS messages might not be able to sign up, activate their accounts, or sign\n in.

          \n

          If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Services service,\n Amazon Simple Notification Service might place your account in the SMS sandbox. In \n sandbox\n mode\n , you can send messages only to verified phone\n numbers. After you test your app while in the sandbox environment, you can move out\n of the sandbox and into production. For more information, see SMS message settings for Amazon Cognito user pools in the Amazon Cognito\n Developer Guide.

          \n
          ", "smithy.api#optionalAuth": {} } }, @@ -9184,7 +10039,7 @@ ], "traits": { "smithy.api#auth": [], - "smithy.api#documentation": "

          Generates a user attribute verification code for the specified attribute name. Sends a\n message to a user with a code that they must return in a VerifyUserAttribute\n request.

          \n

          Authorize this action with a signed-in user's access token. It must include the scope aws.cognito.signin.user.admin.

          \n \n

          Amazon Cognito doesn't evaluate Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you can't use IAM credentials to authorize requests, and you can't\n grant IAM permissions in policies. For more information about authorization models in\n Amazon Cognito, see Using the Amazon Cognito user pools API and user pool endpoints.

          \n
          \n \n

          This action might generate an SMS text message. Starting June 1, 2021, US telecom carriers\n require you to register an origination phone number before you can send SMS messages\n to US phone numbers. If you use SMS text messages in Amazon Cognito, you must register a\n phone number with Amazon Pinpoint.\n Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must\n receive SMS messages might not be able to sign up, activate their accounts, or sign\n in.

          \n

          If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Servicesservice,\n Amazon Simple Notification Service might place your account in the SMS sandbox. In \n sandbox\n mode\n , you can send messages only to verified phone\n numbers. After you test your app while in the sandbox environment, you can move out\n of the sandbox and into production. For more information, see SMS message settings for Amazon Cognito user pools in the Amazon Cognito\n Developer Guide.

          \n
          ", + "smithy.api#documentation": "

          Generates a user attribute verification code for the specified attribute name. Sends a\n message to a user with a code that they must return in a VerifyUserAttribute\n request.

          \n

          Authorize this action with a signed-in user's access token. It must include the scope aws.cognito.signin.user.admin.

          \n \n

          Amazon Cognito doesn't evaluate Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you can't use IAM credentials to authorize requests, and you can't\n grant IAM permissions in policies. For more information about authorization models in\n Amazon Cognito, see Using the Amazon Cognito user pools API and user pool endpoints.

          \n
          \n \n

          This action might generate an SMS text message. Starting June 1, 2021, US telecom carriers\n require you to register an origination phone number before you can send SMS messages\n to US phone numbers. If you use SMS text messages in Amazon Cognito, you must register a\n phone number with Amazon Pinpoint.\n Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must\n receive SMS messages might not be able to sign up, activate their accounts, or sign\n in.

          \n

          If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Services service,\n Amazon Simple Notification Service might place your account in the SMS sandbox. In \n sandbox\n mode\n , you can send messages only to verified phone\n numbers. After you test your app while in the sandbox environment, you can move out\n of the sandbox and into production. For more information, see SMS message settings for Amazon Cognito user pools in the Amazon Cognito\n Developer Guide.

          \n
          ", "smithy.api#optionalAuth": {} } }, @@ -9232,13 +10087,104 @@ "smithy.api#output": {} } }, - "com.amazonaws.cognitoidentityprovider#GetUserPoolMfaConfig": { + "com.amazonaws.cognitoidentityprovider#GetUserAuthFactors": { "type": "operation", "input": { - "target": "com.amazonaws.cognitoidentityprovider#GetUserPoolMfaConfigRequest" + "target": "com.amazonaws.cognitoidentityprovider#GetUserAuthFactorsRequest" }, "output": { - "target": "com.amazonaws.cognitoidentityprovider#GetUserPoolMfaConfigResponse" + "target": "com.amazonaws.cognitoidentityprovider#GetUserAuthFactorsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.cognitoidentityprovider#ForbiddenException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#InternalErrorException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#InvalidParameterException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#NotAuthorizedException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#PasswordResetRequiredException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#TooManyRequestsException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#UserNotConfirmedException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#UserNotFoundException" + } + ], + "traits": { + "smithy.api#auth": [], + "smithy.api#documentation": "

          Lists the authentication options for the currently signed-in user. Returns the\n following:

          \n
            \n
          1. \n

            The user's multi-factor authentication (MFA) preferences.

            \n
          2. \n
          3. \n

            The user's options in the USER_AUTH flow that they can\n select in a SELECT_CHALLENGE response or request in a\n PREFERRED_CHALLENGErequest.

            \n
          4. \n
          ", + "smithy.api#optionalAuth": {} + } + }, + "com.amazonaws.cognitoidentityprovider#GetUserAuthFactorsRequest": { + "type": "structure", + "members": { + "AccessToken": { + "target": "com.amazonaws.cognitoidentityprovider#TokenModelType", + "traits": { + "smithy.api#documentation": "

          A valid access token that Amazon Cognito issued to the user whose authentication factors you\n want to view.

          ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.cognitoidentityprovider#GetUserAuthFactorsResponse": { + "type": "structure", + "members": { + "Username": { + "target": "com.amazonaws.cognitoidentityprovider#UsernameType", + "traits": { + "smithy.api#documentation": "

          The username of the currently sign-in user.

          ", + "smithy.api#required": {} + } + }, + "PreferredMfaSetting": { + "target": "com.amazonaws.cognitoidentityprovider#StringType", + "traits": { + "smithy.api#documentation": "

          The user's preferred MFA setting.

          " + } + }, + "UserMFASettingList": { + "target": "com.amazonaws.cognitoidentityprovider#UserMFASettingListType", + "traits": { + "smithy.api#documentation": "

          The MFA options that are activated for the user. The possible values in this list are\n SMS_MFA, EMAIL_OTP, and\n SOFTWARE_TOKEN_MFA.

          " + } + }, + "ConfiguredUserAuthFactors": { + "target": "com.amazonaws.cognitoidentityprovider#ConfiguredUserAuthFactorsListType", + "traits": { + "smithy.api#documentation": "

          The authentication types that are available to the user with USER_AUTH\n sign-in.

          " + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, + "com.amazonaws.cognitoidentityprovider#GetUserPoolMfaConfig": { + "type": "operation", + "input": { + "target": "com.amazonaws.cognitoidentityprovider#GetUserPoolMfaConfigRequest" + }, + "output": { + "target": "com.amazonaws.cognitoidentityprovider#GetUserPoolMfaConfigResponse" }, "errors": [ { @@ -9302,6 +10248,12 @@ "traits": { "smithy.api#documentation": "

          The multi-factor authentication (MFA) configuration. Valid values include:

          \n
            \n
          • \n

            \n OFF MFA won't be used for any users.

            \n
          • \n
          • \n

            \n ON MFA is required for all users to sign in.

            \n
          • \n
          • \n

            \n OPTIONAL MFA will be required only for individual users who have\n an MFA factor activated.

            \n
          • \n
          " } + }, + "WebAuthnConfiguration": { + "target": "com.amazonaws.cognitoidentityprovider#WebAuthnConfigurationType", + "traits": { + "smithy.api#documentation": "

          Shows user pool configuration for MFA with passkeys from biometric devices and\n security keys.

          " + } } }, "traits": { @@ -9356,7 +10308,7 @@ "UserMFASettingList": { "target": "com.amazonaws.cognitoidentityprovider#UserMFASettingListType", "traits": { - "smithy.api#documentation": "

          The MFA options that are activated for the user. The possible values in this list are\n SMS_MFA, EMAIL_OTP, and SOFTWARE_TOKEN_MFA.

          " + "smithy.api#documentation": "

          The MFA options that are activated for the user. The possible values in this list are\n SMS_MFA, EMAIL_OTP, and\n SOFTWARE_TOKEN_MFA.

          " } } }, @@ -9470,25 +10422,25 @@ "UserPoolId": { "target": "com.amazonaws.cognitoidentityprovider#UserPoolIdType", "traits": { - "smithy.api#documentation": "

          The user pool ID for the user pool.

          " + "smithy.api#documentation": "

          The ID of the user pool that contains the group.

          " } }, "Description": { "target": "com.amazonaws.cognitoidentityprovider#DescriptionType", "traits": { - "smithy.api#documentation": "

          A string containing the description of the group.

          " + "smithy.api#documentation": "

          A friendly description of the group.

          " } }, "RoleArn": { "target": "com.amazonaws.cognitoidentityprovider#ArnType", "traits": { - "smithy.api#documentation": "

          The role Amazon Resource Name (ARN) for the group.

          " + "smithy.api#documentation": "

          The ARN of the IAM role associated with the group. If a group has the highest\n priority of a user's groups, users who authenticate with an identity pool get\n credentials for the RoleArn that's associated with the group.

          " } }, "Precedence": { "target": "com.amazonaws.cognitoidentityprovider#PrecedenceType", "traits": { - "smithy.api#documentation": "

          A non-negative integer value that specifies the precedence of this group relative to\n the other groups that a user can belong to in the user pool. Zero is the highest\n precedence value. Groups with lower Precedence values take precedence over\n groups with higher ornull Precedence values. If a user belongs to two or\n more groups, it is the group with the lowest precedence value whose role ARN is given in\n the user's tokens for the cognito:roles and\n cognito:preferred_role claims.

          \n

          Two groups can have the same Precedence value. If this happens, neither\n group takes precedence over the other. If two groups with the same\n Precedence have the same role ARN, that role is used in the\n cognito:preferred_role claim in tokens for users in each group. If the\n two groups have different role ARNs, the cognito:preferred_role claim isn't\n set in users' tokens.

          \n

          The default Precedence value is null.

          " + "smithy.api#documentation": "

          A non-negative integer value that specifies the precedence of this group relative to\n the other groups that a user can belong to in the user pool. Zero is the highest\n precedence value. Groups with lower Precedence values take precedence over\n groups with higher ornull Precedence values. If a user belongs to two or\n more groups, it is the group with the lowest precedence value whose role ARN is given in\n the user's tokens for the cognito:roles and\n cognito:preferred_role claims.

          \n

          Two groups can have the same Precedence value. If this happens, neither\n group takes precedence over the other. If two groups with the same\n Precedence have the same role ARN, that role is used in the\n cognito:preferred_role claim in tokens for users in each group. If the\n two groups have different role ARNs, the cognito:preferred_role claim isn't\n set in users' tokens.

          \n

          The default Precedence value is null.

          " } }, "LastModifiedDate": { @@ -9505,7 +10457,7 @@ } }, "traits": { - "smithy.api#documentation": "

          The group type.

          " + "smithy.api#documentation": "

          A user pool group. Contains details about the group and the way that it contributes to\n IAM role decisions with identity pools. Identity pools can make decisions about the\n IAM role to assign based on groups: users get credentials for the role associated with\n their highest-priority group.

          \n

          This data type is a response parameter of AdminListGroupsForUser, CreateGroup, GetGroup, ListGroups, and UpdateGroup.

          " } }, "com.amazonaws.cognitoidentityprovider#HexStringType": { @@ -9531,7 +10483,7 @@ } }, "traits": { - "smithy.api#documentation": "

          The HTTP header.

          " + "smithy.api#documentation": "

          The HTTP header in the ContextData parameter.

          \n

          This data type is a request parameter of server-side authentication operations like\n AdminInitiateAuth and AdminRespondToAuthChallenge.

          " } }, "com.amazonaws.cognitoidentityprovider#HttpHeaderList": { @@ -9555,19 +10507,19 @@ "UserPoolId": { "target": "com.amazonaws.cognitoidentityprovider#UserPoolIdType", "traits": { - "smithy.api#documentation": "

          The user pool ID.

          " + "smithy.api#documentation": "

          The ID of the user pool associated with the IdP.

          " } }, "ProviderName": { "target": "com.amazonaws.cognitoidentityprovider#ProviderNameType", "traits": { - "smithy.api#documentation": "

          The IdP name.

          " + "smithy.api#documentation": "

          A friendly name for the IdP.

          " } }, "ProviderType": { "target": "com.amazonaws.cognitoidentityprovider#IdentityProviderTypeType", "traits": { - "smithy.api#documentation": "

          The IdP type.

          " + "smithy.api#documentation": "

          The type of IdP. Either SAML, OIDC, or a named social identity provider.

          " } }, "ProviderDetails": { @@ -9585,7 +10537,7 @@ "IdpIdentifiers": { "target": "com.amazonaws.cognitoidentityprovider#IdpIdentifiersListType", "traits": { - "smithy.api#documentation": "

          A list of IdP identifiers.

          " + "smithy.api#documentation": "

          A list of IdP identifiers. IdP identifiers are strings that represent friendly names\n or domain names of IdPs, for example MyIdP or\n auth.example.com. You can choose to route user authorization requests to\n the right IdP with either IdP identifiers or IdP names. For more information, see\n identity_provider and idp_identifier at Authorize endpoint.

          " } }, "LastModifiedDate": { @@ -9602,7 +10554,7 @@ } }, "traits": { - "smithy.api#documentation": "

          A container for information about an IdP.

          " + "smithy.api#documentation": "

          A user pool identity provider (IdP). Contains information about a third-party IdP to a\n user pool, the attributes that it populates to user profiles, and the trust relationship\n between the IdP and your user pool.

          \n

          This data type is a response parameter of CreateIdentityProvider, DescribeIdentityProvider, GetIdentityProviderByIdentifier, and UpdateIdentityProvider.

          " } }, "com.amazonaws.cognitoidentityprovider#IdentityProviderTypeType": { @@ -9740,7 +10692,7 @@ ], "traits": { "smithy.api#auth": [], - "smithy.api#documentation": "

          Initiates sign-in for a user in the Amazon Cognito user directory. You can't sign in a user\n with a federated IdP with InitiateAuth. For more information, see Adding user pool sign-in through a third party.

          \n \n

          Amazon Cognito doesn't evaluate Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you can't use IAM credentials to authorize requests, and you can't\n grant IAM permissions in policies. For more information about authorization models in\n Amazon Cognito, see Using the Amazon Cognito user pools API and user pool endpoints.

          \n
          \n \n

          This action might generate an SMS text message. Starting June 1, 2021, US telecom carriers\n require you to register an origination phone number before you can send SMS messages\n to US phone numbers. If you use SMS text messages in Amazon Cognito, you must register a\n phone number with Amazon Pinpoint.\n Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must\n receive SMS messages might not be able to sign up, activate their accounts, or sign\n in.

          \n

          If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Servicesservice,\n Amazon Simple Notification Service might place your account in the SMS sandbox. In \n sandbox\n mode\n , you can send messages only to verified phone\n numbers. After you test your app while in the sandbox environment, you can move out\n of the sandbox and into production. For more information, see SMS message settings for Amazon Cognito user pools in the Amazon Cognito\n Developer Guide.

          \n
          ", + "smithy.api#documentation": "

          Initiates sign-in for a user in the Amazon Cognito user directory. You can't sign in a user\n with a federated IdP with InitiateAuth. For more information, see Adding user pool sign-in through a third party.

          \n \n

          Amazon Cognito doesn't evaluate Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you can't use IAM credentials to authorize requests, and you can't\n grant IAM permissions in policies. For more information about authorization models in\n Amazon Cognito, see Using the Amazon Cognito user pools API and user pool endpoints.

          \n
          \n \n

          This action might generate an SMS text message. Starting June 1, 2021, US telecom carriers\n require you to register an origination phone number before you can send SMS messages\n to US phone numbers. If you use SMS text messages in Amazon Cognito, you must register a\n phone number with Amazon Pinpoint.\n Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must\n receive SMS messages might not be able to sign up, activate their accounts, or sign\n in.

          \n

          If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Services service,\n Amazon Simple Notification Service might place your account in the SMS sandbox. In \n sandbox\n mode\n , you can send messages only to verified phone\n numbers. After you test your app while in the sandbox environment, you can move out\n of the sandbox and into production. For more information, see SMS message settings for Amazon Cognito user pools in the Amazon Cognito\n Developer Guide.

          \n
          ", "smithy.api#examples": [ { "title": "Example username and password sign-in for a user who has TOTP MFA", @@ -9783,20 +10735,20 @@ "AuthFlow": { "target": "com.amazonaws.cognitoidentityprovider#AuthFlowType", "traits": { - "smithy.api#documentation": "

          The authentication flow for this call to run. The API action will depend on this\n value. For example:

          \n
            \n
          • \n

            \n REFRESH_TOKEN_AUTH takes in a valid refresh token and returns new\n tokens.

            \n
          • \n
          • \n

            \n USER_SRP_AUTH takes in USERNAME and\n SRP_A and returns the SRP variables to be used for next\n challenge execution.

            \n
          • \n
          • \n

            \n USER_PASSWORD_AUTH takes in USERNAME and\n PASSWORD and returns the next challenge or tokens.

            \n
          • \n
          \n

          Valid values include:

          \n
            \n
          • \n

            \n USER_SRP_AUTH: Authentication flow for the Secure Remote Password\n (SRP) protocol.

            \n
          • \n
          • \n

            \n REFRESH_TOKEN_AUTH/REFRESH_TOKEN: Authentication\n flow for refreshing the access token and ID token by supplying a valid refresh\n token.

            \n
          • \n
          • \n

            \n CUSTOM_AUTH: Custom authentication flow.

            \n
          • \n
          • \n

            \n USER_PASSWORD_AUTH: Non-SRP authentication flow; user name and\n password are passed directly. If a user migration Lambda trigger is set, this\n flow will invoke the user migration Lambda if it doesn't find the user name in\n the user pool.

            \n
          • \n
          \n

          \n ADMIN_NO_SRP_AUTH isn't a valid value.

          ", + "smithy.api#documentation": "

          The authentication flow that you want to initiate. The AuthParameters\n that you must submit are linked to the flow that you submit. For example:

          \n
            \n
          • \n

            \n USER_AUTH: Request a preferred authentication type or review\n available authentication types. From the offered authentication types, select\n one in a challenge response and then authenticate with that method in an\n additional challenge response.

            \n
          • \n
          • \n

            \n REFRESH_TOKEN_AUTH: Receive new ID and access tokens when you\n pass a REFRESH_TOKEN parameter with a valid refresh token as the\n value.

            \n
          • \n
          • \n

            \n USER_SRP_AUTH: Receive secure remote password (SRP) variables for\n the next challenge, PASSWORD_VERIFIER, when you pass\n USERNAME and SRP_A parameters.

            \n
          • \n
          • \n

            \n USER_PASSWORD_AUTH: Receive new tokens or the next challenge, for\n example SOFTWARE_TOKEN_MFA, when you pass USERNAME and\n PASSWORD parameters.

            \n
          • \n
          \n

          Valid values include the following:

          \n
          \n
          USER_AUTH
          \n
          \n

          The entry point for sign-in with passwords, one-time passwords, biometric\n devices, and security keys.

          \n
          \n
          USER_SRP_AUTH
          \n
          \n

          Username-password authentication with the Secure Remote Password (SRP)\n protocol. For more information, see Use SRP password verification in custom\n authentication flow.

          \n
          \n
          REFRESH_TOKEN_AUTH and REFRESH_TOKEN
          \n
          \n

          Provide a valid refresh token and receive new ID and access tokens. For\n more information, see Using the refresh token.

          \n
          \n
          CUSTOM_AUTH
          \n
          \n

          Custom authentication with Lambda triggers. For more information, see\n Custom authentication challenge Lambda\n triggers.

          \n
          \n
          USER_PASSWORD_AUTH
          \n
          \n

          Username-password authentication with the password sent directly in the\n request. For more information, see Admin authentication flow.

          \n
          \n
          \n

          \n ADMIN_USER_PASSWORD_AUTH is a flow type of AdminInitiateAuth and isn't valid for InitiateAuth.\n ADMIN_NO_SRP_AUTH is a legacy server-side username-password flow and\n isn't valid for InitiateAuth.

          ", "smithy.api#required": {} } }, "AuthParameters": { "target": "com.amazonaws.cognitoidentityprovider#AuthParametersType", "traits": { - "smithy.api#documentation": "

          The authentication parameters. These are inputs corresponding to the\n AuthFlow that you're invoking. The required values depend on the value\n of AuthFlow:

          \n
            \n
          • \n

            For USER_SRP_AUTH: USERNAME (required),\n SRP_A (required), SECRET_HASH (required if the app\n client is configured with a client secret), DEVICE_KEY.

            \n
          • \n
          • \n

            For USER_PASSWORD_AUTH: USERNAME (required),\n PASSWORD (required), SECRET_HASH (required if the\n app client is configured with a client secret), DEVICE_KEY.

            \n
          • \n
          • \n

            For REFRESH_TOKEN_AUTH/REFRESH_TOKEN: REFRESH_TOKEN\n (required), SECRET_HASH (required if the app client is configured\n with a client secret), DEVICE_KEY.

            \n
          • \n
          • \n

            For CUSTOM_AUTH: USERNAME (required),\n SECRET_HASH (if app client is configured with client secret),\n DEVICE_KEY. To start the authentication flow with password\n verification, include ChallengeName: SRP_A and SRP_A: (The\n SRP_A Value).

            \n
          • \n
          \n

          For more information about SECRET_HASH, see Computing secret hash values. For information about\n DEVICE_KEY, see Working with user devices in your user pool.

          " + "smithy.api#documentation": "

          The authentication parameters. These are inputs corresponding to the\n AuthFlow that you're invoking. The required values depend on the value\n of AuthFlow:

          \n
            \n
          • \n

            For USER_AUTH: USERNAME (required),\n PREFERRED_CHALLENGE. If you don't provide a value for\n PREFERRED_CHALLENGE, Amazon Cognito responds with the\n AvailableChallenges parameter that specifies the available\n sign-in methods.

            \n
          • \n
          • \n

            For USER_SRP_AUTH: USERNAME (required),\n SRP_A (required), SECRET_HASH (required if the app\n client is configured with a client secret), DEVICE_KEY.

            \n
          • \n
          • \n

            For USER_PASSWORD_AUTH: USERNAME (required),\n PASSWORD (required), SECRET_HASH (required if the\n app client is configured with a client secret), DEVICE_KEY.

            \n
          • \n
          • \n

            For REFRESH_TOKEN_AUTH/REFRESH_TOKEN: REFRESH_TOKEN\n (required), SECRET_HASH (required if the app client is configured\n with a client secret), DEVICE_KEY.

            \n
          • \n
          • \n

            For CUSTOM_AUTH: USERNAME (required),\n SECRET_HASH (if app client is configured with client secret),\n DEVICE_KEY. To start the authentication flow with password\n verification, include ChallengeName: SRP_A and SRP_A: (The\n SRP_A Value).

            \n
          • \n
          \n

          For more information about SECRET_HASH, see Computing secret hash values. For information about\n DEVICE_KEY, see Working with user devices in your user pool.

          " } }, "ClientMetadata": { "target": "com.amazonaws.cognitoidentityprovider#ClientMetadataType", "traits": { - "smithy.api#documentation": "

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

          \n

          You create custom workflows by assigning Lambda functions to user pool triggers.\n When you use the InitiateAuth API action, Amazon Cognito invokes the Lambda functions that are\n specified for various triggers. The ClientMetadata value is passed as input to the\n functions for only the following triggers:

          \n
            \n
          • \n

            Pre signup

            \n
          • \n
          • \n

            Pre authentication

            \n
          • \n
          • \n

            User migration

            \n
          • \n
          \n

          When Amazon Cognito invokes the functions for these triggers, it passes a JSON payload, which\n the function receives as input. This payload contains a validationData\n attribute, which provides the data that you assigned to the ClientMetadata parameter in\n your InitiateAuth request. In your function code in Lambda, you can process the\n validationData value to enhance your workflow for your specific\n needs.

          \n

          When you use the InitiateAuth API action, Amazon Cognito also invokes the functions for the\n following triggers, but it doesn't provide the ClientMetadata value as input:

          \n
            \n
          • \n

            Post authentication

            \n
          • \n
          • \n

            Custom message

            \n
          • \n
          • \n

            Pre token generation

            \n
          • \n
          • \n

            Create auth challenge

            \n
          • \n
          • \n

            Define auth challenge

            \n
          • \n
          \n

          For more information, see \nCustomizing user pool Workflows with Lambda Triggers in the Amazon Cognito Developer Guide.

          \n \n

          When you use the ClientMetadata parameter, remember that Amazon Cognito won't do the\n following:

          \n
            \n
          • \n

            Store the ClientMetadata value. This data is available only to Lambda\n triggers that are assigned to a user pool to support custom workflows. If\n your user pool configuration doesn't include triggers, the ClientMetadata\n parameter serves no purpose.

            \n
          • \n
          • \n

            Validate the ClientMetadata value.

            \n
          • \n
          • \n

            Encrypt the ClientMetadata value. Don't use Amazon Cognito to provide sensitive\n information.

            \n
          • \n
          \n
          " + "smithy.api#documentation": "

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

          \n

          You create custom workflows by assigning Lambda functions to user pool triggers.\n When you use the InitiateAuth API action, Amazon Cognito invokes the Lambda functions that are\n specified for various triggers. The ClientMetadata value is passed as input to the\n functions for only the following triggers:

          \n
            \n
          • \n

            Pre signup

            \n
          • \n
          • \n

            Pre authentication

            \n
          • \n
          • \n

            User migration

            \n
          • \n
          \n

          When Amazon Cognito invokes the functions for these triggers, it passes a JSON payload, which\n the function receives as input. This payload contains a validationData\n attribute, which provides the data that you assigned to the ClientMetadata parameter in\n your InitiateAuth request. In your function code in Lambda, you can process the\n validationData value to enhance your workflow for your specific\n needs.

          \n

          When you use the InitiateAuth API action, Amazon Cognito also invokes the functions for the\n following triggers, but it doesn't provide the ClientMetadata value as input:

          \n
            \n
          • \n

            Post authentication

            \n
          • \n
          • \n

            Custom message

            \n
          • \n
          • \n

            Pre token generation

            \n
          • \n
          • \n

            Create auth challenge

            \n
          • \n
          • \n

            Define auth challenge

            \n
          • \n
          • \n

            Custom email sender

            \n
          • \n
          • \n

            Custom SMS sender

            \n
          • \n
          \n

          For more information, see \nCustomizing user pool Workflows with Lambda Triggers in the Amazon Cognito Developer Guide.

          \n \n

          When you use the ClientMetadata parameter, remember that Amazon Cognito won't do the\n following:

          \n
            \n
          • \n

            Store the ClientMetadata value. This data is available only to Lambda\n triggers that are assigned to a user pool to support custom workflows. If\n your user pool configuration doesn't include triggers, the ClientMetadata\n parameter serves no purpose.

            \n
          • \n
          • \n

            Validate the ClientMetadata value.

            \n
          • \n
          • \n

            Encrypt the ClientMetadata value. Don't use Amazon Cognito to provide sensitive\n information.

            \n
          • \n
          \n
          " } }, "ClientId": { @@ -9817,6 +10769,12 @@ "traits": { "smithy.api#documentation": "

          Contextual data about your user session, such as the device fingerprint, IP address, or location. Amazon Cognito advanced \nsecurity evaluates the risk of an authentication event based on the context that your app generates and passes to Amazon Cognito\nwhen it makes API requests.

          " } + }, + "Session": { + "target": "com.amazonaws.cognitoidentityprovider#SessionType", + "traits": { + "smithy.api#documentation": "

          The optional session ID from a ConfirmSignUp API request. You can sign in\n a user directly from the sign-up process with the USER_AUTH authentication\n flow.

          " + } } }, "traits": { @@ -9830,19 +10788,19 @@ "ChallengeName": { "target": "com.amazonaws.cognitoidentityprovider#ChallengeNameType", "traits": { - "smithy.api#documentation": "

          The name of the challenge that you're responding to with this call. This name is\n returned in the InitiateAuth response if you must pass another\n challenge.

          \n

          Valid values include the following:

          \n \n

          All of the following challenges require USERNAME and\n SECRET_HASH (if applicable) in the parameters.

          \n
          \n
            \n
          • \n

            \n SMS_MFA: Next challenge is to supply an\n SMS_MFA_CODEthat your user pool delivered\n in an SMS message.

            \n
          • \n
          • \n

            \n EMAIL_OTP: Next challenge is to supply an\n EMAIL_OTP_CODE that your user pool delivered \n in an email message.

            \n
          • \n
          • \n

            \n PASSWORD_VERIFIER: Next challenge is to supply\n PASSWORD_CLAIM_SIGNATURE,\n PASSWORD_CLAIM_SECRET_BLOCK, and TIMESTAMP after\n the client-side SRP calculations.

            \n
          • \n
          • \n

            \n CUSTOM_CHALLENGE: This is returned if your custom authentication\n flow determines that the user should pass another challenge before tokens are\n issued.

            \n
          • \n
          • \n

            \n DEVICE_SRP_AUTH: If device tracking was activated on your user\n pool and the previous challenges were passed, this challenge is returned so that\n Amazon Cognito can start tracking this device.

            \n
          • \n
          • \n

            \n DEVICE_PASSWORD_VERIFIER: Similar to\n PASSWORD_VERIFIER, but for devices only.

            \n
          • \n
          • \n

            \n NEW_PASSWORD_REQUIRED: For users who are required to change their\n passwords after successful first login.

            \n

            Respond to this challenge with NEW_PASSWORD and any required\n attributes that Amazon Cognito returned in the requiredAttributes parameter.\n You can also set values for attributes that aren't required by your user pool\n and that your app client can write. For more information, see RespondToAuthChallenge.

            \n \n

            In a NEW_PASSWORD_REQUIRED challenge response, you can't modify a required attribute that already has a value. \nIn RespondToAuthChallenge, set a value for any keys that Amazon Cognito returned in the requiredAttributes parameter, \nthen use the UpdateUserAttributes API operation to modify the value of any additional attributes.

            \n
            \n
          • \n
          • \n

            \n MFA_SETUP: For users who are required to setup an MFA factor\n before they can sign in. The MFA types activated for the user pool will be\n listed in the challenge parameters MFAS_CAN_SETUP value.

            \n

            To set up software token MFA, use the session returned here from\n InitiateAuth as an input to\n AssociateSoftwareToken. Use the session returned by\n VerifySoftwareToken as an input to\n RespondToAuthChallenge with challenge name\n MFA_SETUP to complete sign-in. To set up SMS MFA, an\n administrator should help the user to add a phone number to their account, and\n then the user should call InitiateAuth again to restart\n sign-in.

            \n
          • \n
          " + "smithy.api#documentation": "

          The name of the challenge that you're responding to with this call. This name is\n returned in the InitiateAuth response if you must pass another\n challenge.

          \n

          Valid values include the following:

          \n \n

          All of the following challenges require USERNAME and\n SECRET_HASH (if applicable) in the parameters.

          \n
          \n
            \n
          • \n

            \n WEB_AUTHN: Respond to the challenge with the results of a\n successful authentication with a passkey, or webauthN, factor. These are\n typically biometric devices or security keys.

            \n
          • \n
          • \n

            \n PASSWORD: Respond with USER_PASSWORD_AUTH\n parameters: USERNAME (required), PASSWORD (required),\n SECRET_HASH (required if the app client is configured with a\n client secret), DEVICE_KEY.

            \n
          • \n
          • \n

            \n PASSWORD_SRP: Respond with USER_SRP_AUTH parameters:\n USERNAME (required), SRP_A (required),\n SECRET_HASH (required if the app client is configured with a\n client secret), DEVICE_KEY.

            \n
          • \n
          • \n

            \n SELECT_CHALLENGE: Respond to the challenge with\n USERNAME and an ANSWER that matches one of the\n challenge types in the AvailableChallenges response\n parameter.

            \n
          • \n
          • \n

            \n SMS_MFA: Next challenge is to supply an\n SMS_MFA_CODEthat your user pool delivered in an SMS message.

            \n
          • \n
          • \n

            \n EMAIL_OTP: Next challenge is to supply an\n EMAIL_OTP_CODE that your user pool delivered in an email\n message.

            \n
          • \n
          • \n

            \n PASSWORD_VERIFIER: Next challenge is to supply\n PASSWORD_CLAIM_SIGNATURE,\n PASSWORD_CLAIM_SECRET_BLOCK, and TIMESTAMP after\n the client-side SRP calculations.

            \n
          • \n
          • \n

            \n CUSTOM_CHALLENGE: This is returned if your custom authentication\n flow determines that the user should pass another challenge before tokens are\n issued.

            \n
          • \n
          • \n

            \n DEVICE_SRP_AUTH: If device tracking was activated on your user\n pool and the previous challenges were passed, this challenge is returned so that\n Amazon Cognito can start tracking this device.

            \n
          • \n
          • \n

            \n DEVICE_PASSWORD_VERIFIER: Similar to\n PASSWORD_VERIFIER, but for devices only.

            \n
          • \n
          • \n

            \n NEW_PASSWORD_REQUIRED: For users who are required to change their\n passwords after successful first login.

            \n

            Respond to this challenge with NEW_PASSWORD and any required\n attributes that Amazon Cognito returned in the requiredAttributes parameter.\n You can also set values for attributes that aren't required by your user pool\n and that your app client can write. For more information, see RespondToAuthChallenge.

            \n

            Amazon Cognito only returns this challenge for users who have temporary passwords.\n Because of this, and because in some cases you can create users who don't have\n values for required attributes, take care to collect and submit\n required-attribute values for all users who don't have passwords. You can create\n a user in the Amazon Cognito console without, for example, a required\n birthdate attribute. The API response from Amazon Cognito won't prompt\n you to submit a birthdate for the user if they don't have a password.

            \n \n

            In a NEW_PASSWORD_REQUIRED challenge response, you can't modify a required attribute that already has a value. \nIn RespondToAuthChallenge, set a value for any keys that Amazon Cognito returned in the requiredAttributes parameter, \nthen use the UpdateUserAttributes API operation to modify the value of any additional attributes.

            \n
            \n
          • \n
          • \n

            \n MFA_SETUP: For users who are required to setup an MFA factor\n before they can sign in. The MFA types activated for the user pool will be\n listed in the challenge parameters MFAS_CAN_SETUP value.

            \n

            To set up software token MFA, use the session returned here from\n InitiateAuth as an input to\n AssociateSoftwareToken. Use the session returned by\n VerifySoftwareToken as an input to\n RespondToAuthChallenge with challenge name\n MFA_SETUP to complete sign-in. To set up SMS MFA, an\n administrator should help the user to add a phone number to their account, and\n then the user should call InitiateAuth again to restart\n sign-in.

            \n
          • \n
          " } }, "Session": { "target": "com.amazonaws.cognitoidentityprovider#SessionType", "traits": { - "smithy.api#documentation": "

          The session that should pass both ways in challenge-response calls to the service. If\n the caller must pass another challenge, they return a session with other challenge\n parameters. This session should be passed as it is to the next\n RespondToAuthChallenge API call.

          " + "smithy.api#documentation": "

          The session that should pass both ways in challenge-response calls to the service. If\n the caller must pass another challenge, they return a session with other challenge\n parameters. Include this session identifier in a RespondToAuthChallenge API\n request.

          " } }, "ChallengeParameters": { "target": "com.amazonaws.cognitoidentityprovider#ChallengeParametersType", "traits": { - "smithy.api#documentation": "

          The challenge parameters. These are returned in the InitiateAuth response\n if you must pass another challenge. The responses in this parameter should be used to\n compute inputs to the next call (RespondToAuthChallenge).

          \n

          All challenges require USERNAME and SECRET_HASH (if\n applicable).

          " + "smithy.api#documentation": "

          The challenge parameters. These are returned in the InitiateAuth response\n if you must pass another challenge. The responses in this parameter should be used to\n compute inputs to the next call (RespondToAuthChallenge).

          \n

          All challenges require USERNAME. They also require\n SECRET_HASH if your app client has a client secret.

          " } }, "AuthenticationResult": { @@ -9850,6 +10808,12 @@ "traits": { "smithy.api#documentation": "

          The result of the authentication response. This result is only returned if the caller\n doesn't need to pass another challenge. If the caller does need to pass another\n challenge before it gets tokens, ChallengeName,\n ChallengeParameters, and Session are returned.

          " } + }, + "AvailableChallenges": { + "target": "com.amazonaws.cognitoidentityprovider#AvailableChallengeListType", + "traits": { + "smithy.api#documentation": "

          This response parameter prompts a user to select from multiple available challenges\n that they can complete authentication with. For example, they might be able to continue\n with passwordless authentication or with a one-time password from an SMS message.

          " + } } }, "traits": { @@ -9931,6 +10895,12 @@ "traits": { "smithy.api#documentation": "

          The message returned when the Amazon Cognito service throws an invalid parameter\n exception.

          " } + }, + "reasonCode": { + "target": "com.amazonaws.cognitoidentityprovider#InvalidParameterExceptionReasonCodeType", + "traits": { + "smithy.api#documentation": "

          The reason code of the exception.

          " + } } }, "traits": { @@ -9939,6 +10909,9 @@ "smithy.api#httpError": 400 } }, + "com.amazonaws.cognitoidentityprovider#InvalidParameterExceptionReasonCodeType": { + "type": "string" + }, "com.amazonaws.cognitoidentityprovider#InvalidPasswordException": { "type": "structure", "members": { @@ -9982,7 +10955,7 @@ } }, "traits": { - "smithy.api#documentation": "

          This exception is thrown when the trust relationship is not valid for the role\n provided for SMS configuration. This can happen if you don't trust\n cognito-idp.amazonaws.com or the external ID provided in the role does\n not match what is provided in the SMS configuration for the user pool.

          ", + "smithy.api#documentation": "

          This exception is thrown when the trust relationship is not valid for the role\n provided for SMS configuration. This can happen if you don't trust\n cognito-idp.amazonaws.com or the external ID provided in the role does\n not match what is provided in the SMS configuration for the user pool.

          ", "smithy.api#error": "client", "smithy.api#httpError": 400 } @@ -10009,90 +10982,90 @@ "PreSignUp": { "target": "com.amazonaws.cognitoidentityprovider#ArnType", "traits": { - "smithy.api#documentation": "

          A pre-registration Lambda trigger.

          " + "smithy.api#documentation": "

          The configuration of a pre sign-up Lambda trigger in a user pool. This trigger\n evaluates new users and can bypass confirmation, link a federated user profile, or block sign-up\n requests.

          " } }, "CustomMessage": { "target": "com.amazonaws.cognitoidentityprovider#ArnType", "traits": { - "smithy.api#documentation": "

          A custom Message Lambda trigger.

          " + "smithy.api#documentation": "

          A custom message Lambda trigger. This trigger is an opportunity to customize all SMS\n and email messages from your user pool. When a custom message trigger is active, your\n user pool routes all messages to a Lambda function that returns a runtime-customized\n message subject and body for your user pool to deliver to a user.

          " } }, "PostConfirmation": { "target": "com.amazonaws.cognitoidentityprovider#ArnType", "traits": { - "smithy.api#documentation": "

          A post-confirmation Lambda trigger.

          " + "smithy.api#documentation": "

          The configuration of a post confirmation Lambda trigger in a user pool. This\n trigger can take custom actions after a user confirms their user account and their email\n address or phone number.

          " } }, "PreAuthentication": { "target": "com.amazonaws.cognitoidentityprovider#ArnType", "traits": { - "smithy.api#documentation": "

          A pre-authentication Lambda trigger.

          " + "smithy.api#documentation": "

          The configuration of a pre authentication trigger in a user pool. This trigger\n can evaluate and modify user sign-in events.

          " } }, "PostAuthentication": { "target": "com.amazonaws.cognitoidentityprovider#ArnType", "traits": { - "smithy.api#documentation": "

          A post-authentication Lambda trigger.

          " + "smithy.api#documentation": "

          The configuration of a post authentication Lambda trigger in a user pool. This\n trigger can take custom actions after a user signs in.

          " } }, "DefineAuthChallenge": { "target": "com.amazonaws.cognitoidentityprovider#ArnType", "traits": { - "smithy.api#documentation": "

          Defines the authentication challenge.

          " + "smithy.api#documentation": "

          The configuration of a define auth challenge Lambda trigger, one of three triggers in\n the sequence of the custom authentication challenge triggers.

          " } }, "CreateAuthChallenge": { "target": "com.amazonaws.cognitoidentityprovider#ArnType", "traits": { - "smithy.api#documentation": "

          Creates an authentication challenge.

          " + "smithy.api#documentation": "

          The configuration of a create auth challenge Lambda trigger, one of three triggers in\n the sequence of the custom authentication challenge triggers.

          " } }, "VerifyAuthChallengeResponse": { "target": "com.amazonaws.cognitoidentityprovider#ArnType", "traits": { - "smithy.api#documentation": "

          Verifies the authentication challenge response.

          " + "smithy.api#documentation": "

          The configuration of a verify auth challenge Lambda trigger, one of three triggers in\n the sequence of the custom authentication challenge triggers.

          " } }, "PreTokenGeneration": { "target": "com.amazonaws.cognitoidentityprovider#ArnType", "traits": { - "smithy.api#documentation": "

          The Amazon Resource Name (ARN) of the function that you want to assign to your Lambda trigger.

          \n

          Set this parameter for legacy purposes. If you also set an ARN in\n PreTokenGenerationConfig, its value must be identical to\n PreTokenGeneration. For new instances of pre token generation triggers,\n set the LambdaArn of PreTokenGenerationConfig.

          \n

          You can set \n

          " + "smithy.api#documentation": "

          The legacy configuration of a pre token generation Lambda trigger in a user\n pool.

          \n

          Set this parameter for legacy purposes. If you also set an ARN in\n PreTokenGenerationConfig, its value must be identical to\n PreTokenGeneration. For new instances of pre token generation triggers,\n set the LambdaArn of PreTokenGenerationConfig.

          " } }, "UserMigration": { "target": "com.amazonaws.cognitoidentityprovider#ArnType", "traits": { - "smithy.api#documentation": "

          The user migration Lambda config type.

          " + "smithy.api#documentation": "

          The configuration of a migrate user Lambda trigger in a user pool. This trigger\n can create user profiles when users sign in or attempt to reset their password with\n credentials that don't exist yet.

          " } }, "PreTokenGenerationConfig": { "target": "com.amazonaws.cognitoidentityprovider#PreTokenGenerationVersionConfigType", "traits": { - "smithy.api#documentation": "

          The detailed configuration of a pre token generation trigger. If you also set an ARN\n in PreTokenGeneration, its value must be identical to\n PreTokenGenerationConfig.

          " + "smithy.api#documentation": "

          The detailed configuration of a pre token generation Lambda trigger in a user pool. If\n you also set an ARN in PreTokenGeneration, its value must be identical to\n PreTokenGenerationConfig.

          " } }, "CustomSMSSender": { "target": "com.amazonaws.cognitoidentityprovider#CustomSMSLambdaVersionConfigType", "traits": { - "smithy.api#documentation": "

          A custom SMS sender Lambda trigger.

          " + "smithy.api#documentation": "

          The configuration of a custom SMS sender Lambda trigger. This trigger routes all SMS\n notifications from a user pool to a Lambda function that delivers the message using\n custom logic.

          " } }, "CustomEmailSender": { "target": "com.amazonaws.cognitoidentityprovider#CustomEmailLambdaVersionConfigType", "traits": { - "smithy.api#documentation": "

          A custom email sender Lambda trigger.

          " + "smithy.api#documentation": "

          The configuration of a custom email sender Lambda trigger. This trigger routes all\n email notifications from a user pool to a Lambda function that delivers the message using\n custom logic.

          " } }, "KMSKeyID": { "target": "com.amazonaws.cognitoidentityprovider#ArnType", "traits": { - "smithy.api#documentation": "

          The Amazon Resource Name (ARN) of an KMS key. Amazon Cognito\n uses the key to encrypt codes and temporary passwords sent to\n CustomEmailSender and CustomSMSSender.

          " + "smithy.api#documentation": "

          The ARN of an KMS key. Amazon Cognito uses the key to encrypt codes and temporary passwords sent to\n custom sender Lambda triggers.

          " } } }, "traits": { - "smithy.api#documentation": "

          Specifies the configuration for Lambda triggers.

          " + "smithy.api#documentation": "

          A collection of user pool Lambda triggers. Amazon Cognito invokes triggers at several possible\n stages of user pool operations. Triggers can modify the outcome of the operations that\n invoked them.

          \n

          This data type is a request and response parameter of CreateUserPool and UpdateUserPool, and a response parameter of DescribeUserPool.

          " } }, "com.amazonaws.cognitoidentityprovider#LimitExceededException": { @@ -11013,7 +11986,7 @@ "Filter": { "target": "com.amazonaws.cognitoidentityprovider#UserFilterType", "traits": { - "smithy.api#documentation": "

          A filter string of the form \"AttributeName\n Filter-Type \"AttributeValue\"\". Quotation marks\n within the filter string must be escaped using the backslash (\\) character.\n For example, \"family_name = \\\"Reddy\\\"\".

          \n
            \n
          • \n

            \n AttributeName: The name of the attribute to search for.\n You can only search for one attribute at a time.

            \n
          • \n
          • \n

            \n Filter-Type: For an exact match, use =, for\n example, \"given_name = \\\"Jon\\\"\". For a prefix (\"starts with\")\n match, use ^=, for example, \"given_name ^= \\\"Jon\\\"\".\n

            \n
          • \n
          • \n

            \n AttributeValue: The attribute value that must be matched\n for each user.

            \n
          • \n
          \n

          If the filter string is empty, ListUsers returns all users in the user\n pool.

          \n

          You can only search for the following standard attributes:

          \n
            \n
          • \n

            \n username (case-sensitive)

            \n
          • \n
          • \n

            \n email\n

            \n
          • \n
          • \n

            \n phone_number\n

            \n
          • \n
          • \n

            \n name\n

            \n
          • \n
          • \n

            \n given_name\n

            \n
          • \n
          • \n

            \n family_name\n

            \n
          • \n
          • \n

            \n preferred_username\n

            \n
          • \n
          • \n

            \n cognito:user_status (called Status in the Console) (case-insensitive)

            \n
          • \n
          • \n

            \n status (called Enabled in the Console)\n (case-sensitive)\n

            \n
          • \n
          • \n

            \n sub\n

            \n
          • \n
          \n

          Custom attributes aren't searchable.

          \n \n

          You can also list users with a client-side filter. The server-side filter matches\n no more than one attribute. For an advanced search, use a client-side filter with\n the --query parameter of the list-users action in the\n CLI. When you use a client-side filter, ListUsers returns a paginated list of zero\n or more users. You can receive multiple pages in a row with zero results. Repeat the\n query with each pagination token that is returned until you receive a null\n pagination token value, and then review the combined result.

          \n

          For more information about server-side and client-side filtering, see FilteringCLI output in the Command Line Interface\n User Guide.

          \n
          \n

          For more information, see Searching for Users Using the ListUsers API and Examples of Using the ListUsers API in the Amazon Cognito Developer\n Guide.

          " + "smithy.api#documentation": "

          A filter string of the form \"AttributeName Filter-Type \"AttributeValue\".\n Quotation marks within the filter string must be escaped using the backslash\n (\\) character. For example, \"family_name =\n \\\"Reddy\\\"\".

          \n
            \n
          • \n

            \n AttributeName: The name of the attribute to search for.\n You can only search for one attribute at a time.

            \n
          • \n
          • \n

            \n Filter-Type: For an exact match, use =, for\n example, \"given_name = \\\"Jon\\\"\". For a prefix (\"starts with\")\n match, use ^=, for example, \"given_name ^= \\\"Jon\\\"\".\n

            \n
          • \n
          • \n

            \n AttributeValue: The attribute value that must be matched\n for each user.

            \n
          • \n
          \n

          If the filter string is empty, ListUsers returns all users in the user\n pool.

          \n

          You can only search for the following standard attributes:

          \n
            \n
          • \n

            \n username (case-sensitive)

            \n
          • \n
          • \n

            \n email\n

            \n
          • \n
          • \n

            \n phone_number\n

            \n
          • \n
          • \n

            \n name\n

            \n
          • \n
          • \n

            \n given_name\n

            \n
          • \n
          • \n

            \n family_name\n

            \n
          • \n
          • \n

            \n preferred_username\n

            \n
          • \n
          • \n

            \n cognito:user_status (called Status in the Console) (case-insensitive)

            \n
          • \n
          • \n

            \n status (called Enabled in the Console)\n (case-sensitive)\n

            \n
          • \n
          • \n

            \n sub\n

            \n
          • \n
          \n

          Custom attributes aren't searchable.

          \n \n

          You can also list users with a client-side filter. The server-side filter matches\n no more than one attribute. For an advanced search, use a client-side filter with\n the --query parameter of the list-users action in the\n CLI. When you use a client-side filter, ListUsers returns a paginated list of zero\n or more users. You can receive multiple pages in a row with zero results. Repeat the\n query with each pagination token that is returned until you receive a null\n pagination token value, and then review the combined result.

          \n

          For more information about server-side and client-side filtering, see FilteringCLI output in the Command Line Interface\n User Guide.

          \n
          \n

          For more information, see Searching for Users Using the ListUsers API and Examples of Using the ListUsers API in the Amazon Cognito Developer\n Guide.

          " } } }, @@ -11043,6 +12016,82 @@ "smithy.api#output": {} } }, + "com.amazonaws.cognitoidentityprovider#ListWebAuthnCredentials": { + "type": "operation", + "input": { + "target": "com.amazonaws.cognitoidentityprovider#ListWebAuthnCredentialsRequest" + }, + "output": { + "target": "com.amazonaws.cognitoidentityprovider#ListWebAuthnCredentialsResponse" + }, + "errors": [ + { + "target": "com.amazonaws.cognitoidentityprovider#ForbiddenException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#InternalErrorException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#InvalidParameterException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#NotAuthorizedException" + } + ], + "traits": { + "smithy.api#auth": [], + "smithy.api#documentation": "

          Generates a list of the current user's registered passkey, or webauthN,\n credentials.

          ", + "smithy.api#optionalAuth": {} + } + }, + "com.amazonaws.cognitoidentityprovider#ListWebAuthnCredentialsRequest": { + "type": "structure", + "members": { + "AccessToken": { + "target": "com.amazonaws.cognitoidentityprovider#TokenModelType", + "traits": { + "smithy.api#documentation": "

          A valid access token that Amazon Cognito issued to the user whose registered passkeys you want\n to list.

          ", + "smithy.api#required": {} + } + }, + "NextToken": { + "target": "com.amazonaws.cognitoidentityprovider#PaginationKey", + "traits": { + "smithy.api#documentation": "

          An identifier that was returned from the previous call to this operation, which can be\n used to return the next set of items in the list.

          " + } + }, + "MaxResults": { + "target": "com.amazonaws.cognitoidentityprovider#WebAuthnCredentialsQueryLimitType", + "traits": { + "smithy.api#documentation": "

          The maximum number of the user's passkey credentials that you want to\n return.

          " + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.cognitoidentityprovider#ListWebAuthnCredentialsResponse": { + "type": "structure", + "members": { + "Credentials": { + "target": "com.amazonaws.cognitoidentityprovider#WebAuthnCredentialDescriptionListType", + "traits": { + "smithy.api#documentation": "

          A list of registered passkeys for a user.

          ", + "smithy.api#required": {} + } + }, + "NextToken": { + "target": "com.amazonaws.cognitoidentityprovider#PaginationKey", + "traits": { + "smithy.api#documentation": "

          An identifier that you can use in a later request to return the next set of items in\n the list.

          " + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.cognitoidentityprovider#LogConfigurationListType": { "type": "list", "member": { @@ -11092,7 +12141,7 @@ } }, "traits": { - "smithy.api#documentation": "

          The logging parameters of a user pool.

          " + "smithy.api#documentation": "

          The configuration of user event logs to an external Amazon Web Services service like\n Amazon Data Firehose, Amazon S3, or Amazon CloudWatch Logs.

          \n

          This data type is a request parameter of SetLogDeliveryConfiguration and a response parameter of\n GetLogDeliveryConfiguration.

          " } }, "com.amazonaws.cognitoidentityprovider#LogDeliveryConfigurationType": { @@ -11114,7 +12163,7 @@ } }, "traits": { - "smithy.api#documentation": "

          The logging parameters of a user pool returned in response to\n GetLogDeliveryConfiguration.

          " + "smithy.api#documentation": "

          The logging parameters of a user pool, as returned in the response to a GetLogDeliveryConfiguration request.

          " } }, "com.amazonaws.cognitoidentityprovider#LogLevel": { @@ -11194,6 +12243,76 @@ "smithy.api#documentation": "

          \n This data type is no longer supported. Applies only to SMS\n multi-factor authentication (MFA) configurations. Does not apply to time-based one-time\n password (TOTP) software token MFA configurations.

          " } }, + "com.amazonaws.cognitoidentityprovider#ManagedLoginBrandingExistsException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.cognitoidentityprovider#MessageType" + } + }, + "traits": { + "smithy.api#documentation": "

          This exception is thrown when you attempt to apply a managed login branding style to\n an app client that already has an assigned style.

          ", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, + "com.amazonaws.cognitoidentityprovider#ManagedLoginBrandingIdType": { + "type": "string", + "traits": { + "smithy.api#pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[4][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}$" + } + }, + "com.amazonaws.cognitoidentityprovider#ManagedLoginBrandingType": { + "type": "structure", + "members": { + "ManagedLoginBrandingId": { + "target": "com.amazonaws.cognitoidentityprovider#ManagedLoginBrandingIdType", + "traits": { + "smithy.api#documentation": "

          The ID of the managed login branding style.

          " + } + }, + "UserPoolId": { + "target": "com.amazonaws.cognitoidentityprovider#UserPoolIdType", + "traits": { + "smithy.api#documentation": "

          The user pool where the branding style is assigned.

          " + } + }, + "UseCognitoProvidedValues": { + "target": "com.amazonaws.cognitoidentityprovider#BooleanType", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

          When true, applies the default branding style options. This option reverts to a\n \"blank\" style that you can modify later in the branding designer.

          " + } + }, + "Settings": { + "target": "com.amazonaws.cognitoidentityprovider#Document", + "traits": { + "smithy.api#documentation": "

          A JSON file, encoded as a Document type, with the the settings that you\n want to apply to your style.

          " + } + }, + "Assets": { + "target": "com.amazonaws.cognitoidentityprovider#AssetListType", + "traits": { + "smithy.api#documentation": "

          An array of image files that you want to apply to roles like backgrounds, logos, and\n icons. Each object must also indicate whether it is for dark mode, light mode, or\n browser-adaptive mode.

          " + } + }, + "CreationDate": { + "target": "com.amazonaws.cognitoidentityprovider#DateType", + "traits": { + "smithy.api#documentation": "

          The date and time when the item was created. Amazon Cognito returns this timestamp in UNIX epoch time format. Your SDK might render the output in a \nhuman-readable format like ISO 8601 or a Java Date object.

          " + } + }, + "LastModifiedDate": { + "target": "com.amazonaws.cognitoidentityprovider#DateType", + "traits": { + "smithy.api#documentation": "

          The date and time when the item was modified. Amazon Cognito returns this timestamp in UNIX epoch time format. Your SDK might render the output in a \nhuman-readable format like ISO 8601 or a Java Date object.

          " + } + } + }, + "traits": { + "smithy.api#documentation": "

          A managed login branding style that's assigned to a user pool app client.

          \n

          This data type is a response parameter of CreateManagedLoginBranding, UpdateManagedLoginBranding, DescribeManagedLoginBranding, and DescribeManagedLoginBrandingByClient.

          " + } + }, "com.amazonaws.cognitoidentityprovider#MessageActionType": { "type": "enum", "members": { @@ -11215,13 +12334,13 @@ "type": "structure", "members": { "SMSMessage": { - "target": "com.amazonaws.cognitoidentityprovider#SmsVerificationMessageType", + "target": "com.amazonaws.cognitoidentityprovider#SmsInviteMessageType", "traits": { "smithy.api#documentation": "

          The message template for SMS messages.

          " } }, "EmailMessage": { - "target": "com.amazonaws.cognitoidentityprovider#EmailVerificationMessageType", + "target": "com.amazonaws.cognitoidentityprovider#EmailInviteMessageType", "traits": { "smithy.api#documentation": "

          The message template for email messages. EmailMessage is allowed only if EmailSendingAccount is DEVELOPER.

          " } @@ -11246,18 +12365,18 @@ "DeviceKey": { "target": "com.amazonaws.cognitoidentityprovider#DeviceKeyType", "traits": { - "smithy.api#documentation": "

          The device key.

          " + "smithy.api#documentation": "

          The device key, an identifier used in generating the\n DEVICE_PASSWORD_VERIFIER for device SRP authentication.

          " } }, "DeviceGroupKey": { "target": "com.amazonaws.cognitoidentityprovider#StringType", "traits": { - "smithy.api#documentation": "

          The device group key.

          " + "smithy.api#documentation": "

          The device group key, an identifier used in generating the\n DEVICE_PASSWORD_VERIFIER for device SRP authentication.

          " } } }, "traits": { - "smithy.api#documentation": "

          The new device metadata type.

          " + "smithy.api#documentation": "

          Information that your user pool responds with in AuthenticationResultwhen\n you configure it to remember devices and a user signs in with an unrecognized device.\n Amazon Cognito presents a new device key that you can use to set up device authentication in a \"Remember me on this device\"\n authentication model.

          \n

          This data type is a response parameter of authentication operations like InitiateAuth, AdminInitiateAuth, RespondToAuthChallenge, and AdminRespondToAuthChallenge.

          " } }, "com.amazonaws.cognitoidentityprovider#NotAuthorizedException": { @@ -11282,13 +12401,13 @@ "From": { "target": "com.amazonaws.cognitoidentityprovider#StringType", "traits": { - "smithy.api#documentation": "

          The email address that is sending the email. The address must be either individually\n verified with Amazon Simple Email Service, or from a domain that has been verified with Amazon SES.

          " + "smithy.api#documentation": "

          The email address that sends the email message. The address must be either\n individually verified with Amazon Simple Email Service, or from a domain that has been verified with\n Amazon SES.

          " } }, "ReplyTo": { "target": "com.amazonaws.cognitoidentityprovider#StringType", "traits": { - "smithy.api#documentation": "

          The destination to which the receiver of an email should reply to.

          " + "smithy.api#documentation": "

          The reply-to email address of an email template.

          " } }, "SourceArn": { @@ -11301,24 +12420,24 @@ "BlockEmail": { "target": "com.amazonaws.cognitoidentityprovider#NotifyEmailType", "traits": { - "smithy.api#documentation": "

          Email template used when a detected risk event is blocked.

          " + "smithy.api#documentation": "

          The template for the email message that your user pool sends when a detected risk\n event is blocked.

          " } }, "NoActionEmail": { "target": "com.amazonaws.cognitoidentityprovider#NotifyEmailType", "traits": { - "smithy.api#documentation": "

          The email template used when a detected risk event is allowed.

          " + "smithy.api#documentation": "

          The template for the email message that your user pool sends when no action is taken\n in response to a detected risk.

          " } }, "MfaEmail": { "target": "com.amazonaws.cognitoidentityprovider#NotifyEmailType", "traits": { - "smithy.api#documentation": "

          The multi-factor authentication (MFA) email template used when MFA is challenged as\n part of a detected risk.

          " + "smithy.api#documentation": "

          The template for the email message that your user pool sends when MFA is challenged in\n response to a detected risk.

          " } } }, "traits": { - "smithy.api#documentation": "

          The notify configuration type.

          " + "smithy.api#documentation": "

          The configuration for Amazon SES email messages that advanced security features sends to a\n user when your adaptive authentication automated response has a\n Notify action.

          \n

          This data type is a request parameter of SetRiskConfiguration and a response parameter of DescribeRiskConfiguration.

          " } }, "com.amazonaws.cognitoidentityprovider#NotifyEmailType": { @@ -11327,25 +12446,25 @@ "Subject": { "target": "com.amazonaws.cognitoidentityprovider#EmailNotificationSubjectType", "traits": { - "smithy.api#documentation": "

          The email subject.

          ", + "smithy.api#documentation": "

          The subject of the threat protection email notification.

          ", "smithy.api#required": {} } }, "HtmlBody": { "target": "com.amazonaws.cognitoidentityprovider#EmailNotificationBodyType", "traits": { - "smithy.api#documentation": "

          The email HTML body.

          " + "smithy.api#documentation": "

          The body of an email notification formatted in HTML. Choose an HtmlBody\n or a TextBody to send an HTML-formatted or plaintext message,\n respectively.

          " } }, "TextBody": { "target": "com.amazonaws.cognitoidentityprovider#EmailNotificationBodyType", "traits": { - "smithy.api#documentation": "

          The email text body.

          " + "smithy.api#documentation": "

          The body of an email notification formatted in plaintext. Choose an\n HtmlBody or a TextBody to send an HTML-formatted or\n plaintext message, respectively.

          " } } }, "traits": { - "smithy.api#documentation": "

          The notify email type.

          " + "smithy.api#documentation": "

          The template for email messages that advanced security features sends to a user when\n your threat protection automated response has a Notify\n action.

          \n

          This data type is a request parameter of SetRiskConfiguration and a response parameter of DescribeRiskConfiguration.

          " } }, "com.amazonaws.cognitoidentityprovider#NumberAttributeConstraintsType": { @@ -11365,7 +12484,7 @@ } }, "traits": { - "smithy.api#documentation": "

          The minimum and maximum values of an attribute that is of the number data type.

          " + "smithy.api#documentation": "

          The minimum and maximum values of an attribute that is of the number type, for example\n custom:age.

          \n

          This data type is part of SchemaAttributeType. It defines the length constraints\n on number-type attributes that you configure in CreateUserPool and UpdateUserPool, and displays the length constraints of\n all number-type attributes in the response to DescribeUserPool\n

          " } }, "com.amazonaws.cognitoidentityprovider#OAuthFlowType": { @@ -11430,7 +12549,7 @@ } }, "traits": { - "smithy.api#documentation": "

          The message returned when a user's new password matches a previous password and \n doesn't comply with the password-history policy.

          ", + "smithy.api#documentation": "

          The message returned when a user's new password matches a previous password and\n doesn't comply with the password-history policy.

          ", "smithy.api#error": "client", "smithy.api#httpError": 400 } @@ -11466,28 +12585,28 @@ "target": "com.amazonaws.cognitoidentityprovider#BooleanType", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

          In the password policy that you have set, refers to whether you have required users to\n use at least one uppercase letter in their password.

          " + "smithy.api#documentation": "

          The requirement in a password policy that users must include at least one uppercase\n letter in their password.

          " } }, "RequireLowercase": { "target": "com.amazonaws.cognitoidentityprovider#BooleanType", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

          In the password policy that you have set, refers to whether you have required users to\n use at least one lowercase letter in their password.

          " + "smithy.api#documentation": "

          The requirement in a password policy that users must include at least one lowercase\n letter in their password.

          " } }, "RequireNumbers": { "target": "com.amazonaws.cognitoidentityprovider#BooleanType", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

          In the password policy that you have set, refers to whether you have required users to\n use at least one number in their password.

          " + "smithy.api#documentation": "

          The requirement in a password policy that users must include at least one number in\n their password.

          " } }, "RequireSymbols": { "target": "com.amazonaws.cognitoidentityprovider#BooleanType", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

          In the password policy that you have set, refers to whether you have required users to\n use at least one symbol in their password.

          " + "smithy.api#documentation": "

          The requirement in a password policy that users must include at least one symbol in\n their password.

          " } }, "PasswordHistorySize": { @@ -11505,7 +12624,7 @@ } }, "traits": { - "smithy.api#documentation": "

          The password policy type.

          " + "smithy.api#documentation": "

          The password policy settings for a user pool, including complexity, history, and\n length requirements.

          \n

          This data type is a request and response parameter of CreateUserPool and UpdateUserPool, and a response parameter of DescribeUserPool.

          " } }, "com.amazonaws.cognitoidentityprovider#PasswordResetRequiredException": { @@ -11589,7 +12708,7 @@ } }, "traits": { - "smithy.api#documentation": "

          The properties of a pre token generation Lambda trigger.

          " + "smithy.api#documentation": "

          The properties of a pre token generation Lambda trigger.

          \n

          This data type is a request and response parameter of CreateUserPool and UpdateUserPool, and a response parameter of DescribeUserPool.

          " } }, "com.amazonaws.cognitoidentityprovider#PrecedenceType": { @@ -11648,19 +12767,19 @@ "ProviderName": { "target": "com.amazonaws.cognitoidentityprovider#ProviderNameType", "traits": { - "smithy.api#documentation": "

          The IdP name.

          " + "smithy.api#documentation": "

          The name of the IdP, for example MySAMLProvider.

          " } }, "ProviderType": { "target": "com.amazonaws.cognitoidentityprovider#IdentityProviderTypeType", "traits": { - "smithy.api#documentation": "

          The IdP type.

          " + "smithy.api#documentation": "

          The type of the provider, for example SAML. Amazon Cognito supports SAML 2.0,\n OIDC, and social IdPs. User pools list supported social IdPs by name in this response\n parameter: Facebook, Google, Login with Amazon, and Sign in with Apple.

          " } }, "LastModifiedDate": { "target": "com.amazonaws.cognitoidentityprovider#DateType", "traits": { - "smithy.api#documentation": "

          The date the provider was last modified.

          " + "smithy.api#documentation": "

          The date and time when the item was modified. Amazon Cognito returns this timestamp in UNIX epoch time format. Your SDK might render the output in a \nhuman-readable format like ISO 8601 or a Java Date object.

          " } }, "CreationDate": { @@ -11671,7 +12790,7 @@ } }, "traits": { - "smithy.api#documentation": "

          A container for IdP details.

          " + "smithy.api#documentation": "

          The details of a user pool identity provider (IdP), including name and type.

          \n

          This data type is a response parameter of ListIdentityProviders.

          " } }, "com.amazonaws.cognitoidentityprovider#ProviderDetailsType": { @@ -11726,7 +12845,7 @@ } }, "traits": { - "smithy.api#documentation": "

          A container for information about an IdP for a user pool.

          " + "smithy.api#documentation": "

          The characteristics of a source or destination user for linking a federated user\n profile to a local user profile.

          \n

          This data type is a request parameter of AdminLinkProviderForUser and AdminDisableProviderForUser.

          " } }, "com.amazonaws.cognitoidentityprovider#ProvidersListType": { @@ -11800,20 +12919,20 @@ "Priority": { "target": "com.amazonaws.cognitoidentityprovider#PriorityType", "traits": { - "smithy.api#documentation": "

          A positive integer specifying priority of a method with 1 being the highest\n priority.

          ", + "smithy.api#documentation": "

          Your priority preference for using the specified attribute in account recovery. The\n highest priority is 1.

          ", "smithy.api#required": {} } }, "Name": { "target": "com.amazonaws.cognitoidentityprovider#RecoveryOptionNameType", "traits": { - "smithy.api#documentation": "

          The recovery method for a user.

          ", + "smithy.api#documentation": "

          The recovery method that this object sets a recovery option for.

          ", "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

          A map containing a priority as a key, and recovery method name as a value.

          " + "smithy.api#documentation": "

          A recovery option for a user. The AccountRecoverySettingType data type is\n an array of this object. Each RecoveryOptionType has a priority property\n that determines whether it is a primary or secondary option.

          \n

          For example, if verified_email has a priority of 1 and\n verified_phone_number has a priority of 2, your user pool\n sends account-recovery messages to a verified email address but falls back to an SMS\n message if the user has a verified phone number. The admin_only option\n prevents self-service account recovery.

          \n

          This data type is a request and response parameter of CreateUserPool and UpdateUserPool, and a response parameter of DescribeUserPool.

          " } }, "com.amazonaws.cognitoidentityprovider#RedirectUrlType": { @@ -11845,6 +12964,15 @@ } } }, + "com.amazonaws.cognitoidentityprovider#RelyingPartyIdType": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 127 + } + } + }, "com.amazonaws.cognitoidentityprovider#ResendConfirmationCode": { "type": "operation", "input": { @@ -11902,7 +13030,7 @@ ], "traits": { "smithy.api#auth": [], - "smithy.api#documentation": "

          Resends the confirmation (for confirmation of registration) to a specific user in the\n user pool.

          \n \n

          Amazon Cognito doesn't evaluate Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you can't use IAM credentials to authorize requests, and you can't\n grant IAM permissions in policies. For more information about authorization models in\n Amazon Cognito, see Using the Amazon Cognito user pools API and user pool endpoints.

          \n
          \n \n

          This action might generate an SMS text message. Starting June 1, 2021, US telecom carriers\n require you to register an origination phone number before you can send SMS messages\n to US phone numbers. If you use SMS text messages in Amazon Cognito, you must register a\n phone number with Amazon Pinpoint.\n Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must\n receive SMS messages might not be able to sign up, activate their accounts, or sign\n in.

          \n

          If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Servicesservice,\n Amazon Simple Notification Service might place your account in the SMS sandbox. In \n sandbox\n mode\n , you can send messages only to verified phone\n numbers. After you test your app while in the sandbox environment, you can move out\n of the sandbox and into production. For more information, see SMS message settings for Amazon Cognito user pools in the Amazon Cognito\n Developer Guide.

          \n
          ", + "smithy.api#documentation": "

          Resends the confirmation (for confirmation of registration) to a specific user in the\n user pool.

          \n \n

          Amazon Cognito doesn't evaluate Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you can't use IAM credentials to authorize requests, and you can't\n grant IAM permissions in policies. For more information about authorization models in\n Amazon Cognito, see Using the Amazon Cognito user pools API and user pool endpoints.

          \n
          \n \n

          This action might generate an SMS text message. Starting June 1, 2021, US telecom carriers\n require you to register an origination phone number before you can send SMS messages\n to US phone numbers. If you use SMS text messages in Amazon Cognito, you must register a\n phone number with Amazon Pinpoint.\n Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must\n receive SMS messages might not be able to sign up, activate their accounts, or sign\n in.

          \n

          If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Services service,\n Amazon Simple Notification Service might place your account in the SMS sandbox. In \n sandbox\n mode\n , you can send messages only to verified phone\n numbers. After you test your app while in the sandbox environment, you can move out\n of the sandbox and into production. For more information, see SMS message settings for Amazon Cognito user pools in the Amazon Cognito\n Developer Guide.

          \n
          ", "smithy.api#optionalAuth": {} } }, @@ -11968,6 +13096,16 @@ "smithy.api#output": {} } }, + "com.amazonaws.cognitoidentityprovider#ResourceIdType": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 1, + "max": 40 + }, + "smithy.api#pattern": "^[\\w\\- ]+$" + } + }, "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException": { "type": "structure", "members": { @@ -12041,20 +13179,20 @@ "ScopeName": { "target": "com.amazonaws.cognitoidentityprovider#ResourceServerScopeNameType", "traits": { - "smithy.api#documentation": "

          The name of the scope.

          ", + "smithy.api#documentation": "

          The name of the scope. Amazon Cognito renders custom scopes in the format\n resourceServerIdentifier/ScopeName. For example, if this parameter is\n exampleScope in the resource server with the identifier\n exampleResourceServer, you request and receive the scope\n exampleResourceServer/exampleScope.

          ", "smithy.api#required": {} } }, "ScopeDescription": { "target": "com.amazonaws.cognitoidentityprovider#ResourceServerScopeDescriptionType", "traits": { - "smithy.api#documentation": "

          A description of the scope.

          ", + "smithy.api#documentation": "

          A friendly description of a custom scope.

          ", "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

          A resource server scope.

          " + "smithy.api#documentation": "

          One custom scope associated with a user pool resource server. This data type is a\n member of ResourceServerScopeType. For more information, see \n Scopes, M2M, and API authorization with resource servers.

          \n

          This data type is a request parameter of CreateResourceServer and a response parameter of DescribeResourceServer.

          " } }, "com.amazonaws.cognitoidentityprovider#ResourceServerType": { @@ -12063,7 +13201,7 @@ "UserPoolId": { "target": "com.amazonaws.cognitoidentityprovider#UserPoolIdType", "traits": { - "smithy.api#documentation": "

          The user pool ID for the user pool that hosts the resource server.

          " + "smithy.api#documentation": "

          The ID of the user pool that contains the resource server configuration.

          " } }, "Identifier": { @@ -12086,7 +13224,7 @@ } }, "traits": { - "smithy.api#documentation": "

          A container for information about a resource server for a user pool.

          " + "smithy.api#documentation": "

          The details of a resource server configuration and associated custom scopes in a user\n pool.

          \n

          This data type is a request parameter of CreateResourceServer and a response parameter of DescribeResourceServer.

          " } }, "com.amazonaws.cognitoidentityprovider#ResourceServersListType": { @@ -12176,7 +13314,7 @@ ], "traits": { "smithy.api#auth": [], - "smithy.api#documentation": "

          Some API operations in a user pool generate a challenge, like a prompt for an MFA\n code, for device authentication that bypasses MFA, or for a custom authentication\n challenge. A RespondToAuthChallenge API request provides the answer to that\n challenge, like a code or a secure remote password (SRP). The parameters of a response\n to an authentication challenge vary with the type of challenge.

          \n

          For more information about custom authentication challenges, see Custom\n authentication challenge Lambda triggers.

          \n \n

          Amazon Cognito doesn't evaluate Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you can't use IAM credentials to authorize requests, and you can't\n grant IAM permissions in policies. For more information about authorization models in\n Amazon Cognito, see Using the Amazon Cognito user pools API and user pool endpoints.

          \n
          \n \n

          This action might generate an SMS text message. Starting June 1, 2021, US telecom carriers\n require you to register an origination phone number before you can send SMS messages\n to US phone numbers. If you use SMS text messages in Amazon Cognito, you must register a\n phone number with Amazon Pinpoint.\n Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must\n receive SMS messages might not be able to sign up, activate their accounts, or sign\n in.

          \n

          If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Servicesservice,\n Amazon Simple Notification Service might place your account in the SMS sandbox. In \n sandbox\n mode\n , you can send messages only to verified phone\n numbers. After you test your app while in the sandbox environment, you can move out\n of the sandbox and into production. For more information, see SMS message settings for Amazon Cognito user pools in the Amazon Cognito\n Developer Guide.

          \n
          ", + "smithy.api#documentation": "

          Some API operations in a user pool generate a challenge, like a prompt for an MFA\n code, for device authentication that bypasses MFA, or for a custom authentication\n challenge. A RespondToAuthChallenge API request provides the answer to that\n challenge, like a code or a secure remote password (SRP). The parameters of a response\n to an authentication challenge vary with the type of challenge.

          \n

          For more information about custom authentication challenges, see Custom\n authentication challenge Lambda triggers.

          \n \n

          Amazon Cognito doesn't evaluate Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you can't use IAM credentials to authorize requests, and you can't\n grant IAM permissions in policies. For more information about authorization models in\n Amazon Cognito, see Using the Amazon Cognito user pools API and user pool endpoints.

          \n
          \n \n

          This action might generate an SMS text message. Starting June 1, 2021, US telecom carriers\n require you to register an origination phone number before you can send SMS messages\n to US phone numbers. If you use SMS text messages in Amazon Cognito, you must register a\n phone number with Amazon Pinpoint.\n Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must\n receive SMS messages might not be able to sign up, activate their accounts, or sign\n in.

          \n

          If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Services service,\n Amazon Simple Notification Service might place your account in the SMS sandbox. In \n sandbox\n mode\n , you can send messages only to verified phone\n numbers. After you test your app while in the sandbox environment, you can move out\n of the sandbox and into production. For more information, see SMS message settings for Amazon Cognito user pools in the Amazon Cognito\n Developer Guide.

          \n
          ", "smithy.api#optionalAuth": {} } }, @@ -12206,7 +13344,7 @@ "ChallengeResponses": { "target": "com.amazonaws.cognitoidentityprovider#ChallengeResponsesType", "traits": { - "smithy.api#documentation": "

          The responses to the challenge that you received in the previous request. Each\n challenge has its own required response parameters. The following examples are partial\n JSON request bodies that highlight challenge-response parameters.

          \n \n

          You must provide a SECRET_HASH parameter in all challenge responses to an app\n client that has a client secret.

          \n
          \n
          \n
          SMS_MFA
          \n
          \n

          \n \"ChallengeName\": \"SMS_MFA\", \"ChallengeResponses\": {\"SMS_MFA_CODE\":\n \"[code]\", \"USERNAME\": \"[username]\"}\n

          \n
          \n
          EMAIL_OTP
          \n
          \n

          \n \"ChallengeName\": \"EMAIL_OTP\", \"ChallengeResponses\": {\"EMAIL_OTP_CODE\":\n \"[code]\", \"USERNAME\": \"[username]\"}\n

          \n
          \n
          PASSWORD_VERIFIER
          \n
          \n

          This challenge response is part of the SRP flow. Amazon Cognito requires \n that your application respond to this challenge within a few seconds. When\n the response time exceeds this period, your user pool returns a\n NotAuthorizedException error.

          \n

          \n \"ChallengeName\": \"PASSWORD_VERIFIER\", \"ChallengeResponses\":\n {\"PASSWORD_CLAIM_SIGNATURE\": \"[claim_signature]\",\n \"PASSWORD_CLAIM_SECRET_BLOCK\": \"[secret_block]\", \"TIMESTAMP\":\n [timestamp], \"USERNAME\": \"[username]\"}\n

          \n

          Add \"DEVICE_KEY\" when you sign in with a remembered\n device.

          \n
          \n
          CUSTOM_CHALLENGE
          \n
          \n

          \n \"ChallengeName\": \"CUSTOM_CHALLENGE\", \"ChallengeResponses\":\n {\"USERNAME\": \"[username]\", \"ANSWER\": \"[challenge_answer]\"}\n

          \n

          Add \"DEVICE_KEY\" when you sign in with a remembered\n device.

          \n
          \n
          NEW_PASSWORD_REQUIRED
          \n
          \n

          \n \"ChallengeName\": \"NEW_PASSWORD_REQUIRED\", \"ChallengeResponses\":\n {\"NEW_PASSWORD\": \"[new_password]\", \"USERNAME\":\n \"[username]\"}\n

          \n

          To set any required attributes that InitiateAuth returned in\n an requiredAttributes parameter, add\n \"userAttributes.[attribute_name]\": \"[attribute_value]\".\n This parameter can also set values for writable attributes that aren't\n required by your user pool.

          \n \n

          In a NEW_PASSWORD_REQUIRED challenge response, you can't modify a required attribute that already has a value. \nIn RespondToAuthChallenge, set a value for any keys that Amazon Cognito returned in the requiredAttributes parameter, \nthen use the UpdateUserAttributes API operation to modify the value of any additional attributes.

          \n
          \n
          \n
          SOFTWARE_TOKEN_MFA
          \n
          \n

          \n \"ChallengeName\": \"SOFTWARE_TOKEN_MFA\", \"ChallengeResponses\":\n {\"USERNAME\": \"[username]\", \"SOFTWARE_TOKEN_MFA_CODE\":\n [authenticator_code]}\n

          \n
          \n
          DEVICE_SRP_AUTH
          \n
          \n

          \n \"ChallengeName\": \"DEVICE_SRP_AUTH\", \"ChallengeResponses\": {\"USERNAME\":\n \"[username]\", \"DEVICE_KEY\": \"[device_key]\", \"SRP_A\":\n \"[srp_a]\"}\n

          \n
          \n
          DEVICE_PASSWORD_VERIFIER
          \n
          \n

          \n \"ChallengeName\": \"DEVICE_PASSWORD_VERIFIER\", \"ChallengeResponses\":\n {\"DEVICE_KEY\": \"[device_key]\", \"PASSWORD_CLAIM_SIGNATURE\":\n \"[claim_signature]\", \"PASSWORD_CLAIM_SECRET_BLOCK\": \"[secret_block]\",\n \"TIMESTAMP\": [timestamp], \"USERNAME\": \"[username]\"}\n

          \n
          \n
          MFA_SETUP
          \n
          \n

          \n \"ChallengeName\": \"MFA_SETUP\", \"ChallengeResponses\": {\"USERNAME\":\n \"[username]\"}, \"SESSION\": \"[Session ID from\n VerifySoftwareToken]\"\n

          \n
          \n
          SELECT_MFA_TYPE
          \n
          \n

          \n \"ChallengeName\": \"SELECT_MFA_TYPE\", \"ChallengeResponses\": {\"USERNAME\":\n \"[username]\", \"ANSWER\": \"[SMS_MFA or SOFTWARE_TOKEN_MFA]\"}\n

          \n
          \n
          \n

          For more information about SECRET_HASH, see Computing secret hash values. For information about\n DEVICE_KEY, see Working with user devices in your user pool.

          " + "smithy.api#documentation": "

          The responses to the challenge that you received in the previous request. Each\n challenge has its own required response parameters. The following examples are partial\n JSON request bodies that highlight challenge-response parameters.

          \n \n

          You must provide a SECRET_HASH parameter in all challenge responses to an app\n client that has a client secret. Include a DEVICE_KEY for device\n authentication.

          \n
          \n
          \n
          SELECT_CHALLENGE
          \n
          \n

          \n \"ChallengeName\": \"SELECT_CHALLENGE\", \"ChallengeResponses\": {\n \"USERNAME\": \"[username]\",\n \"ANSWER\": \"[Challenge name]\"}\n

          \n

          Available challenges are PASSWORD, PASSWORD_SRP, \n EMAIL_OTP, SMS_OTP, and WEB_AUTHN.

          \n

          Complete authentication in the SELECT_CHALLENGE response for\n PASSWORD, PASSWORD_SRP, and WEB_AUTHN:

          \n
            \n
          • \n

            \n \"ChallengeName\": \"SELECT_CHALLENGE\", \"ChallengeResponses\": {\n \"ANSWER\": \"WEB_AUTHN\",\n \"USERNAME\": \"[username]\",\n \"CREDENTIAL\": \"[AuthenticationResponseJSON]\"}\n

            \n

            See \n AuthenticationResponseJSON.

            \n
          • \n
          • \n

            \n \"ChallengeName\": \"SELECT_CHALLENGE\", \"ChallengeResponses\": {\n \"ANSWER\": \"PASSWORD\",\n \"USERNAME\": \"[username]\",\n \"PASSWORD\": \"[password]\"}\n

            \n
          • \n
          • \n

            \n \"ChallengeName\": \"SELECT_CHALLENGE\", \"ChallengeResponses\": {\n \"ANSWER\": \"PASSWORD_SRP\",\n \"USERNAME\": \"[username]\",\n \"SRP_A\": \"[SRP_A]\"}\n

            \n
          • \n
          \n

          For SMS_OTP and EMAIL_OTP, respond with the\n username and answer. Your user pool will send a code for the user to submit in\n the next challenge response.

          \n
            \n
          • \n

            \n \"ChallengeName\": \"SELECT_CHALLENGE\", \"ChallengeResponses\": {\n \"ANSWER\": \"SMS_OTP\",\n \"USERNAME\": \"[username]\"}\n

            \n
          • \n
          • \n

            \n \"ChallengeName\": \"SELECT_CHALLENGE\", \"ChallengeResponses\": {\n \"ANSWER\": \"EMAIL_OTP\",\n \"USERNAME\": \"[username]\"}\n

            \n
          • \n
          \n
          \n
          SMS_OTP
          \n
          \n

          \n \"ChallengeName\": \"SMS_OTP\", \"ChallengeResponses\": \n {\"SMS_OTP_CODE\": \"[code]\", \"USERNAME\": \"[username]\"}\n

          \n
          \n
          EMAIL_OTP
          \n
          \n

          \n \"ChallengeName\": \"EMAIL_OTP\", \"ChallengeResponses\": {\"EMAIL_OTP_CODE\":\n \"[code]\", \"USERNAME\": \"[username]\"}\n

          \n
          \n
          SMS_MFA
          \n
          \n

          \n \"ChallengeName\": \"SMS_MFA\", \"ChallengeResponses\": {\"SMS_MFA_CODE\":\n \"[code]\", \"USERNAME\": \"[username]\"}\n

          \n
          \n
          PASSWORD_VERIFIER
          \n
          \n

          This challenge response is part of the SRP flow. Amazon Cognito requires \n that your application respond to this challenge within a few seconds. When\n the response time exceeds this period, your user pool returns a\n NotAuthorizedException error.

          \n

          \n \"ChallengeName\": \"PASSWORD_VERIFIER\", \"ChallengeResponses\":\n {\"PASSWORD_CLAIM_SIGNATURE\": \"[claim_signature]\",\n \"PASSWORD_CLAIM_SECRET_BLOCK\": \"[secret_block]\", \"TIMESTAMP\":\n [timestamp], \"USERNAME\": \"[username]\"}\n

          \n

          Add \"DEVICE_KEY\" when you sign in with a remembered\n device.

          \n
          \n
          CUSTOM_CHALLENGE
          \n
          \n

          \n \"ChallengeName\": \"CUSTOM_CHALLENGE\", \"ChallengeResponses\":\n {\"USERNAME\": \"[username]\", \"ANSWER\": \"[challenge_answer]\"}\n

          \n

          Add \"DEVICE_KEY\" when you sign in with a remembered\n device.

          \n
          \n
          NEW_PASSWORD_REQUIRED
          \n
          \n

          \n \"ChallengeName\": \"NEW_PASSWORD_REQUIRED\", \"ChallengeResponses\":\n {\"NEW_PASSWORD\": \"[new_password]\", \"USERNAME\":\n \"[username]\"}\n

          \n

          To set any required attributes that InitiateAuth returned in\n an requiredAttributes parameter, add\n \"userAttributes.[attribute_name]\": \"[attribute_value]\".\n This parameter can also set values for writable attributes that aren't\n required by your user pool.

          \n \n

          In a NEW_PASSWORD_REQUIRED challenge response, you can't modify a required attribute that already has a value. \nIn RespondToAuthChallenge, set a value for any keys that Amazon Cognito returned in the requiredAttributes parameter, \nthen use the UpdateUserAttributes API operation to modify the value of any additional attributes.

          \n
          \n
          \n
          SOFTWARE_TOKEN_MFA
          \n
          \n

          \n \"ChallengeName\": \"SOFTWARE_TOKEN_MFA\", \"ChallengeResponses\":\n {\"USERNAME\": \"[username]\", \"SOFTWARE_TOKEN_MFA_CODE\":\n [authenticator_code]}\n

          \n
          \n
          DEVICE_SRP_AUTH
          \n
          \n

          \n \"ChallengeName\": \"DEVICE_SRP_AUTH\", \"ChallengeResponses\": {\"USERNAME\":\n \"[username]\", \"DEVICE_KEY\": \"[device_key]\", \"SRP_A\":\n \"[srp_a]\"}\n

          \n
          \n
          DEVICE_PASSWORD_VERIFIER
          \n
          \n

          \n \"ChallengeName\": \"DEVICE_PASSWORD_VERIFIER\", \"ChallengeResponses\":\n {\"DEVICE_KEY\": \"[device_key]\", \"PASSWORD_CLAIM_SIGNATURE\":\n \"[claim_signature]\", \"PASSWORD_CLAIM_SECRET_BLOCK\": \"[secret_block]\",\n \"TIMESTAMP\": [timestamp], \"USERNAME\": \"[username]\"}\n

          \n
          \n
          MFA_SETUP
          \n
          \n

          \n \"ChallengeName\": \"MFA_SETUP\", \"ChallengeResponses\": {\"USERNAME\":\n \"[username]\"}, \"SESSION\": \"[Session ID from\n VerifySoftwareToken]\"\n

          \n
          \n
          SELECT_MFA_TYPE
          \n
          \n

          \n \"ChallengeName\": \"SELECT_MFA_TYPE\", \"ChallengeResponses\": {\"USERNAME\":\n \"[username]\", \"ANSWER\": \"[SMS_MFA or SOFTWARE_TOKEN_MFA]\"}\n

          \n
          \n
          \n

          For more information about SECRET_HASH, see Computing secret hash values. For information about\n DEVICE_KEY, see Working with user devices in your user pool.

          " } }, "AnalyticsMetadata": { @@ -12344,31 +13482,31 @@ "UserPoolId": { "target": "com.amazonaws.cognitoidentityprovider#UserPoolIdType", "traits": { - "smithy.api#documentation": "

          The user pool ID.

          " + "smithy.api#documentation": "

          The ID of the user pool that has the risk configuration applied.

          " } }, "ClientId": { "target": "com.amazonaws.cognitoidentityprovider#ClientIdType", "traits": { - "smithy.api#documentation": "

          The app client ID.

          " + "smithy.api#documentation": "

          The app client where this configuration is applied. When this parameter isn't present,\n the risk configuration applies to all user pool app clients that don't have\n client-level settings.

          " } }, "CompromisedCredentialsRiskConfiguration": { "target": "com.amazonaws.cognitoidentityprovider#CompromisedCredentialsRiskConfigurationType", "traits": { - "smithy.api#documentation": "

          The compromised credentials risk configuration object, including the\n EventFilter and the EventAction.

          " + "smithy.api#documentation": "

          Settings for compromised-credentials actions and authentication types with advanced\n security features in full-function ENFORCED mode.

          " } }, "AccountTakeoverRiskConfiguration": { "target": "com.amazonaws.cognitoidentityprovider#AccountTakeoverRiskConfigurationType", "traits": { - "smithy.api#documentation": "

          The account takeover risk configuration object, including the\n NotifyConfiguration object and Actions to take if there is\n an account takeover.

          " + "smithy.api#documentation": "

          The settings for automated responses and notification templates for adaptive\n authentication with advanced security features.

          " } }, "RiskExceptionConfiguration": { "target": "com.amazonaws.cognitoidentityprovider#RiskExceptionConfigurationType", "traits": { - "smithy.api#documentation": "

          The configuration to override the risk decision.

          " + "smithy.api#documentation": "

          Exceptions to the risk evaluation configuration, including always-allow and\n always-block IP address ranges.

          " } }, "LastModifiedDate": { @@ -12379,7 +13517,7 @@ } }, "traits": { - "smithy.api#documentation": "

          The risk configuration type.

          " + "smithy.api#documentation": "

          The settings of risk configuration for threat protection with advanced security\n features in a user pool.

          \n

          This data type is a response parameter of DescribeRiskConfiguration and SetRiskConfiguration.

          " } }, "com.amazonaws.cognitoidentityprovider#RiskDecisionType": { @@ -12411,18 +13549,18 @@ "BlockedIPRangeList": { "target": "com.amazonaws.cognitoidentityprovider#BlockedIPRangeListType", "traits": { - "smithy.api#documentation": "

          Overrides the risk decision to always block the pre-authentication requests. The IP\n range is in CIDR notation, a compact representation of an IP address and its routing\n prefix.

          " + "smithy.api#documentation": "

          An always-block IP address list. Overrides the risk decision and always blocks\n authentication requests. This parameter is displayed and set in CIDR notation.

          " } }, "SkippedIPRangeList": { "target": "com.amazonaws.cognitoidentityprovider#SkippedIPRangeListType", "traits": { - "smithy.api#documentation": "

          Risk detection isn't performed on the IP addresses in this range list. The IP range is\n in CIDR notation.

          " + "smithy.api#documentation": "

          An always-allow IP address list. Risk detection isn't performed on the IP addresses in\n this range list. This parameter is displayed and set in CIDR notation.

          " } } }, "traits": { - "smithy.api#documentation": "

          The type of the configuration to override the risk decision.

          " + "smithy.api#documentation": "

          Exceptions to the risk evaluation configuration, including always-allow and\n always-block IP address ranges.

          \n

          This data type is a request parameter of SetRiskConfiguration and a response parameter of DescribeRiskConfiguration.

          " } }, "com.amazonaws.cognitoidentityprovider#RiskLevelType": { @@ -12506,12 +13644,12 @@ "target": "com.amazonaws.cognitoidentityprovider#BooleanType", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

          Specifies whether SMS is the preferred MFA method.

          " + "smithy.api#documentation": "

          Specifies whether SMS is the preferred MFA method. If true, your user pool prompts the\n specified user for a code delivered by SMS message after username-password sign-in\n succeeds.

          " } } }, "traits": { - "smithy.api#documentation": "

          The type used for enabling SMS multi-factor authentication (MFA) at the user level.\n Phone numbers don't need to be verified to be used for SMS MFA. If an MFA type is\n activated for a user, the user will be prompted for MFA during all sign-in attempts,\n unless device tracking is turned on and the device has been trusted. If you would like\n MFA to be applied selectively based on the assessed risk level of sign-in attempts,\n deactivate MFA for users and turn on Adaptive Authentication for the user pool.

          " + "smithy.api#documentation": "

          A user's preference for using SMS message multi-factor authentication (MFA). Turns SMS\n MFA on and off, and can set SMS as preferred when other MFA options are available. You\n can't turn off SMS MFA for any of your users when MFA is required in your user pool; you\n can only set the type that your user prefers.

          \n

          This data type is a request parameter of SetUserMFAPreference and AdminSetUserMFAPreference.

          " } }, "com.amazonaws.cognitoidentityprovider#SchemaAttributeType": { @@ -12564,7 +13702,7 @@ } }, "traits": { - "smithy.api#documentation": "

          A list of the user attributes and their properties in your user pool. The attribute\n schema contains standard attributes, custom attributes with a custom:\n prefix, and developer attributes with a dev: prefix. For more information,\n see User pool\n attributes.

          \n

          Developer-only attributes are a legacy feature of user pools, are read-only to all app\n clients. You can create and update developer-only attributes only with IAM-authenticated\n API operations. Use app client read/write permissions instead.

          " + "smithy.api#documentation": "

          A list of the user attributes and their properties in your user pool. The attribute\n schema contains standard attributes, custom attributes with a custom:\n prefix, and developer attributes with a dev: prefix. For more information,\n see User pool\n attributes.

          \n

          Developer-only dev: attributes are a legacy feature of user pools, and\n are read-only to all app clients. You can create and update developer-only attributes\n only with IAM-authenticated API operations. Use app client read/write permissions\n instead.

          \n

          This data type is a request and response parameter of CreateUserPool and UpdateUserPool, and a response parameter of DescribeUserPool.

          " } }, "com.amazonaws.cognitoidentityprovider#SchemaAttributesListType": { @@ -12669,6 +13807,9 @@ "target": "com.amazonaws.cognitoidentityprovider#SetLogDeliveryConfigurationResponse" }, "errors": [ + { + "target": "com.amazonaws.cognitoidentityprovider#FeatureUnavailableInTierException" + }, { "target": "com.amazonaws.cognitoidentityprovider#InternalErrorException" }, @@ -12986,6 +14127,9 @@ { "target": "com.amazonaws.cognitoidentityprovider#ConcurrentModificationException" }, + { + "target": "com.amazonaws.cognitoidentityprovider#FeatureUnavailableInTierException" + }, { "target": "com.amazonaws.cognitoidentityprovider#InternalErrorException" }, @@ -13009,7 +14153,7 @@ } ], "traits": { - "smithy.api#documentation": "

          Sets the user pool multi-factor authentication (MFA) configuration.

          \n \n

          This action might generate an SMS text message. Starting June 1, 2021, US telecom carriers\n require you to register an origination phone number before you can send SMS messages\n to US phone numbers. If you use SMS text messages in Amazon Cognito, you must register a\n phone number with Amazon Pinpoint.\n Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must\n receive SMS messages might not be able to sign up, activate their accounts, or sign\n in.

          \n

          If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Servicesservice,\n Amazon Simple Notification Service might place your account in the SMS sandbox. In \n sandbox\n mode\n , you can send messages only to verified phone\n numbers. After you test your app while in the sandbox environment, you can move out\n of the sandbox and into production. For more information, see SMS message settings for Amazon Cognito user pools in the Amazon Cognito\n Developer Guide.

          \n
          " + "smithy.api#documentation": "

          Sets the user pool multi-factor authentication (MFA) and passkey configuration.

          \n \n

          This action might generate an SMS text message. Starting June 1, 2021, US telecom carriers\n require you to register an origination phone number before you can send SMS messages\n to US phone numbers. If you use SMS text messages in Amazon Cognito, you must register a\n phone number with Amazon Pinpoint.\n Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must\n receive SMS messages might not be able to sign up, activate their accounts, or sign\n in.

          \n

          If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Services service,\n Amazon Simple Notification Service might place your account in the SMS sandbox. In \n sandbox\n mode\n , you can send messages only to verified phone\n numbers. After you test your app while in the sandbox environment, you can move out\n of the sandbox and into production. For more information, see SMS message settings for Amazon Cognito user pools in the Amazon Cognito\n Developer Guide.

          \n
          " } }, "com.amazonaws.cognitoidentityprovider#SetUserPoolMfaConfigRequest": { @@ -13045,6 +14189,12 @@ "traits": { "smithy.api#documentation": "

          The MFA configuration. If you set the MfaConfiguration value to ‘ON’, only users who\n have set up an MFA factor can sign in. To learn more, see Adding Multi-Factor\n Authentication (MFA) to a user pool. Valid values include:

          \n
            \n
          • \n

            \n OFF MFA won't be used for any users.

            \n
          • \n
          • \n

            \n ON MFA is required for all users to sign in.

            \n
          • \n
          • \n

            \n OPTIONAL MFA will be required only for individual users who have\n an MFA factor activated.

            \n
          • \n
          " } + }, + "WebAuthnConfiguration": { + "target": "com.amazonaws.cognitoidentityprovider#WebAuthnConfigurationType", + "traits": { + "smithy.api#documentation": "

          The configuration of your user pool for passkey, or webauthN, authentication and\n registration. You can set this configuration independent of the MFA configuration\n options in this operation.

          " + } } }, "traits": { @@ -13077,6 +14227,12 @@ "traits": { "smithy.api#documentation": "

          The MFA configuration. Valid values include:

          \n
            \n
          • \n

            \n OFF MFA won't be used for any users.

            \n
          • \n
          • \n

            \n ON MFA is required for all users to sign in.

            \n
          • \n
          • \n

            \n OPTIONAL MFA will be required only for individual users who have\n an MFA factor enabled.

            \n
          • \n
          " } + }, + "WebAuthnConfiguration": { + "target": "com.amazonaws.cognitoidentityprovider#WebAuthnConfigurationType", + "traits": { + "smithy.api#documentation": "

          The configuration of your user pool for passkey, or webauthN, biometric and\n security-key devices.

          " + } } }, "traits": { @@ -13154,6 +14310,20 @@ "smithy.api#output": {} } }, + "com.amazonaws.cognitoidentityprovider#SignInPolicyType": { + "type": "structure", + "members": { + "AllowedFirstAuthFactors": { + "target": "com.amazonaws.cognitoidentityprovider#AllowedFirstAuthFactorsListType", + "traits": { + "smithy.api#documentation": "

          The sign-in methods that a user pool supports as the first factor. You can permit\n users to start authentication with a standard username and password, or with other\n one-time password and hardware factors.

          " + } + } + }, + "traits": { + "smithy.api#documentation": "

          The policy for allowed types of authentication in a user pool.

          \n

          This data type is a request and response parameter of CreateUserPool and UpdateUserPool, and a response parameter of DescribeUserPool.

          " + } + }, "com.amazonaws.cognitoidentityprovider#SignUp": { "type": "operation", "input": { @@ -13214,7 +14384,7 @@ ], "traits": { "smithy.api#auth": [], - "smithy.api#documentation": "

          Registers the user in the specified user pool and creates a user name, password, and\n user attributes.

          \n \n

          Amazon Cognito doesn't evaluate Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you can't use IAM credentials to authorize requests, and you can't\n grant IAM permissions in policies. For more information about authorization models in\n Amazon Cognito, see Using the Amazon Cognito user pools API and user pool endpoints.

          \n
          \n \n

          This action might generate an SMS text message. Starting June 1, 2021, US telecom carriers\n require you to register an origination phone number before you can send SMS messages\n to US phone numbers. If you use SMS text messages in Amazon Cognito, you must register a\n phone number with Amazon Pinpoint.\n Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must\n receive SMS messages might not be able to sign up, activate their accounts, or sign\n in.

          \n

          If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Servicesservice,\n Amazon Simple Notification Service might place your account in the SMS sandbox. In \n sandbox\n mode\n , you can send messages only to verified phone\n numbers. After you test your app while in the sandbox environment, you can move out\n of the sandbox and into production. For more information, see SMS message settings for Amazon Cognito user pools in the Amazon Cognito\n Developer Guide.

          \n
          ", + "smithy.api#documentation": "

          Registers the user in the specified user pool and creates a user name, password, and\n user attributes.

          \n \n

          Amazon Cognito doesn't evaluate Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you can't use IAM credentials to authorize requests, and you can't\n grant IAM permissions in policies. For more information about authorization models in\n Amazon Cognito, see Using the Amazon Cognito user pools API and user pool endpoints.

          \n
          \n \n

          This action might generate an SMS text message. Starting June 1, 2021, US telecom carriers\n require you to register an origination phone number before you can send SMS messages\n to US phone numbers. If you use SMS text messages in Amazon Cognito, you must register a\n phone number with Amazon Pinpoint.\n Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must\n receive SMS messages might not be able to sign up, activate their accounts, or sign\n in.

          \n

          If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Services service,\n Amazon Simple Notification Service might place your account in the SMS sandbox. In \n sandbox\n mode\n , you can send messages only to verified phone\n numbers. After you test your app while in the sandbox environment, you can move out\n of the sandbox and into production. For more information, see SMS message settings for Amazon Cognito user pools in the Amazon Cognito\n Developer Guide.

          \n
          \n

          You might receive a LimitExceeded exception in response to this request\n if you have exceeded a rate quota for email or SMS messages, and if your user pool\n automatically verifies email addresses or phone numbers. When you get this exception in\n the response, the user is successfully created and is in an UNCONFIRMED\n state. You can send a new code with the ResendConfirmationCode request, or confirm the user as an administrator\n with an \n AdminConfirmSignUp request.

          ", "smithy.api#optionalAuth": {} } }, @@ -13244,8 +14414,7 @@ "Password": { "target": "com.amazonaws.cognitoidentityprovider#PasswordType", "traits": { - "smithy.api#documentation": "

          The password of the user you want to register.

          ", - "smithy.api#required": {} + "smithy.api#documentation": "

          The password of the user you want to register.

          \n

          Users can sign up without a password when your user pool supports passwordless sign-in\n with email or SMS OTPs. To create a user with no password, omit this parameter or submit\n a blank value. You can only create a passwordless user when passwordless sign-in is\n available. See the SignInPolicyType property of CreateUserPool and UpdateUserPool.

          " } }, "UserAttributes": { @@ -13307,6 +14476,12 @@ "smithy.api#documentation": "

          The 128-bit ID of the authenticated user. This isn't the same as\n username.

          ", "smithy.api#required": {} } + }, + "Session": { + "target": "com.amazonaws.cognitoidentityprovider#SessionType", + "traits": { + "smithy.api#documentation": "

          A session Id that you can pass to ConfirmSignUp when you want to\n immediately sign in your user with the USER_AUTH flow after they complete\n sign-up.

          " + } } }, "traits": { @@ -13339,7 +14514,7 @@ "ExternalId": { "target": "com.amazonaws.cognitoidentityprovider#StringType", "traits": { - "smithy.api#documentation": "

          The external ID provides additional security for your IAM role. You can use an\n ExternalId with the IAM role that you use with Amazon SNS to send SMS\n messages for your user pool. If you provide an ExternalId, your Amazon Cognito user\n pool includes it in the request to assume your IAM role. You can configure the role\n trust policy to require that Amazon Cognito, and any principal, provide the\n ExternalID. If you use the Amazon Cognito Management Console to create a role\n for SMS multi-factor authentication (MFA), Amazon Cognito creates a role with the required\n permissions and a trust policy that demonstrates use of the\n ExternalId.

          \n

          For more information about the ExternalId of a role, see How to use an\n external ID when granting access to your Amazon Web Services resources to a third\n party\n

          " + "smithy.api#documentation": "

          The external ID provides additional security for your IAM role. You can use an\n ExternalId with the IAM role that you use with Amazon SNS to send SMS\n messages for your user pool. If you provide an ExternalId, your Amazon Cognito user\n pool includes it in the request to assume your IAM role. You can configure the role\n trust policy to require that Amazon Cognito, and any principal, provide the\n ExternalID. If you use the Amazon Cognito Management Console to create a role\n for SMS multi-factor authentication (MFA), Amazon Cognito creates a role with the required\n permissions and a trust policy that demonstrates use of the\n ExternalId.

          \n

          For more information about the ExternalId of a role, see How to use an\n external ID when granting access to your Amazon Web Services resources to a third\n party.

          " } }, "SnsRegion": { @@ -13350,7 +14525,17 @@ } }, "traits": { - "smithy.api#documentation": "

          The SMS configuration type is the settings that your Amazon Cognito user pool must use to send\n an SMS message from your Amazon Web Services account through Amazon Simple Notification Service. To send SMS\n messages with Amazon SNS in the Amazon Web Services Region that you want, the Amazon Cognito user pool uses an\n Identity and Access Management (IAM) role in your Amazon Web Services account.

          " + "smithy.api#documentation": "

          User pool configuration for delivery of SMS messages with Amazon Simple Notification Service. To send SMS\n messages with Amazon SNS in the Amazon Web Services Region that you want, the Amazon Cognito user pool uses an\n Identity and Access Management (IAM) role in your Amazon Web Services account.

          \n

          This data type is a request parameter of CreateUserPool, UpdateUserPool, and SetUserPoolMfaConfig, and a response parameter of\n CreateUserPool, UpdateUserPool, and GetUserPoolMfaConfig.

          " + } + }, + "com.amazonaws.cognitoidentityprovider#SmsInviteMessageType": { + "type": "string", + "traits": { + "smithy.api#length": { + "min": 6, + "max": 140 + }, + "smithy.api#pattern": "^(?s)" } }, "com.amazonaws.cognitoidentityprovider#SmsMfaConfigType": { @@ -13359,18 +14544,18 @@ "SmsAuthenticationMessage": { "target": "com.amazonaws.cognitoidentityprovider#SmsVerificationMessageType", "traits": { - "smithy.api#documentation": "

          The SMS message that your user pool sends to users with an MFA code. The message must\n contain the {####} placeholder. In the message, Amazon Cognito replaces this\n placeholder with the code. If you don't provide this parameter, Amazon Cognito sends\n messages in the default format.

          " + "smithy.api#documentation": "

          The SMS authentication message that will be sent to users with the code they must sign\n in with. The message must contain the {####} placeholder. Your user pool\n replaces the placeholder with the MFA code. If this parameter isn't provided, your user\n pool sends a default message.

          " } }, "SmsConfiguration": { "target": "com.amazonaws.cognitoidentityprovider#SmsConfigurationType", "traits": { - "smithy.api#documentation": "

          The SMS configuration with the settings that your Amazon Cognito user pool must use to send an\n SMS message from your Amazon Web Services account through Amazon Simple Notification Service. To request Amazon SNS in\n the Amazon Web Services Region that you want, the Amazon Cognito user pool uses an Identity and Access Management (IAM) role that\n you provide for your Amazon Web Services account.

          " + "smithy.api#documentation": "

          User pool configuration for delivery of SMS messages with Amazon Simple Notification Service. To send SMS\n messages with Amazon SNS in the Amazon Web Services Region that you want, the Amazon Cognito user pool uses an\n Identity and Access Management (IAM) role in your Amazon Web Services account.

          \n

          You can set SmsConfiguration in CreateUserPool and \n UpdateUserPool, or in SetUserPoolMfaConfig.

          " } } }, "traits": { - "smithy.api#documentation": "

          Configures user pool SMS messages for multi-factor authentication (MFA). Sets the\n message template and the SMS message sending configuration for Amazon SNS.

          " + "smithy.api#documentation": "

          The configuration of multi-factor authentication (MFA) with SMS messages in a user\n pool.

          \n

          This data type is a request parameter of SetUserPoolMfaConfig and a response parameter of GetUserPoolMfaConfig.

          " } }, "com.amazonaws.cognitoidentityprovider#SmsVerificationMessageType": { @@ -13414,12 +14599,12 @@ "target": "com.amazonaws.cognitoidentityprovider#BooleanType", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

          Specifies whether software token MFA is activated.

          " + "smithy.api#documentation": "

          The activation state of TOTP MFA.

          " } } }, "traits": { - "smithy.api#documentation": "

          Configures a user pool for time-based one-time password (TOTP) multi-factor\n authentication (MFA). Enables or disables TOTP.

          " + "smithy.api#documentation": "

          Settings for time-based one-time password (TOTP) multi-factor authentication (MFA) in\n a user pool. Enables and disables availability of this feature.

          \n

          This data type is a request parameter of SetUserPoolMfaConfig and a response parameter of GetUserPoolMfaConfig.

          " } }, "com.amazonaws.cognitoidentityprovider#SoftwareTokenMfaSettingsType": { @@ -13441,7 +14626,7 @@ } }, "traits": { - "smithy.api#documentation": "

          The type used for enabling software token MFA at the user level. If an MFA type is\n activated for a user, the user will be prompted for MFA during all sign-in attempts,\n unless device tracking is turned on and the device has been trusted. If you want MFA to\n be applied selectively based on the assessed risk level of sign-in attempts, deactivate\n MFA for users and turn on Adaptive Authentication for the user pool.

          " + "smithy.api#documentation": "

          A user's preference for using time-based one-time password (TOTP) multi-factor\n authentication (MFA). Turns TOTP MFA on and off, and can set TOTP as preferred when\n other MFA options are available. You can't turn off TOTP MFA for any of your users when\n MFA is required in your user pool; you can only set the type that your user prefers.

          \n

          This data type is a request parameter of SetUserMFAPreference and AdminSetUserMFAPreference.

          " } }, "com.amazonaws.cognitoidentityprovider#StartUserImportJob": { @@ -13514,6 +14699,76 @@ "smithy.api#output": {} } }, + "com.amazonaws.cognitoidentityprovider#StartWebAuthnRegistration": { + "type": "operation", + "input": { + "target": "com.amazonaws.cognitoidentityprovider#StartWebAuthnRegistrationRequest" + }, + "output": { + "target": "com.amazonaws.cognitoidentityprovider#StartWebAuthnRegistrationResponse" + }, + "errors": [ + { + "target": "com.amazonaws.cognitoidentityprovider#ForbiddenException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#InternalErrorException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#InvalidParameterException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#LimitExceededException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#NotAuthorizedException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#TooManyRequestsException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#WebAuthnConfigurationMissingException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#WebAuthnNotEnabledException" + } + ], + "traits": { + "smithy.api#auth": [], + "smithy.api#documentation": "

          Requests credential creation options from your user pool for registration of a passkey\n authenticator. Returns information about the user pool, the user profile, and\n authentication requirements. Users must provide this information in their request to\n enroll your application with their passkey provider.

          \n

          After users present this data and register with their passkey provider, return the\n response to your user pool in a CompleteWebAuthnRegistration API request.

          \n

          Authorize this action with a signed-in user's access token. It must include the scope aws.cognito.signin.user.admin.

          ", + "smithy.api#optionalAuth": {} + } + }, + "com.amazonaws.cognitoidentityprovider#StartWebAuthnRegistrationRequest": { + "type": "structure", + "members": { + "AccessToken": { + "target": "com.amazonaws.cognitoidentityprovider#TokenModelType", + "traits": { + "smithy.api#documentation": "

          A valid access token that Amazon Cognito issued to the user whose passkey metadata you want to\n generate.

          ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.cognitoidentityprovider#StartWebAuthnRegistrationResponse": { + "type": "structure", + "members": { + "CredentialCreationOptions": { + "target": "com.amazonaws.cognitoidentityprovider#Document", + "traits": { + "smithy.api#documentation": "

          The information that a user can provide in their request to register with their\n passkey provider.

          ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.cognitoidentityprovider#StatusType": { "type": "enum", "members": { @@ -13607,7 +14862,7 @@ "MinLength": { "target": "com.amazonaws.cognitoidentityprovider#StringType", "traits": { - "smithy.api#documentation": "

          The minimum length.

          " + "smithy.api#documentation": "

          The minimum length of a string attribute value.

          " } }, "MaxLength": { @@ -13618,7 +14873,7 @@ } }, "traits": { - "smithy.api#documentation": "

          The constraints associated with a string attribute.

          " + "smithy.api#documentation": "

          The minimum and maximum length values of an attribute that is of the string type, for\n example custom:department.

          \n

          This data type is part of SchemaAttributeType. It defines the length constraints\n on string-type attributes that you configure in CreateUserPool and UpdateUserPool, and displays the length constraints of\n all string-type attributes in the response to DescribeUserPool\n

          " } }, "com.amazonaws.cognitoidentityprovider#StringType": { @@ -13722,6 +14977,19 @@ } } }, + "com.amazonaws.cognitoidentityprovider#TierChangeNotAllowedException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.cognitoidentityprovider#MessageType" + } + }, + "traits": { + "smithy.api#documentation": "

          This exception is thrown when you've attempted to change your feature plan but\n the operation isn't permitted.

          ", + "smithy.api#error": "client", + "smithy.api#httpError": 403 + } + }, "com.amazonaws.cognitoidentityprovider#TimeUnitsType": { "type": "enum", "members": { @@ -13764,24 +15032,24 @@ "AccessToken": { "target": "com.amazonaws.cognitoidentityprovider#TimeUnitsType", "traits": { - "smithy.api#documentation": "

          A time unit of seconds, minutes, hours, or\n days for the value that you set in the AccessTokenValidity\n parameter. The default AccessTokenValidity time unit is hours.\n AccessTokenValidity duration can range from five minutes to one\n day.

          " + "smithy.api#documentation": "

          A time unit for the value that you set in the AccessTokenValidity\n parameter. The default AccessTokenValidity time unit is hours.\n AccessTokenValidity duration can range from five minutes to one\n day.

          " } }, "IdToken": { "target": "com.amazonaws.cognitoidentityprovider#TimeUnitsType", "traits": { - "smithy.api#documentation": "

          A time unit of seconds, minutes, hours, or\n days for the value that you set in the IdTokenValidity\n parameter. The default IdTokenValidity time unit is hours.\n IdTokenValidity duration can range from five minutes to one day.

          " + "smithy.api#documentation": "

          A time unit for the value that you set in the IdTokenValidity parameter.\n The default IdTokenValidity time unit is hours.\n IdTokenValidity duration can range from five minutes to one day.

          " } }, "RefreshToken": { "target": "com.amazonaws.cognitoidentityprovider#TimeUnitsType", "traits": { - "smithy.api#documentation": "

          A time unit of seconds, minutes, hours, or\n days for the value that you set in the\n RefreshTokenValidity parameter. The default\n RefreshTokenValidity time unit is days.\n RefreshTokenValidity duration can range from 60 minutes to 10\n years.

          " + "smithy.api#documentation": "

          A time unit for the value that you set in the RefreshTokenValidity\n parameter. The default RefreshTokenValidity time unit is days.\n RefreshTokenValidity duration can range from 60 minutes to 10\n years.

          " } } }, "traits": { - "smithy.api#documentation": "

          The data type TokenValidityUnits specifies the time units you use when you set the\n duration of ID, access, and refresh tokens.

          " + "smithy.api#documentation": "

          The time units that, with IdTokenValidity,\n AccessTokenValidity, and RefreshTokenValidity, set and\n display the duration of ID, access, and refresh tokens for an app client. You can assign\n a separate token validity unit to each type of token.

          \n

          This data type is a request parameter of CreateUserPoolClient and UpdateUserPoolClient, and a response parameter of\n DescribeUserPoolClient.

          " } }, "com.amazonaws.cognitoidentityprovider#TooManyFailedAttemptsException": { @@ -13822,25 +15090,25 @@ "UserPoolId": { "target": "com.amazonaws.cognitoidentityprovider#UserPoolIdType", "traits": { - "smithy.api#documentation": "

          The user pool ID for the user pool.

          " + "smithy.api#documentation": "

          The ID of the user pool with hosted UI customizations.

          " } }, "ClientId": { "target": "com.amazonaws.cognitoidentityprovider#ClientIdType", "traits": { - "smithy.api#documentation": "

          The client ID for the client app.

          " + "smithy.api#documentation": "

          The app client ID for your UI customization. When this value isn't present, the\n customization applies to all user pool app clients that don't have client-level\n settings..

          " } }, "ImageUrl": { "target": "com.amazonaws.cognitoidentityprovider#ImageUrlType", "traits": { - "smithy.api#documentation": "

          The logo image for the UI customization.

          " + "smithy.api#documentation": "

          A URL path to the hosted logo image of your UI customization.

          " } }, "CSS": { "target": "com.amazonaws.cognitoidentityprovider#CSSType", "traits": { - "smithy.api#documentation": "

          The CSS values in the UI customization.

          " + "smithy.api#documentation": "

          The CSS values in the UI customization. To get a template with your UI customization\n options, make a GetUiCustomization request.

          " } }, "CSSVersion": { @@ -13863,7 +15131,7 @@ } }, "traits": { - "smithy.api#documentation": "

          A container for the UI customization information for a user pool's built-in app\n UI.

          " + "smithy.api#documentation": "

          A container for the UI customization information for the hosted UI in a user\n pool.

          \n

          This data type is a response parameter of GetUICustomization.

          " } }, "com.amazonaws.cognitoidentityprovider#UnauthorizedException": { @@ -14351,6 +15619,91 @@ "smithy.api#output": {} } }, + "com.amazonaws.cognitoidentityprovider#UpdateManagedLoginBranding": { + "type": "operation", + "input": { + "target": "com.amazonaws.cognitoidentityprovider#UpdateManagedLoginBrandingRequest" + }, + "output": { + "target": "com.amazonaws.cognitoidentityprovider#UpdateManagedLoginBrandingResponse" + }, + "errors": [ + { + "target": "com.amazonaws.cognitoidentityprovider#ConcurrentModificationException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#InternalErrorException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#InvalidParameterException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#NotAuthorizedException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException" + }, + { + "target": "com.amazonaws.cognitoidentityprovider#TooManyRequestsException" + } + ], + "traits": { + "smithy.api#documentation": "

          Configures the branding settings for a user pool style. This operation is the\n programmatic option for the configuration of a style in the branding designer.

          \n

          Provides values for UI customization in a Settings JSON object and image\n files in an Assets array.

          \n

          This operation has a 2-megabyte request-size limit and include the CSS settings and\n image assets for your app client. Your branding settings might exceed 2MB in size. Amazon Cognito\n doesn't require that you pass all parameters in one request and preserves existing\n style settings that you don't specify. If your request is larger than 2MB, separate it\n into multiple requests, each with a size smaller than the limit.

          \n

          For more information, see API and SDK operations for managed login branding.

          \n \n

          Amazon Cognito evaluates Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you must use IAM credentials to authorize requests, and you must\n grant yourself the corresponding IAM permission in a policy.

          \n

          \n Learn more\n

          \n \n
          " + } + }, + "com.amazonaws.cognitoidentityprovider#UpdateManagedLoginBrandingRequest": { + "type": "structure", + "members": { + "UserPoolId": { + "target": "com.amazonaws.cognitoidentityprovider#UserPoolIdType", + "traits": { + "smithy.api#documentation": "

          The ID of the user pool that contains the managed login branding style that you want\n to update.

          " + } + }, + "ManagedLoginBrandingId": { + "target": "com.amazonaws.cognitoidentityprovider#ManagedLoginBrandingIdType", + "traits": { + "smithy.api#documentation": "

          The ID of the managed login branding style that you want to update.

          " + } + }, + "UseCognitoProvidedValues": { + "target": "com.amazonaws.cognitoidentityprovider#BooleanType", + "traits": { + "smithy.api#default": false, + "smithy.api#documentation": "

          When true, applies the default branding style options. This option reverts to default\n style options that are managed by Amazon Cognito. You can modify them later in the branding\n designer.

          \n

          When you specify true for this option, you must also omit values for\n Settings and Assets in the request.

          " + } + }, + "Settings": { + "target": "com.amazonaws.cognitoidentityprovider#Document", + "traits": { + "smithy.api#documentation": "

          A JSON file, encoded as a Document type, with the the settings that you\n want to apply to your style.

          " + } + }, + "Assets": { + "target": "com.amazonaws.cognitoidentityprovider#AssetListType", + "traits": { + "smithy.api#documentation": "

          An array of image files that you want to apply to roles like backgrounds, logos, and\n icons. Each object must also indicate whether it is for dark mode, light mode, or\n browser-adaptive mode.

          " + } + } + }, + "traits": { + "smithy.api#input": {} + } + }, + "com.amazonaws.cognitoidentityprovider#UpdateManagedLoginBrandingResponse": { + "type": "structure", + "members": { + "ManagedLoginBranding": { + "target": "com.amazonaws.cognitoidentityprovider#ManagedLoginBrandingType", + "traits": { + "smithy.api#documentation": "

          The details of the branding style that you updated.

          " + } + } + }, + "traits": { + "smithy.api#output": {} + } + }, "com.amazonaws.cognitoidentityprovider#UpdateResourceServer": { "type": "operation", "input": { @@ -14499,7 +15852,7 @@ ], "traits": { "smithy.api#auth": [], - "smithy.api#documentation": "

          With this operation, your users can update one or more of their attributes with their\n own credentials. You authorize this API request with the user's access token. To delete\n an attribute from your user, submit the attribute in your API request with a blank\n value. Custom attribute values in this request must include the custom:\n prefix.

          \n

          Authorize this action with a signed-in user's access token. It must include the scope aws.cognito.signin.user.admin.

          \n \n

          Amazon Cognito doesn't evaluate Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you can't use IAM credentials to authorize requests, and you can't\n grant IAM permissions in policies. For more information about authorization models in\n Amazon Cognito, see Using the Amazon Cognito user pools API and user pool endpoints.

          \n
          \n \n

          This action might generate an SMS text message. Starting June 1, 2021, US telecom carriers\n require you to register an origination phone number before you can send SMS messages\n to US phone numbers. If you use SMS text messages in Amazon Cognito, you must register a\n phone number with Amazon Pinpoint.\n Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must\n receive SMS messages might not be able to sign up, activate their accounts, or sign\n in.

          \n

          If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Servicesservice,\n Amazon Simple Notification Service might place your account in the SMS sandbox. In \n sandbox\n mode\n , you can send messages only to verified phone\n numbers. After you test your app while in the sandbox environment, you can move out\n of the sandbox and into production. For more information, see SMS message settings for Amazon Cognito user pools in the Amazon Cognito\n Developer Guide.

          \n
          ", + "smithy.api#documentation": "

          With this operation, your users can update one or more of their attributes with their\n own credentials. You authorize this API request with the user's access token. To delete\n an attribute from your user, submit the attribute in your API request with a blank\n value. Custom attribute values in this request must include the custom:\n prefix.

          \n

          Authorize this action with a signed-in user's access token. It must include the scope aws.cognito.signin.user.admin.

          \n \n

          Amazon Cognito doesn't evaluate Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you can't use IAM credentials to authorize requests, and you can't\n grant IAM permissions in policies. For more information about authorization models in\n Amazon Cognito, see Using the Amazon Cognito user pools API and user pool endpoints.

          \n
          \n \n

          This action might generate an SMS text message. Starting June 1, 2021, US telecom carriers\n require you to register an origination phone number before you can send SMS messages\n to US phone numbers. If you use SMS text messages in Amazon Cognito, you must register a\n phone number with Amazon Pinpoint.\n Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must\n receive SMS messages might not be able to sign up, activate their accounts, or sign\n in.

          \n

          If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Services service,\n Amazon Simple Notification Service might place your account in the SMS sandbox. In \n sandbox\n mode\n , you can send messages only to verified phone\n numbers. After you test your app while in the sandbox environment, you can move out\n of the sandbox and into production. For more information, see SMS message settings for Amazon Cognito user pools in the Amazon Cognito\n Developer Guide.

          \n
          ", "smithy.api#optionalAuth": {} } }, @@ -14559,6 +15912,9 @@ { "target": "com.amazonaws.cognitoidentityprovider#ConcurrentModificationException" }, + { + "target": "com.amazonaws.cognitoidentityprovider#FeatureUnavailableInTierException" + }, { "target": "com.amazonaws.cognitoidentityprovider#InternalErrorException" }, @@ -14580,6 +15936,9 @@ { "target": "com.amazonaws.cognitoidentityprovider#ResourceNotFoundException" }, + { + "target": "com.amazonaws.cognitoidentityprovider#TierChangeNotAllowedException" + }, { "target": "com.amazonaws.cognitoidentityprovider#TooManyRequestsException" }, @@ -14591,7 +15950,7 @@ } ], "traits": { - "smithy.api#documentation": "\n

          This action might generate an SMS text message. Starting June 1, 2021, US telecom carriers\n require you to register an origination phone number before you can send SMS messages\n to US phone numbers. If you use SMS text messages in Amazon Cognito, you must register a\n phone number with Amazon Pinpoint.\n Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must\n receive SMS messages might not be able to sign up, activate their accounts, or sign\n in.

          \n

          If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Servicesservice,\n Amazon Simple Notification Service might place your account in the SMS sandbox. In \n sandbox\n mode\n , you can send messages only to verified phone\n numbers. After you test your app while in the sandbox environment, you can move out\n of the sandbox and into production. For more information, see SMS message settings for Amazon Cognito user pools in the Amazon Cognito\n Developer Guide.

          \n
          \n

          Updates the specified user pool with the specified attributes. You can get a list of\n the current user pool settings using DescribeUserPool.

          \n \n

          If you don't provide a value for an attribute, Amazon Cognito sets it to its default value.

          \n
          \n \n

          Amazon Cognito evaluates Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you must use IAM credentials to authorize requests, and you must\n grant yourself the corresponding IAM permission in a policy.

          \n

          \n Learn more\n

          \n \n
          " + "smithy.api#documentation": "\n

          This action might generate an SMS text message. Starting June 1, 2021, US telecom carriers\n require you to register an origination phone number before you can send SMS messages\n to US phone numbers. If you use SMS text messages in Amazon Cognito, you must register a\n phone number with Amazon Pinpoint.\n Amazon Cognito uses the registered number automatically. Otherwise, Amazon Cognito users who must\n receive SMS messages might not be able to sign up, activate their accounts, or sign\n in.

          \n

          If you have never used SMS text messages with Amazon Cognito or any other Amazon Web Services service,\n Amazon Simple Notification Service might place your account in the SMS sandbox. In \n sandbox\n mode\n , you can send messages only to verified phone\n numbers. After you test your app while in the sandbox environment, you can move out\n of the sandbox and into production. For more information, see SMS message settings for Amazon Cognito user pools in the Amazon Cognito\n Developer Guide.

          \n
          \n

          Updates the specified user pool with the specified attributes. You can get a list of\n the current user pool settings using DescribeUserPool.

          \n \n

          If you don't provide a value for an attribute, Amazon Cognito sets it to its default value.

          \n
          \n \n

          Amazon Cognito evaluates Identity and Access Management (IAM) policies in requests for this API operation. For\n this operation, you must use IAM credentials to authorize requests, and you must\n grant yourself the corresponding IAM permission in a policy.

          \n

          \n Learn more\n

          \n \n
          " } }, "com.amazonaws.cognitoidentityprovider#UpdateUserPoolClient": { @@ -14695,13 +16054,13 @@ "ExplicitAuthFlows": { "target": "com.amazonaws.cognitoidentityprovider#ExplicitAuthFlowsListType", "traits": { - "smithy.api#documentation": "

          The authentication flows that you want your user pool client to support. For each app client in your user pool, you can sign in \nyour users with any combination of one or more flows, including with a user name and Secure Remote Password (SRP), a user name and \npassword, or a custom authentication process that you define with Lambda functions.

          \n \n

          If you don't specify a value for ExplicitAuthFlows, your user client supports ALLOW_REFRESH_TOKEN_AUTH, ALLOW_USER_SRP_AUTH, and ALLOW_CUSTOM_AUTH.

          \n
          \n

          Valid values include:

          \n
            \n
          • \n

            \n ALLOW_ADMIN_USER_PASSWORD_AUTH: Enable admin based user password\n authentication flow ADMIN_USER_PASSWORD_AUTH. This setting replaces\n the ADMIN_NO_SRP_AUTH setting. With this authentication flow, your app\n passes a user name and password to Amazon Cognito in the request, instead of using the Secure \n Remote Password (SRP) protocol to securely transmit the password.

            \n
          • \n
          • \n

            \n ALLOW_CUSTOM_AUTH: Enable Lambda trigger based\n authentication.

            \n
          • \n
          • \n

            \n ALLOW_USER_PASSWORD_AUTH: Enable user password-based\n authentication. In this flow, Amazon Cognito receives the password in the request instead\n of using the SRP protocol to verify passwords.

            \n
          • \n
          • \n

            \n ALLOW_USER_SRP_AUTH: Enable SRP-based authentication.

            \n
          • \n
          • \n

            \n ALLOW_REFRESH_TOKEN_AUTH: Enable authflow to refresh\n tokens.

            \n
          • \n
          \n

          In some environments, you will see the values ADMIN_NO_SRP_AUTH, CUSTOM_AUTH_FLOW_ONLY, or USER_PASSWORD_AUTH. \nYou can't assign these legacy ExplicitAuthFlows values to user pool clients at the same time as values that begin with ALLOW_,\nlike ALLOW_USER_SRP_AUTH.

          " + "smithy.api#documentation": "

          The authentication flows that you want your user pool client to support. For each app client in your user pool, you can sign in \nyour users with any combination of one or more flows, including with a user name and Secure Remote Password (SRP), a user name and \npassword, or a custom authentication process that you define with Lambda functions.

          \n \n

          If you don't specify a value for ExplicitAuthFlows, your user client supports ALLOW_REFRESH_TOKEN_AUTH, ALLOW_USER_SRP_AUTH, and ALLOW_CUSTOM_AUTH.

          \n
          \n

          Valid values include:

          \n
            \n
          • \n

            \n ALLOW_USER_AUTH: Enable selection-based sign-in\n with USER_AUTH. This setting covers username-password,\n secure remote password (SRP), passwordless, and passkey authentication.\n This authentiation flow can do username-password and SRP authentication\n without other ExplicitAuthFlows permitting them. For example\n users can complete an SRP challenge through USER_AUTH \n without the flow USER_SRP_AUTH being active for the app\n client. This flow doesn't include CUSTOM_AUTH.\n

            \n
          • \n
          • \n

            \n ALLOW_ADMIN_USER_PASSWORD_AUTH: Enable admin based user password\n authentication flow ADMIN_USER_PASSWORD_AUTH. This setting replaces\n the ADMIN_NO_SRP_AUTH setting. With this authentication flow, your app\n passes a user name and password to Amazon Cognito in the request, instead of using the Secure \n Remote Password (SRP) protocol to securely transmit the password.

            \n
          • \n
          • \n

            \n ALLOW_CUSTOM_AUTH: Enable Lambda trigger based\n authentication.

            \n
          • \n
          • \n

            \n ALLOW_USER_PASSWORD_AUTH: Enable user password-based\n authentication. In this flow, Amazon Cognito receives the password in the request instead\n of using the SRP protocol to verify passwords.

            \n
          • \n
          • \n

            \n ALLOW_USER_SRP_AUTH: Enable SRP-based authentication.

            \n
          • \n
          • \n

            \n ALLOW_REFRESH_TOKEN_AUTH: Enable authflow to refresh\n tokens.

            \n
          • \n
          \n

          In some environments, you will see the values ADMIN_NO_SRP_AUTH, CUSTOM_AUTH_FLOW_ONLY, or USER_PASSWORD_AUTH. \nYou can't assign these legacy ExplicitAuthFlows values to user pool clients at the same time as values that begin with ALLOW_,\nlike ALLOW_USER_SRP_AUTH.

          " } }, "SupportedIdentityProviders": { "target": "com.amazonaws.cognitoidentityprovider#SupportedIdentityProvidersListType", "traits": { - "smithy.api#documentation": "

          A list of provider names for the IdPs that this client supports. The following are\n supported: COGNITO, Facebook, Google,\n SignInWithApple, LoginWithAmazon, and the names of your\n own SAML and OIDC providers.

          " + "smithy.api#documentation": "

          A list of provider names for the identity providers (IdPs) that are supported on this\n client. The following are supported: COGNITO, Facebook,\n Google, SignInWithApple, and LoginWithAmazon.\n You can also specify the names that you configured for the SAML and OIDC IdPs in your\n user pool, for example MySAMLIdP or MyOIDCIdP.

          \n

          This setting applies to providers that you can access with the hosted\n UI and OAuth 2.0 authorization server. The removal of COGNITO\n from this list doesn't prevent authentication operations for local users with the\n user pools API in an Amazon Web Services SDK. The only way to prevent API-based authentication is to\n block access with a WAF rule.

          " } }, "CallbackURLs": { @@ -14762,7 +16121,7 @@ "EnablePropagateAdditionalUserContextData": { "target": "com.amazonaws.cognitoidentityprovider#WrappedBooleanType", "traits": { - "smithy.api#documentation": "

          Activates the propagation of additional user context data. For more information about\n propagation of user context data, see Adding advanced security to a user pool. If you don’t include this\n parameter, you can't send device fingerprint information, including source IP address,\n to Amazon Cognito advanced security. You can only activate\n EnablePropagateAdditionalUserContextData in an app client that has a\n client secret.

          " + "smithy.api#documentation": "

          Activates the propagation of additional user context data. For more information about\n propagation of user context data, see Adding advanced security to a user pool. If you don’t include this\n parameter, you can't send device fingerprint information, including source IP address,\n to Amazon Cognito advanced security. You can only activate\n EnablePropagateAdditionalUserContextData in an app client that has a\n client secret.

          " } }, "AuthSessionValidity": { @@ -14801,6 +16160,9 @@ "target": "com.amazonaws.cognitoidentityprovider#UpdateUserPoolDomainResponse" }, "errors": [ + { + "target": "com.amazonaws.cognitoidentityprovider#FeatureUnavailableInTierException" + }, { "target": "com.amazonaws.cognitoidentityprovider#InternalErrorException" }, @@ -14838,10 +16200,16 @@ "smithy.api#required": {} } }, + "ManagedLoginVersion": { + "target": "com.amazonaws.cognitoidentityprovider#WrappedIntegerType", + "traits": { + "smithy.api#documentation": "

          A version number that indicates the state of managed login for your domain. Version\n 1 is hosted UI (classic). Version 2 is the newer managed\n login with the branding designer. For more information, see Managed login.

          " + } + }, "CustomDomainConfig": { "target": "com.amazonaws.cognitoidentityprovider#CustomDomainConfigType", "traits": { - "smithy.api#documentation": "

          The configuration for a custom domain that hosts the sign-up and sign-in pages for\n your application. Use this object to specify an SSL certificate that is managed by\n ACM.

          ", + "smithy.api#documentation": "

          The configuration for a custom domain that hosts the sign-up and sign-in pages for\n your application. Use this object to specify an SSL certificate that is managed by\n ACM.

          \n

          When you create a custom domain, the passkey RP ID defaults to the custom domain. If\n you had a prefix domain active, this will cause passkey integration for your prefix\n domain to stop working due to a mismatch in RP ID. To keep the prefix domain passkey\n integration working, you can explicitly set RP ID to the prefix domain. Update the RP ID\n in a SetUserPoolMfaConfig request.

          ", "smithy.api#required": {} } } @@ -14854,6 +16222,12 @@ "com.amazonaws.cognitoidentityprovider#UpdateUserPoolDomainResponse": { "type": "structure", "members": { + "ManagedLoginVersion": { + "target": "com.amazonaws.cognitoidentityprovider#WrappedIntegerType", + "traits": { + "smithy.api#documentation": "

          A version number that indicates the state of managed login for your domain. Version\n 1 is hosted UI (classic). Version 2 is the newer managed\n login with the branding designer. For more information, see Managed login.

          " + } + }, "CloudFrontDomain": { "target": "com.amazonaws.cognitoidentityprovider#DomainType", "traits": { @@ -14983,6 +16357,18 @@ "traits": { "smithy.api#documentation": "

          The available verified method a user can use to recover their password when they call\n ForgotPassword. You can use this setting to define a preferred method\n when a user has more than one method available. With this setting, SMS doesn't qualify\n for a valid password recovery mechanism if the user also has SMS multi-factor\n authentication (MFA) activated. In the absence of this setting, Amazon Cognito uses the legacy\n behavior to determine the recovery method where SMS is preferred through email.

          " } + }, + "PoolName": { + "target": "com.amazonaws.cognitoidentityprovider#UserPoolNameType", + "traits": { + "smithy.api#documentation": "

          The updated name of your user pool.

          " + } + }, + "UserPoolTier": { + "target": "com.amazonaws.cognitoidentityprovider#UserPoolTierType", + "traits": { + "smithy.api#documentation": "

          The user pool feature plan, or tier. This parameter determines the\n eligibility of the user pool for features like managed login, access-token\n customization, and threat protection. Defaults to ESSENTIALS.

          " + } } }, "traits": { @@ -15009,7 +16395,7 @@ } }, "traits": { - "smithy.api#documentation": "

          The settings for updates to user attributes. These settings include the property AttributesRequireVerificationBeforeUpdate,\na user-pool setting that tells Amazon Cognito how to handle changes to the value of your users' email address and phone number attributes. For\nmore information, see \nVerifying updates to email addresses and phone numbers.

          " + "smithy.api#documentation": "

          The settings for updates to user attributes. These settings include the property AttributesRequireVerificationBeforeUpdate,\na user-pool setting that tells Amazon Cognito how to handle changes to the value of your users' email address and phone number attributes. For\nmore information, see \nVerifying updates to email addresses and phone numbers.

          \n

          This data type is a request and response parameter of CreateUserPool and UpdateUserPool, and a response parameter of DescribeUserPool.

          " } }, "com.amazonaws.cognitoidentityprovider#UserContextDataType": { @@ -15029,7 +16415,7 @@ } }, "traits": { - "smithy.api#documentation": "

          Contextual data, such as the user's device fingerprint, IP address, or location, used\n for evaluating the risk of an unexpected event by Amazon Cognito advanced security.

          ", + "smithy.api#documentation": "

          Contextual data, such as the user's device fingerprint, IP address, or location, used\n for evaluating the risk of an unexpected event by Amazon Cognito advanced security.

          \n

          This data type is a request parameter of public-client authentication operations like\n InitiateAuth and RespondToAuthChallenge.

          ", "smithy.api#sensitive": {} } }, @@ -15137,25 +16523,25 @@ "JobName": { "target": "com.amazonaws.cognitoidentityprovider#UserImportJobNameType", "traits": { - "smithy.api#documentation": "

          The job name for the user import job.

          " + "smithy.api#documentation": "

          The friendly name of the user import job.

          " } }, "JobId": { "target": "com.amazonaws.cognitoidentityprovider#UserImportJobIdType", "traits": { - "smithy.api#documentation": "

          The job ID for the user import job.

          " + "smithy.api#documentation": "

          The ID of the user import job.

          " } }, "UserPoolId": { "target": "com.amazonaws.cognitoidentityprovider#UserPoolIdType", "traits": { - "smithy.api#documentation": "

          The user pool ID for the user pool that the users are being imported into.

          " + "smithy.api#documentation": "

          The ID of the user pool that the users are being imported into.

          " } }, "PreSignedUrl": { "target": "com.amazonaws.cognitoidentityprovider#PreSignedUrlType", "traits": { - "smithy.api#documentation": "

          The pre-signed URL to be used to upload the .csv file.

          " + "smithy.api#documentation": "

          The pre-signed URL target for uploading the CSV file.

          " } }, "CreationDate": { @@ -15217,7 +16603,7 @@ } }, "traits": { - "smithy.api#documentation": "

          The user import job type.

          " + "smithy.api#documentation": "

          A user import job in a user pool. Describes the status of user import with a CSV file.\n For more information, see Importing users into user pools from a CSV file.

          \n

          This data type is a request parameter of CreateUserImportJob, DescribeUserImportJob, ListUserImportJobs, StartUserImportJob, and StopUserImportJob.

          " } }, "com.amazonaws.cognitoidentityprovider#UserImportJobsListType": { @@ -15305,7 +16691,7 @@ "AdvancedSecurityMode": { "target": "com.amazonaws.cognitoidentityprovider#AdvancedSecurityModeType", "traits": { - "smithy.api#documentation": "

          The operating mode of advanced security features for standard authentication types\n in your user pool, including username-password and secure remote password (SRP)\n authentication.\n

          ", + "smithy.api#documentation": "

          The operating mode of advanced security features for standard authentication types in\n your user pool, including username-password and secure remote password (SRP)\n authentication.

          ", "smithy.api#required": {} } }, @@ -15317,7 +16703,7 @@ } }, "traits": { - "smithy.api#documentation": "

          User pool add-ons. Contains settings for activation of advanced security features. To\n log user security information but take no action, set to AUDIT. To\n configure automatic security responses to risky traffic to your user pool, set to\n ENFORCED.

          \n

          For more information, see Adding advanced security to a user pool.

          " + "smithy.api#documentation": "

          User pool add-ons. Contains settings for activation of advanced security features. To\n log user security information but take no action, set to AUDIT. To\n configure automatic security responses to risky traffic to your user pool, set to\n ENFORCED.

          \n

          For more information, see Adding advanced security to a user pool.

          \n

          This data type is a request and response parameter of CreateUserPool and UpdateUserPool, and a response parameter of DescribeUserPool.

          " } }, "com.amazonaws.cognitoidentityprovider#UserPoolClientDescription": { @@ -15326,24 +16712,24 @@ "ClientId": { "target": "com.amazonaws.cognitoidentityprovider#ClientIdType", "traits": { - "smithy.api#documentation": "

          The ID of the client associated with the user pool.

          " + "smithy.api#documentation": "

          The app client ID.

          " } }, "UserPoolId": { "target": "com.amazonaws.cognitoidentityprovider#UserPoolIdType", "traits": { - "smithy.api#documentation": "

          The user pool ID for the user pool where you want to describe the user pool\n client.

          " + "smithy.api#documentation": "

          The ID of the user pool that's associated with the app client.

          " } }, "ClientName": { "target": "com.amazonaws.cognitoidentityprovider#ClientNameType", "traits": { - "smithy.api#documentation": "

          The client name from the user pool client description.

          " + "smithy.api#documentation": "

          The app client name.

          " } } }, "traits": { - "smithy.api#documentation": "

          The description of the user pool client.

          " + "smithy.api#documentation": "

          A short description of a user pool app client.

          \n

          This data type is a response parameter of ListUserPoolClients.

          " } }, "com.amazonaws.cognitoidentityprovider#UserPoolClientListType": { @@ -15358,25 +16744,25 @@ "UserPoolId": { "target": "com.amazonaws.cognitoidentityprovider#UserPoolIdType", "traits": { - "smithy.api#documentation": "

          The user pool ID for the user pool client.

          " + "smithy.api#documentation": "

          The ID of the user pool associated with the app client.

          " } }, "ClientName": { "target": "com.amazonaws.cognitoidentityprovider#ClientNameType", "traits": { - "smithy.api#documentation": "

          The client name from the user pool request of the client type.

          " + "smithy.api#documentation": "

          The name of the app client.

          " } }, "ClientId": { "target": "com.amazonaws.cognitoidentityprovider#ClientIdType", "traits": { - "smithy.api#documentation": "

          The ID of the client associated with the user pool.

          " + "smithy.api#documentation": "

          The ID of the app client.

          " } }, "ClientSecret": { "target": "com.amazonaws.cognitoidentityprovider#ClientSecretType", "traits": { - "smithy.api#documentation": "

          The client secret from the user pool request of the client type.

          " + "smithy.api#documentation": "

          The app client secret.

          " } }, "LastModifiedDate": { @@ -15413,7 +16799,7 @@ "TokenValidityUnits": { "target": "com.amazonaws.cognitoidentityprovider#TokenValidityUnitsType", "traits": { - "smithy.api#documentation": "

          The time units used to specify the token validity times of each token type: ID,\n access, and refresh.

          " + "smithy.api#documentation": "

          The time units that, with IdTokenValidity,\n AccessTokenValidity, and RefreshTokenValidity, set and\n display the duration of ID, access, and refresh tokens for an app client. You can assign\n a separate token validity unit to each type of token.

          " } }, "ReadAttributes": { @@ -15431,13 +16817,13 @@ "ExplicitAuthFlows": { "target": "com.amazonaws.cognitoidentityprovider#ExplicitAuthFlowsListType", "traits": { - "smithy.api#documentation": "

          The authentication flows that you want your user pool client to support. For each app client in your user pool, you can sign in \nyour users with any combination of one or more flows, including with a user name and Secure Remote Password (SRP), a user name and \npassword, or a custom authentication process that you define with Lambda functions.

          \n \n

          If you don't specify a value for ExplicitAuthFlows, your user client supports ALLOW_REFRESH_TOKEN_AUTH, ALLOW_USER_SRP_AUTH, and ALLOW_CUSTOM_AUTH.

          \n
          \n

          Valid values include:

          \n
            \n
          • \n

            \n ALLOW_ADMIN_USER_PASSWORD_AUTH: Enable admin based user password\n authentication flow ADMIN_USER_PASSWORD_AUTH. This setting replaces\n the ADMIN_NO_SRP_AUTH setting. With this authentication flow, your app\n passes a user name and password to Amazon Cognito in the request, instead of using the Secure \n Remote Password (SRP) protocol to securely transmit the password.

            \n
          • \n
          • \n

            \n ALLOW_CUSTOM_AUTH: Enable Lambda trigger based\n authentication.

            \n
          • \n
          • \n

            \n ALLOW_USER_PASSWORD_AUTH: Enable user password-based\n authentication. In this flow, Amazon Cognito receives the password in the request instead\n of using the SRP protocol to verify passwords.

            \n
          • \n
          • \n

            \n ALLOW_USER_SRP_AUTH: Enable SRP-based authentication.

            \n
          • \n
          • \n

            \n ALLOW_REFRESH_TOKEN_AUTH: Enable authflow to refresh\n tokens.

            \n
          • \n
          \n

          In some environments, you will see the values ADMIN_NO_SRP_AUTH, CUSTOM_AUTH_FLOW_ONLY, or USER_PASSWORD_AUTH. \nYou can't assign these legacy ExplicitAuthFlows values to user pool clients at the same time as values that begin with ALLOW_,\nlike ALLOW_USER_SRP_AUTH.

          " + "smithy.api#documentation": "

          The authentication flows that you want your user pool client to support. For each app client in your user pool, you can sign in \nyour users with any combination of one or more flows, including with a user name and Secure Remote Password (SRP), a user name and \npassword, or a custom authentication process that you define with Lambda functions.

          \n \n

          If you don't specify a value for ExplicitAuthFlows, your user client supports ALLOW_REFRESH_TOKEN_AUTH, ALLOW_USER_SRP_AUTH, and ALLOW_CUSTOM_AUTH.

          \n
          \n

          Valid values include:

          \n
            \n
          • \n

            \n ALLOW_USER_AUTH: Enable selection-based sign-in\n with USER_AUTH. This setting covers username-password,\n secure remote password (SRP), passwordless, and passkey authentication.\n This authentiation flow can do username-password and SRP authentication\n without other ExplicitAuthFlows permitting them. For example\n users can complete an SRP challenge through USER_AUTH \n without the flow USER_SRP_AUTH being active for the app\n client. This flow doesn't include CUSTOM_AUTH.\n

            \n
          • \n
          • \n

            \n ALLOW_ADMIN_USER_PASSWORD_AUTH: Enable admin based user password\n authentication flow ADMIN_USER_PASSWORD_AUTH. This setting replaces\n the ADMIN_NO_SRP_AUTH setting. With this authentication flow, your app\n passes a user name and password to Amazon Cognito in the request, instead of using the Secure \n Remote Password (SRP) protocol to securely transmit the password.

            \n
          • \n
          • \n

            \n ALLOW_CUSTOM_AUTH: Enable Lambda trigger based\n authentication.

            \n
          • \n
          • \n

            \n ALLOW_USER_PASSWORD_AUTH: Enable user password-based\n authentication. In this flow, Amazon Cognito receives the password in the request instead\n of using the SRP protocol to verify passwords.

            \n
          • \n
          • \n

            \n ALLOW_USER_SRP_AUTH: Enable SRP-based authentication.

            \n
          • \n
          • \n

            \n ALLOW_REFRESH_TOKEN_AUTH: Enable authflow to refresh\n tokens.

            \n
          • \n
          \n

          In some environments, you will see the values ADMIN_NO_SRP_AUTH, CUSTOM_AUTH_FLOW_ONLY, or USER_PASSWORD_AUTH. \nYou can't assign these legacy ExplicitAuthFlows values to user pool clients at the same time as values that begin with ALLOW_,\nlike ALLOW_USER_SRP_AUTH.

          " } }, "SupportedIdentityProviders": { "target": "com.amazonaws.cognitoidentityprovider#SupportedIdentityProvidersListType", "traits": { - "smithy.api#documentation": "

          A list of provider names for the IdPs that this client supports. The following are\n supported: COGNITO, Facebook, Google,\n SignInWithApple, LoginWithAmazon, and the names of your\n own SAML and OIDC providers.

          " + "smithy.api#documentation": "

          A list of provider names for the identity providers (IdPs) that are supported on this\n client. The following are supported: COGNITO, Facebook,\n Google, SignInWithApple, and LoginWithAmazon.\n You can also specify the names that you configured for the SAML and OIDC IdPs in your\n user pool, for example MySAMLIdP or MyOIDCIdP.

          \n

          This setting applies to providers that you can access with the hosted\n UI and OAuth 2.0 authorization server. The removal of COGNITO\n from this list doesn't prevent authentication operations for local users with the\n user pools API in an Amazon Web Services SDK. The only way to prevent API-based authentication is to\n block access with a WAF rule.

          " } }, "CallbackURLs": { @@ -15461,13 +16847,13 @@ "AllowedOAuthFlows": { "target": "com.amazonaws.cognitoidentityprovider#OAuthFlowsType", "traits": { - "smithy.api#documentation": "

          The allowed OAuth flows.

          \n
          \n
          code
          \n
          \n

          Use a code grant flow, which provides an authorization code as the\n response. This code can be exchanged for access tokens with the\n /oauth2/token endpoint.

          \n
          \n
          implicit
          \n
          \n

          Issue the access token (and, optionally, ID token, based on scopes)\n directly to your user.

          \n
          \n
          client_credentials
          \n
          \n

          Issue the access token from the /oauth2/token endpoint\n directly to a non-person user using a combination of the client ID and\n client secret.

          \n
          \n
          " + "smithy.api#documentation": "

          The OAuth grant types that you want your app client to generate. To create an app\n client that generates client credentials grants, you must add\n client_credentials as the only allowed OAuth flow.

          \n
          \n
          code
          \n
          \n

          Use a code grant flow, which provides an authorization code as the\n response. This code can be exchanged for access tokens with the\n /oauth2/token endpoint.

          \n
          \n
          implicit
          \n
          \n

          Issue the access token (and, optionally, ID token, based on scopes)\n directly to your user.

          \n
          \n
          client_credentials
          \n
          \n

          Issue the access token from the /oauth2/token endpoint\n directly to a non-person user using a combination of the client ID and\n client secret.

          \n
          \n
          " } }, "AllowedOAuthScopes": { "target": "com.amazonaws.cognitoidentityprovider#ScopeListType", "traits": { - "smithy.api#documentation": "

          The OAuth scopes that your app client supports. Possible values that OAuth provides\n are phone, email, openid, and\n profile. Possible values that Amazon Web Services provides are\n aws.cognito.signin.user.admin. Amazon Cognito also supports custom scopes that\n you create in Resource Servers.

          " + "smithy.api#documentation": "

          The OAuth 2.0 scopes that you want your app client to support. Can include standard\n OAuth scopes like phone, email, openid, and\n profile. Can also include the\n aws.cognito.signin.user.admin scope that authorizes user profile\n self-service operations and custom scopes from resource servers.

          " } }, "AllowedOAuthFlowsUserPoolClient": { @@ -15480,7 +16866,7 @@ "AnalyticsConfiguration": { "target": "com.amazonaws.cognitoidentityprovider#AnalyticsConfigurationType", "traits": { - "smithy.api#documentation": "

          The Amazon Pinpoint analytics configuration for the user pool client.

          \n \n

          Amazon Cognito user pools only support sending events to Amazon Pinpoint projects in the US East\n (N. Virginia) us-east-1 Region, regardless of the Region where the user pool\n resides.

          \n
          " + "smithy.api#documentation": "

          The user pool analytics configuration for collecting metrics and sending them to your\n Amazon Pinpoint campaign.

          \n \n

          In Amazon Web Services Regions where Amazon Pinpoint isn't available, user pools only support sending\n events to Amazon Pinpoint projects in Amazon Web Services Region us-east-1. In Regions where Amazon Pinpoint is\n available, user pools support sending events to Amazon Pinpoint projects within that same\n Region.

          \n
          " } }, "PreventUserExistenceErrors": { @@ -15509,7 +16895,7 @@ } }, "traits": { - "smithy.api#documentation": "

          Contains information about a user pool client.

          " + "smithy.api#documentation": "

          The configuration of a user pool client.

          \n

          This data type is a request parameter of CreateUserPoolClient and UpdateUserPoolClient, and a response parameter of\n DescribeUserPoolClient.

          " } }, "com.amazonaws.cognitoidentityprovider#UserPoolDescriptionType": { @@ -15518,19 +16904,19 @@ "Id": { "target": "com.amazonaws.cognitoidentityprovider#UserPoolIdType", "traits": { - "smithy.api#documentation": "

          The ID in a user pool description.

          " + "smithy.api#documentation": "

          The user pool ID.

          " } }, "Name": { "target": "com.amazonaws.cognitoidentityprovider#UserPoolNameType", "traits": { - "smithy.api#documentation": "

          The name in a user pool description.

          " + "smithy.api#documentation": "

          The user pool name.

          " } }, "LambdaConfig": { "target": "com.amazonaws.cognitoidentityprovider#LambdaConfigType", "traits": { - "smithy.api#documentation": "

          The Lambda configuration information in a user pool description.

          " + "smithy.api#documentation": "

          A collection of user pool Lambda triggers. Amazon Cognito invokes triggers at several possible\n stages of user pool operations. Triggers can modify the outcome of the operations that\n invoked them.

          " } }, "Status": { @@ -15539,7 +16925,7 @@ "smithy.api#deprecated": { "message": "This property is no longer available." }, - "smithy.api#documentation": "

          The user pool status in a user pool description.

          " + "smithy.api#documentation": "

          The user pool status.

          " } }, "LastModifiedDate": { @@ -15556,7 +16942,7 @@ } }, "traits": { - "smithy.api#documentation": "

          A user pool description.

          " + "smithy.api#documentation": "

          A short description of a user pool.

          \n

          This data type is a response parameter of ListUserPools.

          " } }, "com.amazonaws.cognitoidentityprovider#UserPoolIdType": { @@ -15614,12 +17000,18 @@ "PasswordPolicy": { "target": "com.amazonaws.cognitoidentityprovider#PasswordPolicyType", "traits": { - "smithy.api#documentation": "

          The password policy.

          " + "smithy.api#documentation": "

          The password policy settings for a user pool, including complexity, history, and\n length requirements.

          " + } + }, + "SignInPolicy": { + "target": "com.amazonaws.cognitoidentityprovider#SignInPolicyType", + "traits": { + "smithy.api#documentation": "

          The policy for allowed types of authentication in a user pool.

          " } } }, "traits": { - "smithy.api#documentation": "

          The policy associated with a user pool.

          " + "smithy.api#documentation": "

          A list of user pool policies. Contains the policy that sets password-complexity\n requirements.

          \n

          This data type is a request and response parameter of CreateUserPool and UpdateUserPool, and a response parameter of DescribeUserPool.

          " } }, "com.amazonaws.cognitoidentityprovider#UserPoolTaggingException": { @@ -15650,6 +17042,29 @@ "target": "com.amazonaws.cognitoidentityprovider#TagValueType" } }, + "com.amazonaws.cognitoidentityprovider#UserPoolTierType": { + "type": "enum", + "members": { + "LITE": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "LITE" + } + }, + "ESSENTIALS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "ESSENTIALS" + } + }, + "PLUS": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "PLUS" + } + } + } + }, "com.amazonaws.cognitoidentityprovider#UserPoolType": { "type": "structure", "members": { @@ -15668,7 +17083,7 @@ "Policies": { "target": "com.amazonaws.cognitoidentityprovider#UserPoolPolicyType", "traits": { - "smithy.api#documentation": "

          The policies associated with the user pool.

          " + "smithy.api#documentation": "

          A list of user pool policies. Contains the policy that sets password-complexity\n requirements.

          " } }, "DeletionProtection": { @@ -15680,7 +17095,7 @@ "LambdaConfig": { "target": "com.amazonaws.cognitoidentityprovider#LambdaConfigType", "traits": { - "smithy.api#documentation": "

          The Lambda triggers associated with the user pool.

          " + "smithy.api#documentation": "

          A collection of user pool Lambda triggers. Amazon Cognito invokes triggers at several possible\n stages of user pool operations. Triggers can modify the outcome of the operations that\n invoked them.

          " } }, "Status": { @@ -15707,7 +17122,7 @@ "SchemaAttributes": { "target": "com.amazonaws.cognitoidentityprovider#SchemaAttributesListType", "traits": { - "smithy.api#documentation": "

          A list of the user attributes and their properties in your user pool. The attribute\n schema contains standard attributes, custom attributes with a custom:\n prefix, and developer attributes with a dev: prefix. For more information,\n see User pool\n attributes.

          \n

          Developer-only attributes are a legacy feature of user pools, are read-only to all app\n clients. You can create and update developer-only attributes only with IAM-authenticated\n API operations. Use app client read/write permissions instead.

          " + "smithy.api#documentation": "

          A list of the user attributes and their properties in your user pool. The attribute\n schema contains standard attributes, custom attributes with a custom:\n prefix, and developer attributes with a dev: prefix. For more information,\n see User pool\n attributes.

          \n

          Developer-only attributes are a legacy feature of user pools, and are read-only to all\n app clients. You can create and update developer-only attributes only with\n IAM-authenticated API operations. Use app client read/write permissions instead.

          " } }, "AutoVerifiedAttributes": { @@ -15719,7 +17134,7 @@ "AliasAttributes": { "target": "com.amazonaws.cognitoidentityprovider#AliasAttributesListType", "traits": { - "smithy.api#documentation": "

          The attributes that are aliased in a user pool.

          " + "smithy.api#documentation": "

          Attributes supported as an alias for this user pool. An alias is an attribute that\n users can enter as an alternative username. Possible values: phone_number, email, or preferred_username.

          " } }, "UsernameAttributes": { @@ -15749,7 +17164,7 @@ "VerificationMessageTemplate": { "target": "com.amazonaws.cognitoidentityprovider#VerificationMessageTemplateType", "traits": { - "smithy.api#documentation": "

          The template for verification messages.

          " + "smithy.api#documentation": "

          The template for the verification message that your user pool delivers to users who\n set an email address or phone number attribute.

          " } }, "SmsAuthenticationMessage": { @@ -15792,7 +17207,7 @@ "SmsConfiguration": { "target": "com.amazonaws.cognitoidentityprovider#SmsConfigurationType", "traits": { - "smithy.api#documentation": "

          The SMS configuration with the settings that your Amazon Cognito user pool must use to send an\n SMS message from your Amazon Web Services account through Amazon Simple Notification Service. To send SMS messages\n with Amazon SNS in the Amazon Web Services Region that you want, the Amazon Cognito user pool uses an Identity and Access Management\n (IAM) role in your Amazon Web Services account.

          " + "smithy.api#documentation": "

          User pool configuration for delivery of SMS messages with Amazon Simple Notification Service. To send SMS\n messages with Amazon SNS in the Amazon Web Services Region that you want, the Amazon Cognito user pool uses an\n Identity and Access Management (IAM) role in your Amazon Web Services account.

          " } }, "UserPoolTags": { @@ -15840,13 +17255,13 @@ "UsernameConfiguration": { "target": "com.amazonaws.cognitoidentityprovider#UsernameConfigurationType", "traits": { - "smithy.api#documentation": "

          Case sensitivity of the username input for the selected sign-in option. For example,\n when case sensitivity is set to False, users can sign in using either\n \"username\" or \"Username\". This configuration is immutable once it has been set. For more\n information, see UsernameConfigurationType.

          " + "smithy.api#documentation": "

          Case sensitivity of the username input for the selected sign-in option. When case\n sensitivity is set to False (case insensitive), users can sign in with any\n combination of capital and lowercase letters. For example, username,\n USERNAME, or UserName, or for email,\n email@example.com or EMaiL@eXamplE.Com. For most use\n cases, set case sensitivity to False (case insensitive) as a best practice.\n When usernames and email addresses are case insensitive, Amazon Cognito treats any variation in\n case as the same user, and prevents a case variation from being assigned to the same\n attribute for a different user.

          \n

          This configuration is immutable after you set it. For more information, see UsernameConfigurationType.

          " } }, "Arn": { "target": "com.amazonaws.cognitoidentityprovider#ArnType", "traits": { - "smithy.api#documentation": "

          The Amazon Resource Name (ARN) for the user pool.

          " + "smithy.api#documentation": "

          The Amazon Resource Name (ARN) of the user pool.

          " } }, "AccountRecoverySetting": { @@ -15854,10 +17269,16 @@ "traits": { "smithy.api#documentation": "

          The available verified method a user can use to recover their password when they call\n ForgotPassword. You can use this setting to define a preferred method\n when a user has more than one method available. With this setting, SMS doesn't qualify\n for a valid password recovery mechanism if the user also has SMS multi-factor\n authentication (MFA) activated. In the absence of this setting, Amazon Cognito uses the legacy\n behavior to determine the recovery method where SMS is preferred through email.

          " } + }, + "UserPoolTier": { + "target": "com.amazonaws.cognitoidentityprovider#UserPoolTierType", + "traits": { + "smithy.api#documentation": "

          The user pool feature plan, or tier. This parameter determines the\n eligibility of the user pool for features like managed login, access-token\n customization, and threat protection. Defaults to ESSENTIALS.

          " + } } }, "traits": { - "smithy.api#documentation": "

          A container for information about the user pool.

          " + "smithy.api#documentation": "

          The configuration of a user pool.

          \n

          This data type is a response parameter of CreateUserPool, UpdateUserPool, and DescribeUserPool.

          " } }, "com.amazonaws.cognitoidentityprovider#UserStatusType": { @@ -15919,19 +17340,19 @@ "Username": { "target": "com.amazonaws.cognitoidentityprovider#UsernameType", "traits": { - "smithy.api#documentation": "

          The user name of the user you want to describe.

          " + "smithy.api#documentation": "

          The user's username.

          " } }, "Attributes": { "target": "com.amazonaws.cognitoidentityprovider#AttributeListType", "traits": { - "smithy.api#documentation": "

          A container with information about the user type attributes.

          " + "smithy.api#documentation": "

          Names and values of a user's attributes, for example email.

          " } }, "UserCreateDate": { "target": "com.amazonaws.cognitoidentityprovider#DateType", "traits": { - "smithy.api#documentation": "

          The creation date of the user.

          " + "smithy.api#documentation": "

          The date and time when the item was created. Amazon Cognito returns this timestamp in UNIX epoch time format. Your SDK might render the output in a \nhuman-readable format like ISO 8601 or a Java Date object.

          " } }, "UserLastModifiedDate": { @@ -15944,7 +17365,7 @@ "target": "com.amazonaws.cognitoidentityprovider#BooleanType", "traits": { "smithy.api#default": false, - "smithy.api#documentation": "

          Specifies whether the user is enabled.

          " + "smithy.api#documentation": "

          Indicates whether the user's account is enabled or disabled.

          " } }, "UserStatus": { @@ -15956,12 +17377,29 @@ "MFAOptions": { "target": "com.amazonaws.cognitoidentityprovider#MFAOptionListType", "traits": { - "smithy.api#documentation": "

          The MFA options for the user.

          " + "smithy.api#documentation": "

          The user's MFA configuration.

          " } } }, "traits": { - "smithy.api#documentation": "

          A user profile in a Amazon Cognito user pool.

          " + "smithy.api#documentation": "

          A user profile in a Amazon Cognito user pool.

          \n

          This data type is a response parameter to AdminCreateUser and ListUsers.

          " + } + }, + "com.amazonaws.cognitoidentityprovider#UserVerificationType": { + "type": "enum", + "members": { + "REQUIRED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "required" + } + }, + "PREFERRED": { + "target": "smithy.api#Unit", + "traits": { + "smithy.api#enumValue": "preferred" + } + } } }, "com.amazonaws.cognitoidentityprovider#UsernameAttributeType": { @@ -15993,13 +17431,13 @@ "CaseSensitive": { "target": "com.amazonaws.cognitoidentityprovider#WrappedBooleanType", "traits": { - "smithy.api#documentation": "

          Specifies whether user name case sensitivity will be applied for all users in the user\n pool through Amazon Cognito APIs. For most use cases, set case sensitivity to False\n (case insensitive) as a best practice. When usernames and email addresses are case\n insensitive, users can sign in as the same user when they enter a different\n capitalization of their user name.

          \n

          Valid values include:

          \n
          \n
          True
          \n
          \n

          Enables case sensitivity for all username input. When this option is set\n to True, users must sign in using the exact capitalization of\n their given username, such as “UserName”. This is the default value.

          \n
          \n
          False
          \n
          \n

          Enables case insensitivity for all username input. For example, when this\n option is set to False, users can sign in using\n username, USERNAME, or UserName.\n This option also enables both preferred_username and\n email alias to be case insensitive, in addition to the\n username attribute.

          \n
          \n
          ", + "smithy.api#documentation": "

          Specifies whether user name case sensitivity will be applied for all users in the user\n pool through Amazon Cognito APIs. For most use cases, set case sensitivity to False\n (case insensitive) as a best practice. When usernames and email addresses are case\n insensitive, users can sign in as the same user when they enter a different\n capitalization of their user name.

          \n

          Valid values include:

          \n
          \n
          true
          \n
          \n

          Enables case sensitivity for all username input. When this option is set\n to true, users must sign in using the exact capitalization of\n their given username, such as “UserName”. This is the default value.

          \n
          \n
          false
          \n
          \n

          Enables case insensitivity for all username input. For example, when this\n option is set to false, users can sign in using\n username, USERNAME, or UserName.\n This option also enables both preferred_username and\n email alias to be case insensitive, in addition to the\n username attribute.

          \n
          \n
          ", "smithy.api#required": {} } } }, "traits": { - "smithy.api#documentation": "

          The username configuration type.

          " + "smithy.api#documentation": "

          The configuration of a user pool for username case sensitivity.

          \n

          This data type is a request and response parameter of CreateUserPool and UpdateUserPool, and a response parameter of DescribeUserPool.

          " } }, "com.amazonaws.cognitoidentityprovider#UsernameExistsException": { @@ -16071,12 +17509,12 @@ "DefaultEmailOption": { "target": "com.amazonaws.cognitoidentityprovider#DefaultEmailOptionType", "traits": { - "smithy.api#documentation": "

          The default email option.

          " + "smithy.api#documentation": "

          The configuration of verification emails to contain a clickable link or a verification\n code.

          \n

          For link, your template body must contain link text in the format {##Click\n here##}. \"Click here\" in the example is a customizable string. For code, your\n template body must contain a code placeholder in the format {####}.

          " } } }, "traits": { - "smithy.api#documentation": "

          The template for verification messages.

          " + "smithy.api#documentation": "

          The template for the verification message that your user pool delivers to users who\n set an email address or phone number attribute.

          \n

          This data type is a request and response parameter of CreateUserPool and UpdateUserPool, and a response parameter of DescribeUserPool.

          " } }, "com.amazonaws.cognitoidentityprovider#VerifiedAttributeType": { @@ -16320,8 +17758,198 @@ "smithy.api#output": {} } }, + "com.amazonaws.cognitoidentityprovider#WebAuthnAuthenticatorAttachmentType": { + "type": "string" + }, + "com.amazonaws.cognitoidentityprovider#WebAuthnAuthenticatorTransportType": { + "type": "string" + }, + "com.amazonaws.cognitoidentityprovider#WebAuthnAuthenticatorTransportsList": { + "type": "list", + "member": { + "target": "com.amazonaws.cognitoidentityprovider#WebAuthnAuthenticatorTransportType" + } + }, + "com.amazonaws.cognitoidentityprovider#WebAuthnChallengeNotFoundException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.cognitoidentityprovider#MessageType" + } + }, + "traits": { + "smithy.api#documentation": "

          This exception is thrown when the challenge from StartWebAuthn\n registration has expired.

          ", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, + "com.amazonaws.cognitoidentityprovider#WebAuthnClientMismatchException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.cognitoidentityprovider#MessageType" + } + }, + "traits": { + "smithy.api#documentation": "

          This exception is thrown when the access token is for a different client than the one\n in the original StartWebAuthnRegistration request.

          ", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, + "com.amazonaws.cognitoidentityprovider#WebAuthnConfigurationMissingException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.cognitoidentityprovider#MessageType" + } + }, + "traits": { + "smithy.api#documentation": "

          This exception is thrown when a user pool doesn't have a configured relying party\n id or a user pool domain.

          ", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, + "com.amazonaws.cognitoidentityprovider#WebAuthnConfigurationType": { + "type": "structure", + "members": { + "RelyingPartyId": { + "target": "com.amazonaws.cognitoidentityprovider#RelyingPartyIdType", + "traits": { + "smithy.api#documentation": "

          Sets or displays the authentication domain, typically your user pool domain, that\n passkey providers must use as a relying party (RP) in their configuration.

          \n

          Under the following conditions, the passkey relying party ID must be the\n fully-qualified domain name of your custom domain:

          \n
            \n
          • \n

            The user pool is configured for passkey authentication.

            \n
          • \n
          • \n

            The user pool has a custom domain, whether or not it also has a prefix\n domain.

            \n
          • \n
          • \n

            Your application performs authentication with managed login or the classic\n hosted UI.

            \n
          • \n
          " + } + }, + "UserVerification": { + "target": "com.amazonaws.cognitoidentityprovider#UserVerificationType", + "traits": { + "smithy.api#documentation": "

          Sets or displays your user-pool treatment for MFA with a passkey. You can override\n other MFA options and require passkey MFA, or you can set it as preferred. When passkey\n MFA is preferred, the hosted UI encourages users to register a passkey at\n sign-in.

          " + } + } + }, + "traits": { + "smithy.api#documentation": "

          Settings for multi-factor authentication (MFA) with passkey, or webauthN, biometric\n and security-key devices in a user pool. Configures the following:

          \n
            \n
          • \n

            Configuration at the user-pool level for whether you want to require passkey\n configuration as an MFA factor, or include it as a choice.

            \n
          • \n
          • \n

            The user pool relying-party ID. This is the user pool domain that user's\n passkey providers should trust as a receiver of passkey authentication.

            \n
          • \n
          • \n

            The providers that you want to allow as origins for passkey\n authentication.

            \n
          • \n
          \n

          This data type is a request parameter of SetUserPoolMfaConfig and a response parameter of GetUserPoolMfaConfig.

          " + } + }, + "com.amazonaws.cognitoidentityprovider#WebAuthnCredentialDescription": { + "type": "structure", + "members": { + "CredentialId": { + "target": "com.amazonaws.cognitoidentityprovider#StringType", + "traits": { + "smithy.api#documentation": "

          The unique identifier of the passkey credential.

          ", + "smithy.api#required": {} + } + }, + "FriendlyCredentialName": { + "target": "com.amazonaws.cognitoidentityprovider#StringType", + "traits": { + "smithy.api#documentation": "

          An automatically-generated friendly name for the passkey credential.

          ", + "smithy.api#required": {} + } + }, + "RelyingPartyId": { + "target": "com.amazonaws.cognitoidentityprovider#StringType", + "traits": { + "smithy.api#documentation": "

          The relying-party ID of the provider for the passkey credential.

          ", + "smithy.api#required": {} + } + }, + "AuthenticatorAttachment": { + "target": "com.amazonaws.cognitoidentityprovider#WebAuthnAuthenticatorAttachmentType", + "traits": { + "smithy.api#documentation": "

          The general category of the passkey authenticator. Can be a platform, or on-device\n authenticator like a built-in fingerprint scanner, or a cross-platform device that's not\n attached to the device like a Bluetooth security key.

          " + } + }, + "AuthenticatorTransports": { + "target": "com.amazonaws.cognitoidentityprovider#WebAuthnAuthenticatorTransportsList", + "traits": { + "smithy.api#documentation": "

          Information about the transport methods of the passkey credential, for example USB or\n Bluetooth Low Energy.

          ", + "smithy.api#required": {} + } + }, + "CreatedAt": { + "target": "com.amazonaws.cognitoidentityprovider#DateType", + "traits": { + "smithy.api#documentation": "

          The date and time when the item was created. Amazon Cognito returns this timestamp in UNIX epoch time format. Your SDK might render the output in a \nhuman-readable format like ISO 8601 or a Java Date object.

          ", + "smithy.api#required": {} + } + } + }, + "traits": { + "smithy.api#documentation": "

          The details of a passkey, or webauthN, biometric or security-key authentication factor\n for a user.

          \n

          This data type is a response parameter of ListWebAuthnCredentials.

          " + } + }, + "com.amazonaws.cognitoidentityprovider#WebAuthnCredentialDescriptionListType": { + "type": "list", + "member": { + "target": "com.amazonaws.cognitoidentityprovider#WebAuthnCredentialDescription" + } + }, + "com.amazonaws.cognitoidentityprovider#WebAuthnCredentialNotSupportedException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.cognitoidentityprovider#MessageType" + } + }, + "traits": { + "smithy.api#documentation": "

          This exception is thrown when a user presents passkey credentials from an unsupported\n device or provider.

          ", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, + "com.amazonaws.cognitoidentityprovider#WebAuthnCredentialsQueryLimitType": { + "type": "integer", + "traits": { + "smithy.api#range": { + "min": 0, + "max": 20 + } + } + }, + "com.amazonaws.cognitoidentityprovider#WebAuthnNotEnabledException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.cognitoidentityprovider#MessageType" + } + }, + "traits": { + "smithy.api#documentation": "

          This exception is thrown when the passkey feature isn't enabled for the user\n pool.

          ", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, + "com.amazonaws.cognitoidentityprovider#WebAuthnOriginNotAllowedException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.cognitoidentityprovider#MessageType" + } + }, + "traits": { + "smithy.api#documentation": "

          This exception is thrown when the passkey credential's registration origin does not\n align with the user pool relying party id.

          ", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, + "com.amazonaws.cognitoidentityprovider#WebAuthnRelyingPartyMismatchException": { + "type": "structure", + "members": { + "message": { + "target": "com.amazonaws.cognitoidentityprovider#MessageType" + } + }, + "traits": { + "smithy.api#documentation": "

          This exception is thrown when the given passkey credential is associated with a\n different relying party ID than the user pool relying party ID.

          ", + "smithy.api#error": "client", + "smithy.api#httpError": 400 + } + }, "com.amazonaws.cognitoidentityprovider#WrappedBooleanType": { "type": "boolean" + }, + "com.amazonaws.cognitoidentityprovider#WrappedIntegerType": { + "type": "integer" } } }