Package com.pulumi.aws.ses
Class MailFrom
- java.lang.Object
-
- com.pulumi.resources.Resource
-
- com.pulumi.resources.CustomResource
-
- com.pulumi.aws.ses.MailFrom
-
public class MailFrom extends com.pulumi.resources.CustomResourceProvides an SES domain MAIL FROM resource. > **NOTE:** For the MAIL FROM domain to be fully usable, this resource should be paired with the aws.ses.DomainIdentity resource. To validate the MAIL FROM domain, a DNS MX record is required. To pass SPF checks, a DNS TXT record may also be required. See the [Amazon SES MAIL FROM documentation](https://docs.aws.amazon.com/ses/latest/dg/mail-from.html) for more information. ## Example Usage ### Domain Identity MAIL FROM
### Email Identity MAIL FROMpackage generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.ses.DomainIdentity; import com.pulumi.aws.ses.DomainIdentityArgs; import com.pulumi.aws.ses.MailFrom; import com.pulumi.aws.ses.MailFromArgs; import com.pulumi.aws.route53.Record; import com.pulumi.aws.route53.RecordArgs; import java.util.ArrayList; import java.util.Arrays; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { // Example SES Domain Identity var exampleDomainIdentity = new DomainIdentity("exampleDomainIdentity", DomainIdentityArgs.builder() .domain("example.com") .build()); var example = new MailFrom("example", MailFromArgs.builder() .domain(exampleDomainIdentity.domain()) .mailFromDomain(exampleDomainIdentity.domain().applyValue(_domain -> String.format("bounce.%s", _domain))) .build()); // Example Route53 MX record var exampleSesDomainMailFromMx = new Record("exampleSesDomainMailFromMx", RecordArgs.builder() .zoneId(exampleAwsRoute53Zone.id()) .name(example.mailFromDomain()) .type("MX") .ttl(600) .records("10 feedback-smtp.us-east-1.amazonses.com") .build()); // Example Route53 TXT record for SPF var exampleSesDomainMailFromTxt = new Record("exampleSesDomainMailFromTxt", RecordArgs.builder() .zoneId(exampleAwsRoute53Zone.id()) .name(example.mailFromDomain()) .type("TXT") .ttl(600) .records("v=spf1 include:amazonses.com ~all") .build()); } }
## Import Using `pulumi import`, import MAIL FROM domain using the `domain` attribute. For example: ```sh $ pulumi import aws:ses/mailFrom:MailFrom example example.com ```package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.ses.EmailIdentity; import com.pulumi.aws.ses.EmailIdentityArgs; import com.pulumi.aws.ses.MailFrom; import com.pulumi.aws.ses.MailFromArgs; import java.util.ArrayList; import java.util.Arrays; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App{public static void main(String[] args){Pulumi.run(App::stack);}public static void stack(Context ctx){// Example SES Email Identity var example = new EmailIdentity("example", EmailIdentityArgs.builder() .email("user@example.com") .build()); var exampleMailFrom = new MailFrom("exampleMailFrom", MailFromArgs.builder() .domain(example.email()) .mailFromDomain("mail.example.com") .build());}}
-
-
Constructor Summary
Constructors Constructor Description MailFrom(java.lang.String name)MailFrom(java.lang.String name, MailFromArgs args)MailFrom(java.lang.String name, MailFromArgs args, com.pulumi.resources.CustomResourceOptions options)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description com.pulumi.core.Output<java.util.Optional<java.lang.String>>behaviorOnMxFailure()com.pulumi.core.Output<java.lang.String>domain()static MailFromget(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, MailFromState state, com.pulumi.resources.CustomResourceOptions options)Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.com.pulumi.core.Output<java.lang.String>mailFromDomain()com.pulumi.core.Output<java.lang.String>region()
-
-
-
Constructor Detail
-
MailFrom
public MailFrom(java.lang.String name)
- Parameters:
name- The _unique_ name of the resulting resource.
-
MailFrom
public MailFrom(java.lang.String name, MailFromArgs args)- Parameters:
name- The _unique_ name of the resulting resource.args- The arguments to use to populate this resource's properties.
-
MailFrom
public MailFrom(java.lang.String name, MailFromArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options)- Parameters:
name- The _unique_ name of the resulting resource.args- The arguments to use to populate this resource's properties.options- A bag of options that control this resource's behavior.
-
-
Method Detail
-
behaviorOnMxFailure
public com.pulumi.core.Output<java.util.Optional<java.lang.String>> behaviorOnMxFailure()
- Returns:
- Action that you want Amazon SES to take if it cannot successfully read the required MX record when you send an email. Defaults to `UseDefaultValue`. See the [SES API documentation](https://docs.aws.amazon.com/ses/latest/APIReference/API_SetIdentityMailFromDomain.html) for more information.
-
domain
public com.pulumi.core.Output<java.lang.String> domain()
- Returns:
- Verified domain name or email identity to generate DKIM tokens for.
-
mailFromDomain
public com.pulumi.core.Output<java.lang.String> mailFromDomain()
- Returns:
- Subdomain (of above domain) which is to be used as MAIL FROM address (Required for DMARC validation) The following arguments are optional:
-
region
public com.pulumi.core.Output<java.lang.String> region()
- Returns:
- Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
-
get
public static MailFrom get(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, @Nullable MailFromState state, @Nullable com.pulumi.resources.CustomResourceOptions options)
Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.- Parameters:
name- The _unique_ name of the resulting resource.id- The _unique_ provider ID of the resource to lookup.state-options- Optional settings to control the behavior of the CustomResource.
-
-