AWS SDK Version 3 for .NET
API Reference

AWS services or capabilities described in AWS Documentation may vary by region/location. Click Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

Container for the parameters to the InitiateAuth operation. Initiates the authentication flow.

Inheritance Hierarchy


Namespace: Amazon.CognitoIdentityProvider.Model
Assembly: AWSSDK.CognitoIdentityProvider.dll
Version: 3.x.y.z


public class InitiateAuthRequest : AmazonCognitoIdentityProviderRequest

The InitiateAuthRequest type exposes the following members


Public Method InitiateAuthRequest()


Public Property AnalyticsMetadata Amazon.CognitoIdentityProvider.Model.AnalyticsMetadataType

Gets and sets the property AnalyticsMetadata.

The Amazon Pinpoint analytics metadata for collecting metrics for InitiateAuth calls.

Public Property AuthFlow Amazon.CognitoIdentityProvider.AuthFlowType

Gets and sets the property AuthFlow.

The authentication flow for this call to execute. 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 SRP variables to be used for next challenge execution.

  • USER_PASSWORD_AUTH will take in USERNAME and PASSWORD and return 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; USERNAME and PASSWORD are passed directly. If a user migration Lambda trigger is set, this flow will invoke the user migration Lambda if the USERNAME is not found in the user pool.

ADMIN_NO_SRP_AUTH is not a valid value.

Public Property AuthParameters System.Collections.Generic.Dictionary<System.String, System.String>

Gets and sets the property AuthParameters.

The authentication parameters. These are inputs corresponding to the AuthFlow that you are 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 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

Public Property ClientId System.String

Gets and sets the property ClientId.

The app client ID.

Public Property ClientMetadata System.Collections.Generic.Dictionary<System.String, System.String>

Gets and sets the property ClientMetadata.

This is a random key-value pair map which can contain any key and will be passed to your PreAuthentication Lambda trigger as-is. It can be used to implement additional validations around authentication.

Public Property UserContextData Amazon.CognitoIdentityProvider.Model.UserContextDataType

Gets and sets the property UserContextData.

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.

Version Information

.NET Standard:
Supported in: 1.3

.NET Framework:
Supported in: 4.5, 4.0, 3.5

Portable Class Library:
Supported in: Windows Store Apps
Supported in: Windows Phone 8.1
Supported in: Xamarin Android
Supported in: Xamarin iOS (Unified)
Supported in: Xamarin.Forms