{-# LANGUAGE DataKinds #-} {-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE GeneralizedNewtypeDeriving #-} {-# LANGUAGE LambdaCase #-} {-# LANGUAGE NoImplicitPrelude #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE RecordWildCards #-} {-# LANGUAGE TypeFamilies #-} {-# OPTIONS_GHC -fno-warn-unused-imports #-} -- Module : Network.AWS.SES.SetIdentityFeedbackForwardingEnabled -- Copyright : (c) 2013-2014 Brendan Hay -- License : This Source Code Form is subject to the terms of -- the Mozilla Public License, v. 2.0. -- A copy of the MPL can be found in the LICENSE file or -- you can obtain it at http://mozilla.org/MPL/2.0/. -- Maintainer : Brendan Hay -- Stability : experimental -- Portability : non-portable (GHC extensions) -- | Given an identity (email address or domain), enables or disables whether -- Amazon SES forwards bounce and complaint notifications as email. Feedback -- forwarding can only be disabled when Amazon Simple Notification Service -- (Amazon SNS) topics are specified for both bounces and complaints. This -- action is throttled at one request per second. For more information about -- using notifications with Amazon SES, see the Amazon SES Developer Guide. -- -- module Network.AWS.SES.SetIdentityFeedbackForwardingEnabled ( -- * Request SetIdentityFeedbackForwardingEnabled -- ** Request constructor , setIdentityFeedbackForwardingEnabled -- ** Request lenses , siffeForwardingEnabled , siffeIdentity -- * Response , SetIdentityFeedbackForwardingEnabledResponse -- ** Response constructor , setIdentityFeedbackForwardingEnabledResponse ) where import Network.AWS.Prelude import Network.AWS.Request.Query import Network.AWS.SES.Types import qualified GHC.Exts data SetIdentityFeedbackForwardingEnabled = SetIdentityFeedbackForwardingEnabled { _siffeForwardingEnabled :: Bool , _siffeIdentity :: Text } deriving (Eq, Ord, Show) -- | 'SetIdentityFeedbackForwardingEnabled' constructor. -- -- The fields accessible through corresponding lenses are: -- -- * 'siffeForwardingEnabled' @::@ 'Bool' -- -- * 'siffeIdentity' @::@ 'Text' -- setIdentityFeedbackForwardingEnabled :: Text -- ^ 'siffeIdentity' -> Bool -- ^ 'siffeForwardingEnabled' -> SetIdentityFeedbackForwardingEnabled setIdentityFeedbackForwardingEnabled p1 p2 = SetIdentityFeedbackForwardingEnabled { _siffeIdentity = p1 , _siffeForwardingEnabled = p2 } -- | Sets whether Amazon SES will forward bounce and complaint notifications -- as email. true specifies that Amazon SES will forward bounce and -- complaint notifications as email, in addition to any Amazon SNS topic -- publishing otherwise specified. false specifies that Amazon SES will -- publish bounce and complaint notifications only through Amazon SNS. This -- value can only be set to false when Amazon SNS topics are set for both -- Bounce and Complaint notification types. siffeForwardingEnabled :: Lens' SetIdentityFeedbackForwardingEnabled Bool siffeForwardingEnabled = lens _siffeForwardingEnabled (\s a -> s { _siffeForwardingEnabled = a }) -- | The identity for which to set bounce and complaint notification -- forwarding. Examples: user@example.com, example.com. siffeIdentity :: Lens' SetIdentityFeedbackForwardingEnabled Text siffeIdentity = lens _siffeIdentity (\s a -> s { _siffeIdentity = a }) data SetIdentityFeedbackForwardingEnabledResponse = SetIdentityFeedbackForwardingEnabledResponse deriving (Eq, Ord, Show, Generic) -- | 'SetIdentityFeedbackForwardingEnabledResponse' constructor. setIdentityFeedbackForwardingEnabledResponse :: SetIdentityFeedbackForwardingEnabledResponse setIdentityFeedbackForwardingEnabledResponse = SetIdentityFeedbackForwardingEnabledResponse instance ToPath SetIdentityFeedbackForwardingEnabled where toPath = const "/" instance ToQuery SetIdentityFeedbackForwardingEnabled where toQuery SetIdentityFeedbackForwardingEnabled{..} = mconcat [ "ForwardingEnabled" =? _siffeForwardingEnabled , "Identity" =? _siffeIdentity ] instance ToHeaders SetIdentityFeedbackForwardingEnabled instance AWSRequest SetIdentityFeedbackForwardingEnabled where type Sv SetIdentityFeedbackForwardingEnabled = SES type Rs SetIdentityFeedbackForwardingEnabled = SetIdentityFeedbackForwardingEnabledResponse request = post "SetIdentityFeedbackForwardingEnabled" response = nullResponse SetIdentityFeedbackForwardingEnabledResponse