amazonka-ses-1.6.0: gen/Network/AWS/SES/UpdateConfigurationSetSendingEnabled.hs
{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE OverloadedStrings #-}
{-# LANGUAGE RecordWildCards #-}
{-# LANGUAGE TypeFamilies #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
{-# OPTIONS_GHC -fno-warn-unused-binds #-}
{-# OPTIONS_GHC -fno-warn-unused-matches #-}
-- Derived from AWS service descriptions, licensed under Apache 2.0.
-- |
-- Module : Network.AWS.SES.UpdateConfigurationSetSendingEnabled
-- Copyright : (c) 2013-2018 Brendan Hay
-- License : Mozilla Public License, v. 2.0.
-- Maintainer : Brendan Hay <brendan.g.hay+amazonka@gmail.com>
-- Stability : auto-generated
-- Portability : non-portable (GHC extensions)
--
-- Enables or disables email sending for messages sent using a specific configuration set. You can use this operation in conjunction with Amazon CloudWatch alarms to temporarily pause email sending for a configuration set when the reputation metrics for that configuration set (such as your bounce on complaint rate) reach certain thresholds.
--
--
-- You can execute this operation no more than once per second.
--
module Network.AWS.SES.UpdateConfigurationSetSendingEnabled
(
-- * Creating a Request
updateConfigurationSetSendingEnabled
, UpdateConfigurationSetSendingEnabled
-- * Request Lenses
, ucsseConfigurationSetName
, ucsseEnabled
-- * Destructuring the Response
, updateConfigurationSetSendingEnabledResponse
, UpdateConfigurationSetSendingEnabledResponse
) where
import Network.AWS.Lens
import Network.AWS.Prelude
import Network.AWS.Request
import Network.AWS.Response
import Network.AWS.SES.Types
import Network.AWS.SES.Types.Product
-- | Represents a request to enable or disable the email sending capabilities for a specific configuration set.
--
--
--
-- /See:/ 'updateConfigurationSetSendingEnabled' smart constructor.
data UpdateConfigurationSetSendingEnabled = UpdateConfigurationSetSendingEnabled'
{ _ucsseConfigurationSetName :: !Text
, _ucsseEnabled :: !Bool
} deriving (Eq, Read, Show, Data, Typeable, Generic)
-- | Creates a value of 'UpdateConfigurationSetSendingEnabled' with the minimum fields required to make a request.
--
-- Use one of the following lenses to modify other fields as desired:
--
-- * 'ucsseConfigurationSetName' - The name of the configuration set that you want to update.
--
-- * 'ucsseEnabled' - Describes whether email sending is enabled or disabled for the configuration set.
updateConfigurationSetSendingEnabled
:: Text -- ^ 'ucsseConfigurationSetName'
-> Bool -- ^ 'ucsseEnabled'
-> UpdateConfigurationSetSendingEnabled
updateConfigurationSetSendingEnabled pConfigurationSetName_ pEnabled_ =
UpdateConfigurationSetSendingEnabled'
{ _ucsseConfigurationSetName = pConfigurationSetName_
, _ucsseEnabled = pEnabled_
}
-- | The name of the configuration set that you want to update.
ucsseConfigurationSetName :: Lens' UpdateConfigurationSetSendingEnabled Text
ucsseConfigurationSetName = lens _ucsseConfigurationSetName (\ s a -> s{_ucsseConfigurationSetName = a})
-- | Describes whether email sending is enabled or disabled for the configuration set.
ucsseEnabled :: Lens' UpdateConfigurationSetSendingEnabled Bool
ucsseEnabled = lens _ucsseEnabled (\ s a -> s{_ucsseEnabled = a})
instance AWSRequest
UpdateConfigurationSetSendingEnabled
where
type Rs UpdateConfigurationSetSendingEnabled =
UpdateConfigurationSetSendingEnabledResponse
request = postQuery ses
response
= receiveNull
UpdateConfigurationSetSendingEnabledResponse'
instance Hashable
UpdateConfigurationSetSendingEnabled
where
instance NFData UpdateConfigurationSetSendingEnabled
where
instance ToHeaders
UpdateConfigurationSetSendingEnabled
where
toHeaders = const mempty
instance ToPath UpdateConfigurationSetSendingEnabled
where
toPath = const "/"
instance ToQuery UpdateConfigurationSetSendingEnabled
where
toQuery UpdateConfigurationSetSendingEnabled'{..}
= mconcat
["Action" =:
("UpdateConfigurationSetSendingEnabled" ::
ByteString),
"Version" =: ("2010-12-01" :: ByteString),
"ConfigurationSetName" =: _ucsseConfigurationSetName,
"Enabled" =: _ucsseEnabled]
-- | /See:/ 'updateConfigurationSetSendingEnabledResponse' smart constructor.
data UpdateConfigurationSetSendingEnabledResponse =
UpdateConfigurationSetSendingEnabledResponse'
deriving (Eq, Read, Show, Data, Typeable, Generic)
-- | Creates a value of 'UpdateConfigurationSetSendingEnabledResponse' with the minimum fields required to make a request.
--
updateConfigurationSetSendingEnabledResponse
:: UpdateConfigurationSetSendingEnabledResponse
updateConfigurationSetSendingEnabledResponse =
UpdateConfigurationSetSendingEnabledResponse'
instance NFData
UpdateConfigurationSetSendingEnabledResponse
where