· 7 years ago · Mar 16, 2018, 09:10 AM
1module Helper.Aws
2 (listAllEmails
3 ) where
4
5import Control.Lens ((&), (.~))
6import Control.Monad.Trans.AWS (Error, runAWST, trying, _Error)
7import Data.ByteString (ByteString)
8import Network.AWS (Region (NorthVirginia), newEnv, runResourceT, send, within)
9import Network.AWS.Auth (AccessKey (..), Credentials (FromKeys), SecretKey (..))
10import Network.AWS.SES (IdentityType (..))
11import Network.AWS.SES.ListIdentities (ListIdentitiesResponse, liIdentityType,
12 listIdentities)
13import Prelude (Either (..), IO, Maybe (..), ($), (.))
14
15
16awsAccessKey :: ByteString
17awsAccessKey = "************"
18
19awsSecretKey :: ByteString
20awsSecretKey = "************"
21
22listAllEmails :: IO (Either Error ListIdentitiesResponse)
23listAllEmails = do
24 env <- newEnv $ FromKeys (AccessKey awsAccessKey) (SecretKey awsSecretKey)
25 trying _Error (runResourceT . runAWST env . within NorthVirginia $
26 send (listIdentities & liIdentityType .~ (Just EmailAddress) )) :: IO (Either Error ListIdentitiesResponse)