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

Details about an email identity.

See Also:

AWS * API Reference

*/ class GetEmailIdentityResult { public: AWS_SESV2_API GetEmailIdentityResult(); AWS_SESV2_API GetEmailIdentityResult(const Aws::AmazonWebServiceResult& result); AWS_SESV2_API GetEmailIdentityResult& operator=(const Aws::AmazonWebServiceResult& result); /** *

The email identity type. Note: the MANAGED_DOMAIN identity type * is not supported.

*/ inline const IdentityType& GetIdentityType() const{ return m_identityType; } /** *

The email identity type. Note: the MANAGED_DOMAIN identity type * is not supported.

*/ inline void SetIdentityType(const IdentityType& value) { m_identityType = value; } /** *

The email identity type. Note: the MANAGED_DOMAIN identity type * is not supported.

*/ inline void SetIdentityType(IdentityType&& value) { m_identityType = std::move(value); } /** *

The email identity type. Note: the MANAGED_DOMAIN identity type * is not supported.

*/ inline GetEmailIdentityResult& WithIdentityType(const IdentityType& value) { SetIdentityType(value); return *this;} /** *

The email identity type. Note: the MANAGED_DOMAIN identity type * is not supported.

*/ inline GetEmailIdentityResult& WithIdentityType(IdentityType&& value) { SetIdentityType(std::move(value)); return *this;} /** *

The feedback forwarding configuration for the identity.

If the value * is true, you receive email notifications when bounce or complaint * events occur. These notifications are sent to the address that you specified in * the Return-Path header of the original email.

You're * required to have a method of tracking bounces and complaints. If you haven't set * up another mechanism for receiving bounce or complaint notifications (for * example, by setting up an event destination), you receive an email notification * when these events occur (even if this setting is disabled).

*/ inline bool GetFeedbackForwardingStatus() const{ return m_feedbackForwardingStatus; } /** *

The feedback forwarding configuration for the identity.

If the value * is true, you receive email notifications when bounce or complaint * events occur. These notifications are sent to the address that you specified in * the Return-Path header of the original email.

You're * required to have a method of tracking bounces and complaints. If you haven't set * up another mechanism for receiving bounce or complaint notifications (for * example, by setting up an event destination), you receive an email notification * when these events occur (even if this setting is disabled).

*/ inline void SetFeedbackForwardingStatus(bool value) { m_feedbackForwardingStatus = value; } /** *

The feedback forwarding configuration for the identity.

If the value * is true, you receive email notifications when bounce or complaint * events occur. These notifications are sent to the address that you specified in * the Return-Path header of the original email.

You're * required to have a method of tracking bounces and complaints. If you haven't set * up another mechanism for receiving bounce or complaint notifications (for * example, by setting up an event destination), you receive an email notification * when these events occur (even if this setting is disabled).

*/ inline GetEmailIdentityResult& WithFeedbackForwardingStatus(bool value) { SetFeedbackForwardingStatus(value); return *this;} /** *

Specifies whether or not the identity is verified. You can only send email * from verified email addresses or domains. For more information about verifying * identities, see the Amazon * Pinpoint User Guide.

*/ inline bool GetVerifiedForSendingStatus() const{ return m_verifiedForSendingStatus; } /** *

Specifies whether or not the identity is verified. You can only send email * from verified email addresses or domains. For more information about verifying * identities, see the Amazon * Pinpoint User Guide.

*/ inline void SetVerifiedForSendingStatus(bool value) { m_verifiedForSendingStatus = value; } /** *

Specifies whether or not the identity is verified. You can only send email * from verified email addresses or domains. For more information about verifying * identities, see the Amazon * Pinpoint User Guide.

*/ inline GetEmailIdentityResult& WithVerifiedForSendingStatus(bool value) { SetVerifiedForSendingStatus(value); return *this;} /** *

An object that contains information about the DKIM attributes for the * identity.

*/ inline const DkimAttributes& GetDkimAttributes() const{ return m_dkimAttributes; } /** *

An object that contains information about the DKIM attributes for the * identity.

*/ inline void SetDkimAttributes(const DkimAttributes& value) { m_dkimAttributes = value; } /** *

An object that contains information about the DKIM attributes for the * identity.

*/ inline void SetDkimAttributes(DkimAttributes&& value) { m_dkimAttributes = std::move(value); } /** *

An object that contains information about the DKIM attributes for the * identity.

*/ inline GetEmailIdentityResult& WithDkimAttributes(const DkimAttributes& value) { SetDkimAttributes(value); return *this;} /** *

An object that contains information about the DKIM attributes for the * identity.

*/ inline GetEmailIdentityResult& WithDkimAttributes(DkimAttributes&& value) { SetDkimAttributes(std::move(value)); return *this;} /** *

An object that contains information about the Mail-From attributes for the * email identity.

*/ inline const MailFromAttributes& GetMailFromAttributes() const{ return m_mailFromAttributes; } /** *

An object that contains information about the Mail-From attributes for the * email identity.

*/ inline void SetMailFromAttributes(const MailFromAttributes& value) { m_mailFromAttributes = value; } /** *

An object that contains information about the Mail-From attributes for the * email identity.

*/ inline void SetMailFromAttributes(MailFromAttributes&& value) { m_mailFromAttributes = std::move(value); } /** *

An object that contains information about the Mail-From attributes for the * email identity.

*/ inline GetEmailIdentityResult& WithMailFromAttributes(const MailFromAttributes& value) { SetMailFromAttributes(value); return *this;} /** *

An object that contains information about the Mail-From attributes for the * email identity.

*/ inline GetEmailIdentityResult& WithMailFromAttributes(MailFromAttributes&& value) { SetMailFromAttributes(std::move(value)); return *this;} /** *

A map of policy names to policies.

*/ inline const Aws::Map& GetPolicies() const{ return m_policies; } /** *

A map of policy names to policies.

*/ inline void SetPolicies(const Aws::Map& value) { m_policies = value; } /** *

A map of policy names to policies.

*/ inline void SetPolicies(Aws::Map&& value) { m_policies = std::move(value); } /** *

A map of policy names to policies.

*/ inline GetEmailIdentityResult& WithPolicies(const Aws::Map& value) { SetPolicies(value); return *this;} /** *

A map of policy names to policies.

*/ inline GetEmailIdentityResult& WithPolicies(Aws::Map&& value) { SetPolicies(std::move(value)); return *this;} /** *

A map of policy names to policies.

*/ inline GetEmailIdentityResult& AddPolicies(const Aws::String& key, const Aws::String& value) { m_policies.emplace(key, value); return *this; } /** *

A map of policy names to policies.

*/ inline GetEmailIdentityResult& AddPolicies(Aws::String&& key, const Aws::String& value) { m_policies.emplace(std::move(key), value); return *this; } /** *

A map of policy names to policies.

*/ inline GetEmailIdentityResult& AddPolicies(const Aws::String& key, Aws::String&& value) { m_policies.emplace(key, std::move(value)); return *this; } /** *

A map of policy names to policies.

*/ inline GetEmailIdentityResult& AddPolicies(Aws::String&& key, Aws::String&& value) { m_policies.emplace(std::move(key), std::move(value)); return *this; } /** *

A map of policy names to policies.

*/ inline GetEmailIdentityResult& AddPolicies(const char* key, Aws::String&& value) { m_policies.emplace(key, std::move(value)); return *this; } /** *

A map of policy names to policies.

*/ inline GetEmailIdentityResult& AddPolicies(Aws::String&& key, const char* value) { m_policies.emplace(std::move(key), value); return *this; } /** *

A map of policy names to policies.

*/ inline GetEmailIdentityResult& AddPolicies(const char* key, const char* value) { m_policies.emplace(key, value); return *this; } /** *

An array of objects that define the tags (keys and values) that are * associated with the email identity.

*/ inline const Aws::Vector& GetTags() const{ return m_tags; } /** *

An array of objects that define the tags (keys and values) that are * associated with the email identity.

*/ inline void SetTags(const Aws::Vector& value) { m_tags = value; } /** *

An array of objects that define the tags (keys and values) that are * associated with the email identity.

*/ inline void SetTags(Aws::Vector&& value) { m_tags = std::move(value); } /** *

An array of objects that define the tags (keys and values) that are * associated with the email identity.

*/ inline GetEmailIdentityResult& WithTags(const Aws::Vector& value) { SetTags(value); return *this;} /** *

An array of objects that define the tags (keys and values) that are * associated with the email identity.

*/ inline GetEmailIdentityResult& WithTags(Aws::Vector&& value) { SetTags(std::move(value)); return *this;} /** *

An array of objects that define the tags (keys and values) that are * associated with the email identity.

*/ inline GetEmailIdentityResult& AddTags(const Tag& value) { m_tags.push_back(value); return *this; } /** *

An array of objects that define the tags (keys and values) that are * associated with the email identity.

*/ inline GetEmailIdentityResult& AddTags(Tag&& value) { m_tags.push_back(std::move(value)); return *this; } /** *

The configuration set used by default when sending from this identity.

*/ inline const Aws::String& GetConfigurationSetName() const{ return m_configurationSetName; } /** *

The configuration set used by default when sending from this identity.

*/ inline void SetConfigurationSetName(const Aws::String& value) { m_configurationSetName = value; } /** *

The configuration set used by default when sending from this identity.

*/ inline void SetConfigurationSetName(Aws::String&& value) { m_configurationSetName = std::move(value); } /** *

The configuration set used by default when sending from this identity.

*/ inline void SetConfigurationSetName(const char* value) { m_configurationSetName.assign(value); } /** *

The configuration set used by default when sending from this identity.

*/ inline GetEmailIdentityResult& WithConfigurationSetName(const Aws::String& value) { SetConfigurationSetName(value); return *this;} /** *

The configuration set used by default when sending from this identity.

*/ inline GetEmailIdentityResult& WithConfigurationSetName(Aws::String&& value) { SetConfigurationSetName(std::move(value)); return *this;} /** *

The configuration set used by default when sending from this identity.

*/ inline GetEmailIdentityResult& WithConfigurationSetName(const char* value) { SetConfigurationSetName(value); return *this;} /** *

The verification status of the identity. The status can be one of the * following:

  • PENDING – The verification process was * initiated, but Amazon SES hasn't yet been able to verify the identity.

  • *
  • SUCCESS – The verification process completed * successfully.

  • FAILED – The verification process * failed.

  • TEMPORARY_FAILURE – A temporary issue is * preventing Amazon SES from determining the verification status of the * identity.

  • NOT_STARTED – The verification process * hasn't been initiated for the identity.

*/ inline const VerificationStatus& GetVerificationStatus() const{ return m_verificationStatus; } /** *

The verification status of the identity. The status can be one of the * following:

  • PENDING – The verification process was * initiated, but Amazon SES hasn't yet been able to verify the identity.

  • *
  • SUCCESS – The verification process completed * successfully.

  • FAILED – The verification process * failed.

  • TEMPORARY_FAILURE – A temporary issue is * preventing Amazon SES from determining the verification status of the * identity.

  • NOT_STARTED – The verification process * hasn't been initiated for the identity.

*/ inline void SetVerificationStatus(const VerificationStatus& value) { m_verificationStatus = value; } /** *

The verification status of the identity. The status can be one of the * following:

  • PENDING – The verification process was * initiated, but Amazon SES hasn't yet been able to verify the identity.

  • *
  • SUCCESS – The verification process completed * successfully.

  • FAILED – The verification process * failed.

  • TEMPORARY_FAILURE – A temporary issue is * preventing Amazon SES from determining the verification status of the * identity.

  • NOT_STARTED – The verification process * hasn't been initiated for the identity.

*/ inline void SetVerificationStatus(VerificationStatus&& value) { m_verificationStatus = std::move(value); } /** *

The verification status of the identity. The status can be one of the * following:

  • PENDING – The verification process was * initiated, but Amazon SES hasn't yet been able to verify the identity.

  • *
  • SUCCESS – The verification process completed * successfully.

  • FAILED – The verification process * failed.

  • TEMPORARY_FAILURE – A temporary issue is * preventing Amazon SES from determining the verification status of the * identity.

  • NOT_STARTED – The verification process * hasn't been initiated for the identity.

*/ inline GetEmailIdentityResult& WithVerificationStatus(const VerificationStatus& value) { SetVerificationStatus(value); return *this;} /** *

The verification status of the identity. The status can be one of the * following:

  • PENDING – The verification process was * initiated, but Amazon SES hasn't yet been able to verify the identity.

  • *
  • SUCCESS – The verification process completed * successfully.

  • FAILED – The verification process * failed.

  • TEMPORARY_FAILURE – A temporary issue is * preventing Amazon SES from determining the verification status of the * identity.

  • NOT_STARTED – The verification process * hasn't been initiated for the identity.

*/ inline GetEmailIdentityResult& WithVerificationStatus(VerificationStatus&& value) { SetVerificationStatus(std::move(value)); return *this;} inline const Aws::String& GetRequestId() const{ return m_requestId; } inline void SetRequestId(const Aws::String& value) { m_requestId = value; } inline void SetRequestId(Aws::String&& value) { m_requestId = std::move(value); } inline void SetRequestId(const char* value) { m_requestId.assign(value); } inline GetEmailIdentityResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline GetEmailIdentityResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline GetEmailIdentityResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: IdentityType m_identityType; bool m_feedbackForwardingStatus; bool m_verifiedForSendingStatus; DkimAttributes m_dkimAttributes; MailFromAttributes m_mailFromAttributes; Aws::Map m_policies; Aws::Vector m_tags; Aws::String m_configurationSetName; VerificationStatus m_verificationStatus; Aws::String m_requestId; }; } // namespace Model } // namespace SESV2 } // namespace Aws