/** * 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 namespace Aws { template class AmazonWebServiceResult; namespace Utils { namespace Json { class JsonValue; } // namespace Json } // namespace Utils namespace SESV2 { namespace Model { /** *

A list of details about the email-sending capabilities of your Amazon SES * account in the current Amazon Web Services Region.

See Also:

AWS * API Reference

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

Indicates whether or not the automatic warm-up feature is enabled for * dedicated IP addresses that are associated with your account.

*/ inline bool GetDedicatedIpAutoWarmupEnabled() const{ return m_dedicatedIpAutoWarmupEnabled; } /** *

Indicates whether or not the automatic warm-up feature is enabled for * dedicated IP addresses that are associated with your account.

*/ inline void SetDedicatedIpAutoWarmupEnabled(bool value) { m_dedicatedIpAutoWarmupEnabled = value; } /** *

Indicates whether or not the automatic warm-up feature is enabled for * dedicated IP addresses that are associated with your account.

*/ inline GetAccountResult& WithDedicatedIpAutoWarmupEnabled(bool value) { SetDedicatedIpAutoWarmupEnabled(value); return *this;} /** *

The reputation status of your Amazon SES account. The status can be one of * the following:

  • HEALTHY – There are no * reputation-related issues that currently impact your account.

  • * PROBATION – We've identified potential issues with your Amazon SES * account. We're placing your account under review while you work on correcting * these issues.

  • SHUTDOWN – Your account's ability * to send email is currently paused because of an issue with the email sent from * your account. When you correct the issue, you can contact us and request that * your account's ability to send email is resumed.

*/ inline const Aws::String& GetEnforcementStatus() const{ return m_enforcementStatus; } /** *

The reputation status of your Amazon SES account. The status can be one of * the following:

  • HEALTHY – There are no * reputation-related issues that currently impact your account.

  • * PROBATION – We've identified potential issues with your Amazon SES * account. We're placing your account under review while you work on correcting * these issues.

  • SHUTDOWN – Your account's ability * to send email is currently paused because of an issue with the email sent from * your account. When you correct the issue, you can contact us and request that * your account's ability to send email is resumed.

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

The reputation status of your Amazon SES account. The status can be one of * the following:

  • HEALTHY – There are no * reputation-related issues that currently impact your account.

  • * PROBATION – We've identified potential issues with your Amazon SES * account. We're placing your account under review while you work on correcting * these issues.

  • SHUTDOWN – Your account's ability * to send email is currently paused because of an issue with the email sent from * your account. When you correct the issue, you can contact us and request that * your account's ability to send email is resumed.

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

The reputation status of your Amazon SES account. The status can be one of * the following:

  • HEALTHY – There are no * reputation-related issues that currently impact your account.

  • * PROBATION – We've identified potential issues with your Amazon SES * account. We're placing your account under review while you work on correcting * these issues.

  • SHUTDOWN – Your account's ability * to send email is currently paused because of an issue with the email sent from * your account. When you correct the issue, you can contact us and request that * your account's ability to send email is resumed.

*/ inline void SetEnforcementStatus(const char* value) { m_enforcementStatus.assign(value); } /** *

The reputation status of your Amazon SES account. The status can be one of * the following:

  • HEALTHY – There are no * reputation-related issues that currently impact your account.

  • * PROBATION – We've identified potential issues with your Amazon SES * account. We're placing your account under review while you work on correcting * these issues.

  • SHUTDOWN – Your account's ability * to send email is currently paused because of an issue with the email sent from * your account. When you correct the issue, you can contact us and request that * your account's ability to send email is resumed.

*/ inline GetAccountResult& WithEnforcementStatus(const Aws::String& value) { SetEnforcementStatus(value); return *this;} /** *

The reputation status of your Amazon SES account. The status can be one of * the following:

  • HEALTHY – There are no * reputation-related issues that currently impact your account.

  • * PROBATION – We've identified potential issues with your Amazon SES * account. We're placing your account under review while you work on correcting * these issues.

  • SHUTDOWN – Your account's ability * to send email is currently paused because of an issue with the email sent from * your account. When you correct the issue, you can contact us and request that * your account's ability to send email is resumed.

*/ inline GetAccountResult& WithEnforcementStatus(Aws::String&& value) { SetEnforcementStatus(std::move(value)); return *this;} /** *

The reputation status of your Amazon SES account. The status can be one of * the following:

  • HEALTHY – There are no * reputation-related issues that currently impact your account.

  • * PROBATION – We've identified potential issues with your Amazon SES * account. We're placing your account under review while you work on correcting * these issues.

  • SHUTDOWN – Your account's ability * to send email is currently paused because of an issue with the email sent from * your account. When you correct the issue, you can contact us and request that * your account's ability to send email is resumed.

*/ inline GetAccountResult& WithEnforcementStatus(const char* value) { SetEnforcementStatus(value); return *this;} /** *

Indicates whether or not your account has production access in the current * Amazon Web Services Region.

If the value is false, then your * account is in the sandbox. When your account is in the sandbox, you can * only send email to verified identities. Additionally, the maximum number of * emails you can send in a 24-hour period (your sending quota) is 200, and the * maximum number of emails you can send per second (your maximum sending rate) is * 1.

If the value is true, then your account has production * access. When your account has production access, you can send email to any * address. The sending quota and maximum sending rate for your account vary based * on your specific use case.

*/ inline bool GetProductionAccessEnabled() const{ return m_productionAccessEnabled; } /** *

Indicates whether or not your account has production access in the current * Amazon Web Services Region.

If the value is false, then your * account is in the sandbox. When your account is in the sandbox, you can * only send email to verified identities. Additionally, the maximum number of * emails you can send in a 24-hour period (your sending quota) is 200, and the * maximum number of emails you can send per second (your maximum sending rate) is * 1.

If the value is true, then your account has production * access. When your account has production access, you can send email to any * address. The sending quota and maximum sending rate for your account vary based * on your specific use case.

*/ inline void SetProductionAccessEnabled(bool value) { m_productionAccessEnabled = value; } /** *

Indicates whether or not your account has production access in the current * Amazon Web Services Region.

If the value is false, then your * account is in the sandbox. When your account is in the sandbox, you can * only send email to verified identities. Additionally, the maximum number of * emails you can send in a 24-hour period (your sending quota) is 200, and the * maximum number of emails you can send per second (your maximum sending rate) is * 1.

If the value is true, then your account has production * access. When your account has production access, you can send email to any * address. The sending quota and maximum sending rate for your account vary based * on your specific use case.

*/ inline GetAccountResult& WithProductionAccessEnabled(bool value) { SetProductionAccessEnabled(value); return *this;} /** *

An object that contains information about the per-day and per-second sending * limits for your Amazon SES account in the current Amazon Web Services * Region.

*/ inline const SendQuota& GetSendQuota() const{ return m_sendQuota; } /** *

An object that contains information about the per-day and per-second sending * limits for your Amazon SES account in the current Amazon Web Services * Region.

*/ inline void SetSendQuota(const SendQuota& value) { m_sendQuota = value; } /** *

An object that contains information about the per-day and per-second sending * limits for your Amazon SES account in the current Amazon Web Services * Region.

*/ inline void SetSendQuota(SendQuota&& value) { m_sendQuota = std::move(value); } /** *

An object that contains information about the per-day and per-second sending * limits for your Amazon SES account in the current Amazon Web Services * Region.

*/ inline GetAccountResult& WithSendQuota(const SendQuota& value) { SetSendQuota(value); return *this;} /** *

An object that contains information about the per-day and per-second sending * limits for your Amazon SES account in the current Amazon Web Services * Region.

*/ inline GetAccountResult& WithSendQuota(SendQuota&& value) { SetSendQuota(std::move(value)); return *this;} /** *

Indicates whether or not email sending is enabled for your Amazon SES account * in the current Amazon Web Services Region.

*/ inline bool GetSendingEnabled() const{ return m_sendingEnabled; } /** *

Indicates whether or not email sending is enabled for your Amazon SES account * in the current Amazon Web Services Region.

*/ inline void SetSendingEnabled(bool value) { m_sendingEnabled = value; } /** *

Indicates whether or not email sending is enabled for your Amazon SES account * in the current Amazon Web Services Region.

*/ inline GetAccountResult& WithSendingEnabled(bool value) { SetSendingEnabled(value); return *this;} /** *

An object that contains information about the email address suppression * preferences for your account in the current Amazon Web Services Region.

*/ inline const SuppressionAttributes& GetSuppressionAttributes() const{ return m_suppressionAttributes; } /** *

An object that contains information about the email address suppression * preferences for your account in the current Amazon Web Services Region.

*/ inline void SetSuppressionAttributes(const SuppressionAttributes& value) { m_suppressionAttributes = value; } /** *

An object that contains information about the email address suppression * preferences for your account in the current Amazon Web Services Region.

*/ inline void SetSuppressionAttributes(SuppressionAttributes&& value) { m_suppressionAttributes = std::move(value); } /** *

An object that contains information about the email address suppression * preferences for your account in the current Amazon Web Services Region.

*/ inline GetAccountResult& WithSuppressionAttributes(const SuppressionAttributes& value) { SetSuppressionAttributes(value); return *this;} /** *

An object that contains information about the email address suppression * preferences for your account in the current Amazon Web Services Region.

*/ inline GetAccountResult& WithSuppressionAttributes(SuppressionAttributes&& value) { SetSuppressionAttributes(std::move(value)); return *this;} /** *

An object that defines your account details.

*/ inline const AccountDetails& GetDetails() const{ return m_details; } /** *

An object that defines your account details.

*/ inline void SetDetails(const AccountDetails& value) { m_details = value; } /** *

An object that defines your account details.

*/ inline void SetDetails(AccountDetails&& value) { m_details = std::move(value); } /** *

An object that defines your account details.

*/ inline GetAccountResult& WithDetails(const AccountDetails& value) { SetDetails(value); return *this;} /** *

An object that defines your account details.

*/ inline GetAccountResult& WithDetails(AccountDetails&& value) { SetDetails(std::move(value)); return *this;} /** *

The VDM attributes that apply to your Amazon SES account.

*/ inline const VdmAttributes& GetVdmAttributes() const{ return m_vdmAttributes; } /** *

The VDM attributes that apply to your Amazon SES account.

*/ inline void SetVdmAttributes(const VdmAttributes& value) { m_vdmAttributes = value; } /** *

The VDM attributes that apply to your Amazon SES account.

*/ inline void SetVdmAttributes(VdmAttributes&& value) { m_vdmAttributes = std::move(value); } /** *

The VDM attributes that apply to your Amazon SES account.

*/ inline GetAccountResult& WithVdmAttributes(const VdmAttributes& value) { SetVdmAttributes(value); return *this;} /** *

The VDM attributes that apply to your Amazon SES account.

*/ inline GetAccountResult& WithVdmAttributes(VdmAttributes&& value) { SetVdmAttributes(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 GetAccountResult& WithRequestId(const Aws::String& value) { SetRequestId(value); return *this;} inline GetAccountResult& WithRequestId(Aws::String&& value) { SetRequestId(std::move(value)); return *this;} inline GetAccountResult& WithRequestId(const char* value) { SetRequestId(value); return *this;} private: bool m_dedicatedIpAutoWarmupEnabled; Aws::String m_enforcementStatus; bool m_productionAccessEnabled; SendQuota m_sendQuota; bool m_sendingEnabled; SuppressionAttributes m_suppressionAttributes; AccountDetails m_details; VdmAttributes m_vdmAttributes; Aws::String m_requestId; }; } // namespace Model } // namespace SESV2 } // namespace Aws