/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace SESV2 { namespace Model { /** *

A list of attributes that are associated with a MAIL FROM * domain.

See Also:

AWS * API Reference

*/ class MailFromAttributes { public: AWS_SESV2_API MailFromAttributes(); AWS_SESV2_API MailFromAttributes(Aws::Utils::Json::JsonView jsonValue); AWS_SESV2_API MailFromAttributes& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_SESV2_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The name of a domain that an email identity uses as a custom MAIL FROM * domain.

*/ inline const Aws::String& GetMailFromDomain() const{ return m_mailFromDomain; } /** *

The name of a domain that an email identity uses as a custom MAIL FROM * domain.

*/ inline bool MailFromDomainHasBeenSet() const { return m_mailFromDomainHasBeenSet; } /** *

The name of a domain that an email identity uses as a custom MAIL FROM * domain.

*/ inline void SetMailFromDomain(const Aws::String& value) { m_mailFromDomainHasBeenSet = true; m_mailFromDomain = value; } /** *

The name of a domain that an email identity uses as a custom MAIL FROM * domain.

*/ inline void SetMailFromDomain(Aws::String&& value) { m_mailFromDomainHasBeenSet = true; m_mailFromDomain = std::move(value); } /** *

The name of a domain that an email identity uses as a custom MAIL FROM * domain.

*/ inline void SetMailFromDomain(const char* value) { m_mailFromDomainHasBeenSet = true; m_mailFromDomain.assign(value); } /** *

The name of a domain that an email identity uses as a custom MAIL FROM * domain.

*/ inline MailFromAttributes& WithMailFromDomain(const Aws::String& value) { SetMailFromDomain(value); return *this;} /** *

The name of a domain that an email identity uses as a custom MAIL FROM * domain.

*/ inline MailFromAttributes& WithMailFromDomain(Aws::String&& value) { SetMailFromDomain(std::move(value)); return *this;} /** *

The name of a domain that an email identity uses as a custom MAIL FROM * domain.

*/ inline MailFromAttributes& WithMailFromDomain(const char* value) { SetMailFromDomain(value); return *this;} /** *

The status of the MAIL FROM domain. This status can have the following * values:

  • PENDING – Amazon SES hasn't started * searching for the MX record yet.

  • SUCCESS – * Amazon SES detected the required MX record for the MAIL FROM domain.

  • *
  • FAILED – Amazon SES can't find the required MX record, or * the record no longer exists.

  • TEMPORARY_FAILURE – * A temporary issue occurred, which prevented Amazon SES from determining the * status of the MAIL FROM domain.

*/ inline const MailFromDomainStatus& GetMailFromDomainStatus() const{ return m_mailFromDomainStatus; } /** *

The status of the MAIL FROM domain. This status can have the following * values:

  • PENDING – Amazon SES hasn't started * searching for the MX record yet.

  • SUCCESS – * Amazon SES detected the required MX record for the MAIL FROM domain.

  • *
  • FAILED – Amazon SES can't find the required MX record, or * the record no longer exists.

  • TEMPORARY_FAILURE – * A temporary issue occurred, which prevented Amazon SES from determining the * status of the MAIL FROM domain.

*/ inline bool MailFromDomainStatusHasBeenSet() const { return m_mailFromDomainStatusHasBeenSet; } /** *

The status of the MAIL FROM domain. This status can have the following * values:

  • PENDING – Amazon SES hasn't started * searching for the MX record yet.

  • SUCCESS – * Amazon SES detected the required MX record for the MAIL FROM domain.

  • *
  • FAILED – Amazon SES can't find the required MX record, or * the record no longer exists.

  • TEMPORARY_FAILURE – * A temporary issue occurred, which prevented Amazon SES from determining the * status of the MAIL FROM domain.

*/ inline void SetMailFromDomainStatus(const MailFromDomainStatus& value) { m_mailFromDomainStatusHasBeenSet = true; m_mailFromDomainStatus = value; } /** *

The status of the MAIL FROM domain. This status can have the following * values:

  • PENDING – Amazon SES hasn't started * searching for the MX record yet.

  • SUCCESS – * Amazon SES detected the required MX record for the MAIL FROM domain.

  • *
  • FAILED – Amazon SES can't find the required MX record, or * the record no longer exists.

  • TEMPORARY_FAILURE – * A temporary issue occurred, which prevented Amazon SES from determining the * status of the MAIL FROM domain.

*/ inline void SetMailFromDomainStatus(MailFromDomainStatus&& value) { m_mailFromDomainStatusHasBeenSet = true; m_mailFromDomainStatus = std::move(value); } /** *

The status of the MAIL FROM domain. This status can have the following * values:

  • PENDING – Amazon SES hasn't started * searching for the MX record yet.

  • SUCCESS – * Amazon SES detected the required MX record for the MAIL FROM domain.

  • *
  • FAILED – Amazon SES can't find the required MX record, or * the record no longer exists.

  • TEMPORARY_FAILURE – * A temporary issue occurred, which prevented Amazon SES from determining the * status of the MAIL FROM domain.

*/ inline MailFromAttributes& WithMailFromDomainStatus(const MailFromDomainStatus& value) { SetMailFromDomainStatus(value); return *this;} /** *

The status of the MAIL FROM domain. This status can have the following * values:

  • PENDING – Amazon SES hasn't started * searching for the MX record yet.

  • SUCCESS – * Amazon SES detected the required MX record for the MAIL FROM domain.

  • *
  • FAILED – Amazon SES can't find the required MX record, or * the record no longer exists.

  • TEMPORARY_FAILURE – * A temporary issue occurred, which prevented Amazon SES from determining the * status of the MAIL FROM domain.

*/ inline MailFromAttributes& WithMailFromDomainStatus(MailFromDomainStatus&& value) { SetMailFromDomainStatus(std::move(value)); return *this;} /** *

The action to take if the required MX record can't be found when you send an * email. When you set this value to USE_DEFAULT_VALUE, the mail is * sent using amazonses.com as the MAIL FROM domain. When you set this value * to REJECT_MESSAGE, the Amazon SES API v2 returns a * MailFromDomainNotVerified error, and doesn't attempt to deliver the * email.

These behaviors are taken when the custom MAIL FROM domain * configuration is in the Pending, Failed, and * TemporaryFailure states.

*/ inline const BehaviorOnMxFailure& GetBehaviorOnMxFailure() const{ return m_behaviorOnMxFailure; } /** *

The action to take if the required MX record can't be found when you send an * email. When you set this value to USE_DEFAULT_VALUE, the mail is * sent using amazonses.com as the MAIL FROM domain. When you set this value * to REJECT_MESSAGE, the Amazon SES API v2 returns a * MailFromDomainNotVerified error, and doesn't attempt to deliver the * email.

These behaviors are taken when the custom MAIL FROM domain * configuration is in the Pending, Failed, and * TemporaryFailure states.

*/ inline bool BehaviorOnMxFailureHasBeenSet() const { return m_behaviorOnMxFailureHasBeenSet; } /** *

The action to take if the required MX record can't be found when you send an * email. When you set this value to USE_DEFAULT_VALUE, the mail is * sent using amazonses.com as the MAIL FROM domain. When you set this value * to REJECT_MESSAGE, the Amazon SES API v2 returns a * MailFromDomainNotVerified error, and doesn't attempt to deliver the * email.

These behaviors are taken when the custom MAIL FROM domain * configuration is in the Pending, Failed, and * TemporaryFailure states.

*/ inline void SetBehaviorOnMxFailure(const BehaviorOnMxFailure& value) { m_behaviorOnMxFailureHasBeenSet = true; m_behaviorOnMxFailure = value; } /** *

The action to take if the required MX record can't be found when you send an * email. When you set this value to USE_DEFAULT_VALUE, the mail is * sent using amazonses.com as the MAIL FROM domain. When you set this value * to REJECT_MESSAGE, the Amazon SES API v2 returns a * MailFromDomainNotVerified error, and doesn't attempt to deliver the * email.

These behaviors are taken when the custom MAIL FROM domain * configuration is in the Pending, Failed, and * TemporaryFailure states.

*/ inline void SetBehaviorOnMxFailure(BehaviorOnMxFailure&& value) { m_behaviorOnMxFailureHasBeenSet = true; m_behaviorOnMxFailure = std::move(value); } /** *

The action to take if the required MX record can't be found when you send an * email. When you set this value to USE_DEFAULT_VALUE, the mail is * sent using amazonses.com as the MAIL FROM domain. When you set this value * to REJECT_MESSAGE, the Amazon SES API v2 returns a * MailFromDomainNotVerified error, and doesn't attempt to deliver the * email.

These behaviors are taken when the custom MAIL FROM domain * configuration is in the Pending, Failed, and * TemporaryFailure states.

*/ inline MailFromAttributes& WithBehaviorOnMxFailure(const BehaviorOnMxFailure& value) { SetBehaviorOnMxFailure(value); return *this;} /** *

The action to take if the required MX record can't be found when you send an * email. When you set this value to USE_DEFAULT_VALUE, the mail is * sent using amazonses.com as the MAIL FROM domain. When you set this value * to REJECT_MESSAGE, the Amazon SES API v2 returns a * MailFromDomainNotVerified error, and doesn't attempt to deliver the * email.

These behaviors are taken when the custom MAIL FROM domain * configuration is in the Pending, Failed, and * TemporaryFailure states.

*/ inline MailFromAttributes& WithBehaviorOnMxFailure(BehaviorOnMxFailure&& value) { SetBehaviorOnMxFailure(std::move(value)); return *this;} private: Aws::String m_mailFromDomain; bool m_mailFromDomainHasBeenSet = false; MailFromDomainStatus m_mailFromDomainStatus; bool m_mailFromDomainStatusHasBeenSet = false; BehaviorOnMxFailure m_behaviorOnMxFailure; bool m_behaviorOnMxFailureHasBeenSet = false; }; } // namespace Model } // namespace SESV2 } // namespace Aws