Class CfnUserPool.EmailConfigurationProperty.Builder

java.lang.Object
software.amazon.awscdk.services.cognito.CfnUserPool.EmailConfigurationProperty.Builder
All Implemented Interfaces:
software.amazon.jsii.Builder<CfnUserPool.EmailConfigurationProperty>
Enclosing interface:
CfnUserPool.EmailConfigurationProperty

@Stability(Stable) public static final class CfnUserPool.EmailConfigurationProperty.Builder extends Object implements software.amazon.jsii.Builder<CfnUserPool.EmailConfigurationProperty>
  • Constructor Details

    • Builder

      public Builder()
  • Method Details

    • configurationSet

      @Stability(Stable) public CfnUserPool.EmailConfigurationProperty.Builder configurationSet(String configurationSet)
      Parameters:
      configurationSet - The set of configuration rules that can be applied to emails sent using Amazon Simple Email Service. A configuration set is applied to an email by including a reference to the configuration set in the headers of the email. Once applied, all of the rules in that configuration set are applied to the email. Configuration sets can be used to apply the following types of rules to emails:

      • Event publishing - Amazon Simple Email Service can track the number of send, delivery, open, click, bounce, and complaint events for each email sent. Use event publishing to send information about these events to other AWS services such as and Amazon CloudWatch
      • IP pool management - When leasing dedicated IP addresses with Amazon Simple Email Service, you can create groups of IP addresses, called dedicated IP pools. You can then associate the dedicated IP pools with configuration sets.
      Returns:
      this
    • emailSendingAccount

      @Stability(Stable) public CfnUserPool.EmailConfigurationProperty.Builder emailSendingAccount(String emailSendingAccount)
      Parameters:
      emailSendingAccount - Specifies whether Amazon Cognito uses its built-in functionality to send your users email messages, or uses your Amazon Simple Email Service email configuration. Specify one of the following values:

      • COGNITO_DEFAULT - When Amazon Cognito emails your users, it uses its built-in email functionality. When you use the default option, Amazon Cognito allows only a limited number of emails each day for your user pool. For typical production environments, the default email limit is less than the required delivery volume. To achieve a higher delivery volume, specify DEVELOPER to use your Amazon SES email configuration.

      To look up the email delivery limit for the default option, see Limits in the Amazon Cognito Developer Guide .

      The default FROM address is no-reply@verificationemail.com . To customize the FROM address, provide the Amazon Resource Name (ARN) of an Amazon SES verified email address for the SourceArn parameter.

      • DEVELOPER - When Amazon Cognito emails your users, it uses your Amazon SES configuration. Amazon Cognito calls Amazon SES on your behalf to send email from your verified email address. When you use this option, the email delivery limits are the same limits that apply to your Amazon SES verified email address in your AWS account .

      If you use this option, provide the ARN of an Amazon SES verified email address for the SourceArn parameter.

      Before Amazon Cognito can email your users, it requires additional permissions to call Amazon SES on your behalf. When you update your user pool with this option, Amazon Cognito creates a service-linked role , which is a type of role in your AWS account . This role contains the permissions that allow you to access Amazon SES and send email messages from your email address. For more information about the service-linked role that Amazon Cognito creates, see Using Service-Linked Roles for Amazon Cognito in the Amazon Cognito Developer Guide .

      Returns:
      this
    • from

      @Stability(Stable) public CfnUserPool.EmailConfigurationProperty.Builder from(String from)
      Parameters:
      from - Either the sender’s email address or the sender’s name with their email address. For example, testuser@example.com or Test User <testuser@example.com> . This address appears before the body of the email.
      Returns:
      this
    • replyToEmailAddress

      @Stability(Stable) public CfnUserPool.EmailConfigurationProperty.Builder replyToEmailAddress(String replyToEmailAddress)
      Parameters:
      replyToEmailAddress - The destination to which the receiver of the email should reply.
      Returns:
      this
    • sourceArn

      @Stability(Stable) public CfnUserPool.EmailConfigurationProperty.Builder sourceArn(String sourceArn)
      Parameters:
      sourceArn - The ARN of a verified email address or an address from a verified domain in Amazon SES. You can set a SourceArn email from a verified domain only with an API request. You can set a verified email address, but not an address in a verified domain, in the Amazon Cognito console. Amazon Cognito uses the email address that you provide in one of the following ways, depending on the value that you specify for the EmailSendingAccount parameter:

      • If you specify COGNITO_DEFAULT , Amazon Cognito uses this address as the custom FROM address when it emails your users using its built-in email account.
      • If you specify DEVELOPER , Amazon Cognito emails your users with this address by calling Amazon SES on your behalf.

      The Region value of the SourceArn parameter must indicate a supported AWS Region of your user pool. Typically, the Region in the SourceArn and the user pool Region are the same. For more information, see Amazon SES email configuration regions in the Amazon Cognito Developer Guide .

      Returns:
      this
    • build

      @Stability(Stable) public CfnUserPool.EmailConfigurationProperty build()
      Builds the configured instance.
      Specified by:
      build in interface software.amazon.jsii.Builder<CfnUserPool.EmailConfigurationProperty>
      Returns:
      a new instance of CfnUserPool.EmailConfigurationProperty
      Throws:
      NullPointerException - if any required attribute was not provided