amazonka-ses 0.3.6 → 1.0.0
raw patch · 33 files changed
+4143/−2258 lines, 33 filesdep +amazonka-sesdep +amazonka-testdep +bytestringdep ~amazonka-coredep ~basePVP ok
version bump matches the API change (PVP)
Dependencies added: amazonka-ses, amazonka-test, bytestring, lens, tasty, tasty-hunit, text, time, unordered-containers
Dependency ranges changed: amazonka-core, base
API changes (from Hackage documentation)
- Network.AWS.SES.DeleteIdentity: instance IsString DeleteIdentity
- Network.AWS.SES.DeleteIdentity: instance Monoid DeleteIdentity
- Network.AWS.SES.DeleteIdentity: instance Ord DeleteIdentity
- Network.AWS.SES.DeleteIdentity: instance Ord DeleteIdentityResponse
- Network.AWS.SES.DeleteVerifiedEmailAddress: instance IsString DeleteVerifiedEmailAddress
- Network.AWS.SES.DeleteVerifiedEmailAddress: instance Monoid DeleteVerifiedEmailAddress
- Network.AWS.SES.DeleteVerifiedEmailAddress: instance Ord DeleteVerifiedEmailAddress
- Network.AWS.SES.DeleteVerifiedEmailAddress: instance Ord DeleteVerifiedEmailAddressResponse
- Network.AWS.SES.GetIdentityDkimAttributes: gidarDkimAttributes :: Lens' GetIdentityDkimAttributesResponse (HashMap Text IdentityDkimAttributes)
- Network.AWS.SES.GetIdentityDkimAttributes: instance FromXML GetIdentityDkimAttributesResponse
- Network.AWS.SES.GetIdentityDkimAttributes: instance IsList GetIdentityDkimAttributes
- Network.AWS.SES.GetIdentityDkimAttributes: instance Monoid GetIdentityDkimAttributes
- Network.AWS.SES.GetIdentityDkimAttributes: instance Monoid GetIdentityDkimAttributesResponse
- Network.AWS.SES.GetIdentityDkimAttributes: instance Ord GetIdentityDkimAttributes
- Network.AWS.SES.GetIdentityDkimAttributes: instance Semigroup GetIdentityDkimAttributes
- Network.AWS.SES.GetIdentityDkimAttributes: instance Semigroup GetIdentityDkimAttributesResponse
- Network.AWS.SES.GetIdentityNotificationAttributes: ginarNotificationAttributes :: Lens' GetIdentityNotificationAttributesResponse (HashMap Text IdentityNotificationAttributes)
- Network.AWS.SES.GetIdentityNotificationAttributes: instance FromXML GetIdentityNotificationAttributesResponse
- Network.AWS.SES.GetIdentityNotificationAttributes: instance IsList GetIdentityNotificationAttributes
- Network.AWS.SES.GetIdentityNotificationAttributes: instance Monoid GetIdentityNotificationAttributes
- Network.AWS.SES.GetIdentityNotificationAttributes: instance Monoid GetIdentityNotificationAttributesResponse
- Network.AWS.SES.GetIdentityNotificationAttributes: instance Ord GetIdentityNotificationAttributes
- Network.AWS.SES.GetIdentityNotificationAttributes: instance Semigroup GetIdentityNotificationAttributes
- Network.AWS.SES.GetIdentityNotificationAttributes: instance Semigroup GetIdentityNotificationAttributesResponse
- Network.AWS.SES.GetIdentityVerificationAttributes: givarVerificationAttributes :: Lens' GetIdentityVerificationAttributesResponse (HashMap Text IdentityVerificationAttributes)
- Network.AWS.SES.GetIdentityVerificationAttributes: instance FromXML GetIdentityVerificationAttributesResponse
- Network.AWS.SES.GetIdentityVerificationAttributes: instance IsList GetIdentityVerificationAttributes
- Network.AWS.SES.GetIdentityVerificationAttributes: instance Monoid GetIdentityVerificationAttributes
- Network.AWS.SES.GetIdentityVerificationAttributes: instance Monoid GetIdentityVerificationAttributesResponse
- Network.AWS.SES.GetIdentityVerificationAttributes: instance Ord GetIdentityVerificationAttributes
- Network.AWS.SES.GetIdentityVerificationAttributes: instance Semigroup GetIdentityVerificationAttributes
- Network.AWS.SES.GetIdentityVerificationAttributes: instance Semigroup GetIdentityVerificationAttributesResponse
- Network.AWS.SES.GetSendQuota: gsqrMax24HourSend :: Lens' GetSendQuotaResponse (Maybe Double)
- Network.AWS.SES.GetSendQuota: gsqrMaxSendRate :: Lens' GetSendQuotaResponse (Maybe Double)
- Network.AWS.SES.GetSendQuota: gsqrSentLast24Hours :: Lens' GetSendQuotaResponse (Maybe Double)
- Network.AWS.SES.GetSendQuota: instance FromXML GetSendQuotaResponse
- Network.AWS.SES.GetSendQuota: instance Ord GetSendQuota
- Network.AWS.SES.GetSendQuota: instance Ord GetSendQuotaResponse
- Network.AWS.SES.GetSendStatistics: gssrSendDataPoints :: Lens' GetSendStatisticsResponse [SendDataPoint]
- Network.AWS.SES.GetSendStatistics: instance FromXML GetSendStatisticsResponse
- Network.AWS.SES.GetSendStatistics: instance IsList GetSendStatisticsResponse
- Network.AWS.SES.GetSendStatistics: instance Monoid GetSendStatisticsResponse
- Network.AWS.SES.GetSendStatistics: instance Ord GetSendStatistics
- Network.AWS.SES.GetSendStatistics: instance Semigroup GetSendStatisticsResponse
- Network.AWS.SES.ListIdentities: instance FromXML ListIdentitiesResponse
- Network.AWS.SES.ListIdentities: instance Ord ListIdentitiesResponse
- Network.AWS.SES.ListIdentities: lirIdentities :: Lens' ListIdentitiesResponse [Text]
- Network.AWS.SES.ListIdentities: lirNextToken :: Lens' ListIdentitiesResponse (Maybe Text)
- Network.AWS.SES.ListVerifiedEmailAddresses: instance FromXML ListVerifiedEmailAddressesResponse
- Network.AWS.SES.ListVerifiedEmailAddresses: instance IsList ListVerifiedEmailAddressesResponse
- Network.AWS.SES.ListVerifiedEmailAddresses: instance Monoid ListVerifiedEmailAddressesResponse
- Network.AWS.SES.ListVerifiedEmailAddresses: instance Ord ListVerifiedEmailAddresses
- Network.AWS.SES.ListVerifiedEmailAddresses: instance Ord ListVerifiedEmailAddressesResponse
- Network.AWS.SES.ListVerifiedEmailAddresses: instance Semigroup ListVerifiedEmailAddressesResponse
- Network.AWS.SES.ListVerifiedEmailAddresses: lvearVerifiedEmailAddresses :: Lens' ListVerifiedEmailAddressesResponse [Text]
- Network.AWS.SES.SendEmail: instance FromXML SendEmailResponse
- Network.AWS.SES.SendEmail: instance IsString SendEmailResponse
- Network.AWS.SES.SendEmail: instance Monoid SendEmailResponse
- Network.AWS.SES.SendEmail: instance Ord SendEmailResponse
- Network.AWS.SES.SendEmail: serMessageId :: Lens' SendEmailResponse Text
- Network.AWS.SES.SendRawEmail: instance FromXML SendRawEmailResponse
- Network.AWS.SES.SendRawEmail: instance IsString SendRawEmailResponse
- Network.AWS.SES.SendRawEmail: instance Monoid SendRawEmailResponse
- Network.AWS.SES.SendRawEmail: instance Ord SendRawEmailResponse
- Network.AWS.SES.SendRawEmail: srerMessageId :: Lens' SendRawEmailResponse Text
- Network.AWS.SES.SetIdentityDkimEnabled: instance Ord SetIdentityDkimEnabled
- Network.AWS.SES.SetIdentityDkimEnabled: instance Ord SetIdentityDkimEnabledResponse
- Network.AWS.SES.SetIdentityFeedbackForwardingEnabled: instance Ord SetIdentityFeedbackForwardingEnabled
- Network.AWS.SES.SetIdentityFeedbackForwardingEnabled: instance Ord SetIdentityFeedbackForwardingEnabledResponse
- Network.AWS.SES.SetIdentityNotificationTopic: instance Ord SetIdentityNotificationTopicResponse
- Network.AWS.SES.SetIdentityNotificationTopic: sintSnsTopic :: Lens' SetIdentityNotificationTopic (Maybe Text)
- Network.AWS.SES.Types: ITDomain :: IdentityType
- Network.AWS.SES.Types: ITEmailAddress :: IdentityType
- Network.AWS.SES.Types: bHtml :: Lens' Body (Maybe Content)
- Network.AWS.SES.Types: dBccAddresses :: Lens' Destination [Text]
- Network.AWS.SES.Types: dCcAddresses :: Lens' Destination [Text]
- Network.AWS.SES.Types: data RESTError :: *
- Network.AWS.SES.Types: instance Constructor C1_0IdentityType
- Network.AWS.SES.Types: instance Constructor C1_0NotificationType
- Network.AWS.SES.Types: instance Constructor C1_0VerificationStatus
- Network.AWS.SES.Types: instance Constructor C1_1IdentityType
- Network.AWS.SES.Types: instance Constructor C1_1NotificationType
- Network.AWS.SES.Types: instance Constructor C1_1VerificationStatus
- Network.AWS.SES.Types: instance Constructor C1_2NotificationType
- Network.AWS.SES.Types: instance Constructor C1_2VerificationStatus
- Network.AWS.SES.Types: instance Constructor C1_3VerificationStatus
- Network.AWS.SES.Types: instance Constructor C1_4VerificationStatus
- Network.AWS.SES.Types: instance Datatype D1IdentityType
- Network.AWS.SES.Types: instance Datatype D1NotificationType
- Network.AWS.SES.Types: instance Datatype D1VerificationStatus
- Network.AWS.SES.Types: instance Enum IdentityType
- Network.AWS.SES.Types: instance Enum NotificationType
- Network.AWS.SES.Types: instance Enum VerificationStatus
- Network.AWS.SES.Types: instance Eq Body
- Network.AWS.SES.Types: instance Eq Content
- Network.AWS.SES.Types: instance Eq Destination
- Network.AWS.SES.Types: instance Eq IdentityDkimAttributes
- Network.AWS.SES.Types: instance Eq IdentityNotificationAttributes
- Network.AWS.SES.Types: instance Eq IdentityType
- Network.AWS.SES.Types: instance Eq IdentityVerificationAttributes
- Network.AWS.SES.Types: instance Eq Message
- Network.AWS.SES.Types: instance Eq NotificationType
- Network.AWS.SES.Types: instance Eq RawMessage
- Network.AWS.SES.Types: instance Eq SendDataPoint
- Network.AWS.SES.Types: instance Eq VerificationStatus
- Network.AWS.SES.Types: instance FromText IdentityType
- Network.AWS.SES.Types: instance FromText NotificationType
- Network.AWS.SES.Types: instance FromText VerificationStatus
- Network.AWS.SES.Types: instance FromXML Body
- Network.AWS.SES.Types: instance FromXML Content
- Network.AWS.SES.Types: instance FromXML Destination
- Network.AWS.SES.Types: instance FromXML IdentityDkimAttributes
- Network.AWS.SES.Types: instance FromXML IdentityNotificationAttributes
- Network.AWS.SES.Types: instance FromXML IdentityType
- Network.AWS.SES.Types: instance FromXML IdentityVerificationAttributes
- Network.AWS.SES.Types: instance FromXML Message
- Network.AWS.SES.Types: instance FromXML NotificationType
- Network.AWS.SES.Types: instance FromXML RawMessage
- Network.AWS.SES.Types: instance FromXML SendDataPoint
- Network.AWS.SES.Types: instance FromXML VerificationStatus
- Network.AWS.SES.Types: instance Generic IdentityType
- Network.AWS.SES.Types: instance Generic NotificationType
- Network.AWS.SES.Types: instance Generic VerificationStatus
- Network.AWS.SES.Types: instance Hashable IdentityType
- Network.AWS.SES.Types: instance Hashable NotificationType
- Network.AWS.SES.Types: instance Hashable VerificationStatus
- Network.AWS.SES.Types: instance Ord Content
- Network.AWS.SES.Types: instance Ord Destination
- Network.AWS.SES.Types: instance Ord IdentityNotificationAttributes
- Network.AWS.SES.Types: instance Ord IdentityType
- Network.AWS.SES.Types: instance Ord NotificationType
- Network.AWS.SES.Types: instance Ord SendDataPoint
- Network.AWS.SES.Types: instance Ord VerificationStatus
- Network.AWS.SES.Types: instance Read Body
- Network.AWS.SES.Types: instance Read Content
- Network.AWS.SES.Types: instance Read Destination
- Network.AWS.SES.Types: instance Read IdentityDkimAttributes
- Network.AWS.SES.Types: instance Read IdentityNotificationAttributes
- Network.AWS.SES.Types: instance Read IdentityType
- Network.AWS.SES.Types: instance Read IdentityVerificationAttributes
- Network.AWS.SES.Types: instance Read Message
- Network.AWS.SES.Types: instance Read NotificationType
- Network.AWS.SES.Types: instance Read RawMessage
- Network.AWS.SES.Types: instance Read SendDataPoint
- Network.AWS.SES.Types: instance Read VerificationStatus
- Network.AWS.SES.Types: instance Show Body
- Network.AWS.SES.Types: instance Show Content
- Network.AWS.SES.Types: instance Show Destination
- Network.AWS.SES.Types: instance Show IdentityDkimAttributes
- Network.AWS.SES.Types: instance Show IdentityNotificationAttributes
- Network.AWS.SES.Types: instance Show IdentityType
- Network.AWS.SES.Types: instance Show IdentityVerificationAttributes
- Network.AWS.SES.Types: instance Show Message
- Network.AWS.SES.Types: instance Show NotificationType
- Network.AWS.SES.Types: instance Show RawMessage
- Network.AWS.SES.Types: instance Show SendDataPoint
- Network.AWS.SES.Types: instance Show VerificationStatus
- Network.AWS.SES.Types: instance ToByteString IdentityType
- Network.AWS.SES.Types: instance ToByteString NotificationType
- Network.AWS.SES.Types: instance ToByteString VerificationStatus
- Network.AWS.SES.Types: instance ToHeader IdentityType
- Network.AWS.SES.Types: instance ToHeader NotificationType
- Network.AWS.SES.Types: instance ToHeader VerificationStatus
- Network.AWS.SES.Types: instance ToQuery Body
- Network.AWS.SES.Types: instance ToQuery Content
- Network.AWS.SES.Types: instance ToQuery Destination
- Network.AWS.SES.Types: instance ToQuery IdentityDkimAttributes
- Network.AWS.SES.Types: instance ToQuery IdentityNotificationAttributes
- Network.AWS.SES.Types: instance ToQuery IdentityType
- Network.AWS.SES.Types: instance ToQuery IdentityVerificationAttributes
- Network.AWS.SES.Types: instance ToQuery Message
- Network.AWS.SES.Types: instance ToQuery NotificationType
- Network.AWS.SES.Types: instance ToQuery RawMessage
- Network.AWS.SES.Types: instance ToQuery SendDataPoint
- Network.AWS.SES.Types: instance ToQuery VerificationStatus
- Network.AWS.SES.Types: instance ToText IdentityType
- Network.AWS.SES.Types: instance ToText NotificationType
- Network.AWS.SES.Types: instance ToText VerificationStatus
- Network.AWS.SES.Types: ns :: Text
- Network.AWS.SES.VerifyDomainDkim: instance FromXML VerifyDomainDkimResponse
- Network.AWS.SES.VerifyDomainDkim: instance IsList VerifyDomainDkimResponse
- Network.AWS.SES.VerifyDomainDkim: instance IsString VerifyDomainDkim
- Network.AWS.SES.VerifyDomainDkim: instance Monoid VerifyDomainDkim
- Network.AWS.SES.VerifyDomainDkim: instance Monoid VerifyDomainDkimResponse
- Network.AWS.SES.VerifyDomainDkim: instance Ord VerifyDomainDkim
- Network.AWS.SES.VerifyDomainDkim: instance Ord VerifyDomainDkimResponse
- Network.AWS.SES.VerifyDomainDkim: instance Semigroup VerifyDomainDkimResponse
- Network.AWS.SES.VerifyDomainDkim: vddrDkimTokens :: Lens' VerifyDomainDkimResponse [Text]
- Network.AWS.SES.VerifyDomainIdentity: instance FromXML VerifyDomainIdentityResponse
- Network.AWS.SES.VerifyDomainIdentity: instance IsString VerifyDomainIdentity
- Network.AWS.SES.VerifyDomainIdentity: instance IsString VerifyDomainIdentityResponse
- Network.AWS.SES.VerifyDomainIdentity: instance Monoid VerifyDomainIdentity
- Network.AWS.SES.VerifyDomainIdentity: instance Monoid VerifyDomainIdentityResponse
- Network.AWS.SES.VerifyDomainIdentity: instance Ord VerifyDomainIdentity
- Network.AWS.SES.VerifyDomainIdentity: instance Ord VerifyDomainIdentityResponse
- Network.AWS.SES.VerifyDomainIdentity: vdirVerificationToken :: Lens' VerifyDomainIdentityResponse Text
- Network.AWS.SES.VerifyEmailAddress: instance IsString VerifyEmailAddress
- Network.AWS.SES.VerifyEmailAddress: instance Monoid VerifyEmailAddress
- Network.AWS.SES.VerifyEmailAddress: instance Ord VerifyEmailAddress
- Network.AWS.SES.VerifyEmailAddress: instance Ord VerifyEmailAddressResponse
- Network.AWS.SES.VerifyEmailIdentity: instance IsString VerifyEmailIdentity
- Network.AWS.SES.VerifyEmailIdentity: instance Monoid VerifyEmailIdentity
- Network.AWS.SES.VerifyEmailIdentity: instance Ord VerifyEmailIdentity
- Network.AWS.SES.VerifyEmailIdentity: instance Ord VerifyEmailIdentityResponse
- Network.AWS.SES.Waiters: identityExists :: Wait GetIdentityVerificationAttributes
+ Network.AWS.SES: Bounce :: NotificationType
+ Network.AWS.SES: Complaint :: NotificationType
+ Network.AWS.SES: Delivery :: NotificationType
+ Network.AWS.SES: Domain :: IdentityType
+ Network.AWS.SES: EmailAddress :: IdentityType
+ Network.AWS.SES: Failed :: VerificationStatus
+ Network.AWS.SES: NotStarted :: VerificationStatus
+ Network.AWS.SES: Pending :: VerificationStatus
+ Network.AWS.SES: Success :: VerificationStatus
+ Network.AWS.SES: TemporaryFailure :: VerificationStatus
+ Network.AWS.SES: _InvalidPolicyException :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SES: _MessageRejected :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SES: bHTML :: Lens' Body (Maybe Content)
+ Network.AWS.SES: bText :: Lens' Body (Maybe Content)
+ Network.AWS.SES: body :: Body
+ Network.AWS.SES: cCharset :: Lens' Content (Maybe Text)
+ Network.AWS.SES: cData :: Lens' Content Text
+ Network.AWS.SES: content :: Text -> Content
+ Network.AWS.SES: dBCCAddresses :: Lens' Destination [Text]
+ Network.AWS.SES: dCCAddresses :: Lens' Destination [Text]
+ Network.AWS.SES: dToAddresses :: Lens' Destination [Text]
+ Network.AWS.SES: data Body
+ Network.AWS.SES: data Content
+ Network.AWS.SES: data Destination
+ Network.AWS.SES: data IdentityDkimAttributes
+ Network.AWS.SES: data IdentityNotificationAttributes
+ Network.AWS.SES: data IdentityType
+ Network.AWS.SES: data IdentityVerificationAttributes
+ Network.AWS.SES: data Message
+ Network.AWS.SES: data NotificationType
+ Network.AWS.SES: data RawMessage
+ Network.AWS.SES: data SES
+ Network.AWS.SES: data SendDataPoint
+ Network.AWS.SES: data VerificationStatus
+ Network.AWS.SES: destination :: Destination
+ Network.AWS.SES: idaDkimEnabled :: Lens' IdentityDkimAttributes Bool
+ Network.AWS.SES: idaDkimTokens :: Lens' IdentityDkimAttributes [Text]
+ Network.AWS.SES: idaDkimVerificationStatus :: Lens' IdentityDkimAttributes VerificationStatus
+ Network.AWS.SES: identityDkimAttributes :: Bool -> VerificationStatus -> IdentityDkimAttributes
+ Network.AWS.SES: identityNotificationAttributes :: Text -> Text -> Text -> Bool -> IdentityNotificationAttributes
+ Network.AWS.SES: identityVerificationAttributes :: VerificationStatus -> IdentityVerificationAttributes
+ Network.AWS.SES: inaBounceTopic :: Lens' IdentityNotificationAttributes Text
+ Network.AWS.SES: inaComplaintTopic :: Lens' IdentityNotificationAttributes Text
+ Network.AWS.SES: inaDeliveryTopic :: Lens' IdentityNotificationAttributes Text
+ Network.AWS.SES: inaForwardingEnabled :: Lens' IdentityNotificationAttributes Bool
+ Network.AWS.SES: ivaVerificationStatus :: Lens' IdentityVerificationAttributes VerificationStatus
+ Network.AWS.SES: ivaVerificationToken :: Lens' IdentityVerificationAttributes (Maybe Text)
+ Network.AWS.SES: mBody :: Lens' Message Body
+ Network.AWS.SES: mSubject :: Lens' Message Content
+ Network.AWS.SES: message :: Content -> Body -> Message
+ Network.AWS.SES: rawMessage :: ByteString -> RawMessage
+ Network.AWS.SES: rmData :: Lens' RawMessage ByteString
+ Network.AWS.SES: sdpBounces :: Lens' SendDataPoint (Maybe Integer)
+ Network.AWS.SES: sdpComplaints :: Lens' SendDataPoint (Maybe Integer)
+ Network.AWS.SES: sdpDeliveryAttempts :: Lens' SendDataPoint (Maybe Integer)
+ Network.AWS.SES: sdpRejects :: Lens' SendDataPoint (Maybe Integer)
+ Network.AWS.SES: sdpTimestamp :: Lens' SendDataPoint (Maybe UTCTime)
+ Network.AWS.SES: sendDataPoint :: SendDataPoint
+ Network.AWS.SES.DeleteIdentity: dirsStatus :: Lens' DeleteIdentityResponse Int
+ Network.AWS.SES.DeleteIdentity: instance Constructor C1_0DeleteIdentity
+ Network.AWS.SES.DeleteIdentity: instance Data DeleteIdentity
+ Network.AWS.SES.DeleteIdentity: instance Data DeleteIdentityResponse
+ Network.AWS.SES.DeleteIdentity: instance Datatype D1DeleteIdentity
+ Network.AWS.SES.DeleteIdentity: instance Generic DeleteIdentity
+ Network.AWS.SES.DeleteIdentity: instance Selector S1_0_0DeleteIdentity
+ Network.AWS.SES.DeleteIdentity: instance Selector S1_0_0DeleteIdentityResponse
+ Network.AWS.SES.DeleteIdentity: instance Typeable DeleteIdentity
+ Network.AWS.SES.DeleteIdentity: instance Typeable DeleteIdentityResponse
+ Network.AWS.SES.DeleteIdentityPolicy: data DeleteIdentityPolicy
+ Network.AWS.SES.DeleteIdentityPolicy: data DeleteIdentityPolicyResponse
+ Network.AWS.SES.DeleteIdentityPolicy: deleteIdentityPolicy :: Text -> Text -> DeleteIdentityPolicy
+ Network.AWS.SES.DeleteIdentityPolicy: deleteIdentityPolicyResponse :: Int -> DeleteIdentityPolicyResponse
+ Network.AWS.SES.DeleteIdentityPolicy: dipIdentity :: Lens' DeleteIdentityPolicy Text
+ Network.AWS.SES.DeleteIdentityPolicy: dipPolicyName :: Lens' DeleteIdentityPolicy Text
+ Network.AWS.SES.DeleteIdentityPolicy: diprsStatus :: Lens' DeleteIdentityPolicyResponse Int
+ Network.AWS.SES.DeleteIdentityPolicy: instance AWSRequest DeleteIdentityPolicy
+ Network.AWS.SES.DeleteIdentityPolicy: instance Constructor C1_0DeleteIdentityPolicy
+ Network.AWS.SES.DeleteIdentityPolicy: instance Constructor C1_0DeleteIdentityPolicyResponse
+ Network.AWS.SES.DeleteIdentityPolicy: instance Data DeleteIdentityPolicy
+ Network.AWS.SES.DeleteIdentityPolicy: instance Data DeleteIdentityPolicyResponse
+ Network.AWS.SES.DeleteIdentityPolicy: instance Datatype D1DeleteIdentityPolicy
+ Network.AWS.SES.DeleteIdentityPolicy: instance Datatype D1DeleteIdentityPolicyResponse
+ Network.AWS.SES.DeleteIdentityPolicy: instance Eq DeleteIdentityPolicy
+ Network.AWS.SES.DeleteIdentityPolicy: instance Eq DeleteIdentityPolicyResponse
+ Network.AWS.SES.DeleteIdentityPolicy: instance Generic DeleteIdentityPolicy
+ Network.AWS.SES.DeleteIdentityPolicy: instance Generic DeleteIdentityPolicyResponse
+ Network.AWS.SES.DeleteIdentityPolicy: instance Read DeleteIdentityPolicy
+ Network.AWS.SES.DeleteIdentityPolicy: instance Read DeleteIdentityPolicyResponse
+ Network.AWS.SES.DeleteIdentityPolicy: instance Selector S1_0_0DeleteIdentityPolicy
+ Network.AWS.SES.DeleteIdentityPolicy: instance Selector S1_0_0DeleteIdentityPolicyResponse
+ Network.AWS.SES.DeleteIdentityPolicy: instance Selector S1_0_1DeleteIdentityPolicy
+ Network.AWS.SES.DeleteIdentityPolicy: instance Show DeleteIdentityPolicy
+ Network.AWS.SES.DeleteIdentityPolicy: instance Show DeleteIdentityPolicyResponse
+ Network.AWS.SES.DeleteIdentityPolicy: instance ToHeaders DeleteIdentityPolicy
+ Network.AWS.SES.DeleteIdentityPolicy: instance ToPath DeleteIdentityPolicy
+ Network.AWS.SES.DeleteIdentityPolicy: instance ToQuery DeleteIdentityPolicy
+ Network.AWS.SES.DeleteIdentityPolicy: instance Typeable DeleteIdentityPolicy
+ Network.AWS.SES.DeleteIdentityPolicy: instance Typeable DeleteIdentityPolicyResponse
+ Network.AWS.SES.DeleteVerifiedEmailAddress: instance Constructor C1_0DeleteVerifiedEmailAddress
+ Network.AWS.SES.DeleteVerifiedEmailAddress: instance Data DeleteVerifiedEmailAddress
+ Network.AWS.SES.DeleteVerifiedEmailAddress: instance Data DeleteVerifiedEmailAddressResponse
+ Network.AWS.SES.DeleteVerifiedEmailAddress: instance Datatype D1DeleteVerifiedEmailAddress
+ Network.AWS.SES.DeleteVerifiedEmailAddress: instance Generic DeleteVerifiedEmailAddress
+ Network.AWS.SES.DeleteVerifiedEmailAddress: instance Selector S1_0_0DeleteVerifiedEmailAddress
+ Network.AWS.SES.DeleteVerifiedEmailAddress: instance Typeable DeleteVerifiedEmailAddress
+ Network.AWS.SES.DeleteVerifiedEmailAddress: instance Typeable DeleteVerifiedEmailAddressResponse
+ Network.AWS.SES.GetIdentityDkimAttributes: gidarsDkimAttributes :: Lens' GetIdentityDkimAttributesResponse (HashMap Text IdentityDkimAttributes)
+ Network.AWS.SES.GetIdentityDkimAttributes: gidarsStatus :: Lens' GetIdentityDkimAttributesResponse Int
+ Network.AWS.SES.GetIdentityDkimAttributes: instance Constructor C1_0GetIdentityDkimAttributes
+ Network.AWS.SES.GetIdentityDkimAttributes: instance Constructor C1_0GetIdentityDkimAttributesResponse
+ Network.AWS.SES.GetIdentityDkimAttributes: instance Data GetIdentityDkimAttributes
+ Network.AWS.SES.GetIdentityDkimAttributes: instance Data GetIdentityDkimAttributesResponse
+ Network.AWS.SES.GetIdentityDkimAttributes: instance Datatype D1GetIdentityDkimAttributes
+ Network.AWS.SES.GetIdentityDkimAttributes: instance Datatype D1GetIdentityDkimAttributesResponse
+ Network.AWS.SES.GetIdentityDkimAttributes: instance Generic GetIdentityDkimAttributes
+ Network.AWS.SES.GetIdentityDkimAttributes: instance Generic GetIdentityDkimAttributesResponse
+ Network.AWS.SES.GetIdentityDkimAttributes: instance Selector S1_0_0GetIdentityDkimAttributes
+ Network.AWS.SES.GetIdentityDkimAttributes: instance Selector S1_0_0GetIdentityDkimAttributesResponse
+ Network.AWS.SES.GetIdentityDkimAttributes: instance Selector S1_0_1GetIdentityDkimAttributesResponse
+ Network.AWS.SES.GetIdentityDkimAttributes: instance Typeable GetIdentityDkimAttributes
+ Network.AWS.SES.GetIdentityDkimAttributes: instance Typeable GetIdentityDkimAttributesResponse
+ Network.AWS.SES.GetIdentityNotificationAttributes: ginarsNotificationAttributes :: Lens' GetIdentityNotificationAttributesResponse (HashMap Text IdentityNotificationAttributes)
+ Network.AWS.SES.GetIdentityNotificationAttributes: ginarsStatus :: Lens' GetIdentityNotificationAttributesResponse Int
+ Network.AWS.SES.GetIdentityNotificationAttributes: instance Constructor C1_0GetIdentityNotificationAttributes
+ Network.AWS.SES.GetIdentityNotificationAttributes: instance Constructor C1_0GetIdentityNotificationAttributesResponse
+ Network.AWS.SES.GetIdentityNotificationAttributes: instance Data GetIdentityNotificationAttributes
+ Network.AWS.SES.GetIdentityNotificationAttributes: instance Data GetIdentityNotificationAttributesResponse
+ Network.AWS.SES.GetIdentityNotificationAttributes: instance Datatype D1GetIdentityNotificationAttributes
+ Network.AWS.SES.GetIdentityNotificationAttributes: instance Datatype D1GetIdentityNotificationAttributesResponse
+ Network.AWS.SES.GetIdentityNotificationAttributes: instance Generic GetIdentityNotificationAttributes
+ Network.AWS.SES.GetIdentityNotificationAttributes: instance Generic GetIdentityNotificationAttributesResponse
+ Network.AWS.SES.GetIdentityNotificationAttributes: instance Selector S1_0_0GetIdentityNotificationAttributes
+ Network.AWS.SES.GetIdentityNotificationAttributes: instance Selector S1_0_0GetIdentityNotificationAttributesResponse
+ Network.AWS.SES.GetIdentityNotificationAttributes: instance Selector S1_0_1GetIdentityNotificationAttributesResponse
+ Network.AWS.SES.GetIdentityNotificationAttributes: instance Typeable GetIdentityNotificationAttributes
+ Network.AWS.SES.GetIdentityNotificationAttributes: instance Typeable GetIdentityNotificationAttributesResponse
+ Network.AWS.SES.GetIdentityPolicies: data GetIdentityPolicies
+ Network.AWS.SES.GetIdentityPolicies: data GetIdentityPoliciesResponse
+ Network.AWS.SES.GetIdentityPolicies: getIdentityPolicies :: Text -> GetIdentityPolicies
+ Network.AWS.SES.GetIdentityPolicies: getIdentityPoliciesResponse :: Int -> GetIdentityPoliciesResponse
+ Network.AWS.SES.GetIdentityPolicies: gipIdentity :: Lens' GetIdentityPolicies Text
+ Network.AWS.SES.GetIdentityPolicies: gipPolicyNames :: Lens' GetIdentityPolicies [Text]
+ Network.AWS.SES.GetIdentityPolicies: giprsPolicies :: Lens' GetIdentityPoliciesResponse (HashMap Text Text)
+ Network.AWS.SES.GetIdentityPolicies: giprsStatus :: Lens' GetIdentityPoliciesResponse Int
+ Network.AWS.SES.GetIdentityPolicies: instance AWSRequest GetIdentityPolicies
+ Network.AWS.SES.GetIdentityPolicies: instance Constructor C1_0GetIdentityPolicies
+ Network.AWS.SES.GetIdentityPolicies: instance Constructor C1_0GetIdentityPoliciesResponse
+ Network.AWS.SES.GetIdentityPolicies: instance Data GetIdentityPolicies
+ Network.AWS.SES.GetIdentityPolicies: instance Data GetIdentityPoliciesResponse
+ Network.AWS.SES.GetIdentityPolicies: instance Datatype D1GetIdentityPolicies
+ Network.AWS.SES.GetIdentityPolicies: instance Datatype D1GetIdentityPoliciesResponse
+ Network.AWS.SES.GetIdentityPolicies: instance Eq GetIdentityPolicies
+ Network.AWS.SES.GetIdentityPolicies: instance Eq GetIdentityPoliciesResponse
+ Network.AWS.SES.GetIdentityPolicies: instance Generic GetIdentityPolicies
+ Network.AWS.SES.GetIdentityPolicies: instance Generic GetIdentityPoliciesResponse
+ Network.AWS.SES.GetIdentityPolicies: instance Read GetIdentityPolicies
+ Network.AWS.SES.GetIdentityPolicies: instance Read GetIdentityPoliciesResponse
+ Network.AWS.SES.GetIdentityPolicies: instance Selector S1_0_0GetIdentityPolicies
+ Network.AWS.SES.GetIdentityPolicies: instance Selector S1_0_0GetIdentityPoliciesResponse
+ Network.AWS.SES.GetIdentityPolicies: instance Selector S1_0_1GetIdentityPolicies
+ Network.AWS.SES.GetIdentityPolicies: instance Selector S1_0_1GetIdentityPoliciesResponse
+ Network.AWS.SES.GetIdentityPolicies: instance Show GetIdentityPolicies
+ Network.AWS.SES.GetIdentityPolicies: instance Show GetIdentityPoliciesResponse
+ Network.AWS.SES.GetIdentityPolicies: instance ToHeaders GetIdentityPolicies
+ Network.AWS.SES.GetIdentityPolicies: instance ToPath GetIdentityPolicies
+ Network.AWS.SES.GetIdentityPolicies: instance ToQuery GetIdentityPolicies
+ Network.AWS.SES.GetIdentityPolicies: instance Typeable GetIdentityPolicies
+ Network.AWS.SES.GetIdentityPolicies: instance Typeable GetIdentityPoliciesResponse
+ Network.AWS.SES.GetIdentityVerificationAttributes: givarsStatus :: Lens' GetIdentityVerificationAttributesResponse Int
+ Network.AWS.SES.GetIdentityVerificationAttributes: givarsVerificationAttributes :: Lens' GetIdentityVerificationAttributesResponse (HashMap Text IdentityVerificationAttributes)
+ Network.AWS.SES.GetIdentityVerificationAttributes: instance Constructor C1_0GetIdentityVerificationAttributes
+ Network.AWS.SES.GetIdentityVerificationAttributes: instance Constructor C1_0GetIdentityVerificationAttributesResponse
+ Network.AWS.SES.GetIdentityVerificationAttributes: instance Data GetIdentityVerificationAttributes
+ Network.AWS.SES.GetIdentityVerificationAttributes: instance Data GetIdentityVerificationAttributesResponse
+ Network.AWS.SES.GetIdentityVerificationAttributes: instance Datatype D1GetIdentityVerificationAttributes
+ Network.AWS.SES.GetIdentityVerificationAttributes: instance Datatype D1GetIdentityVerificationAttributesResponse
+ Network.AWS.SES.GetIdentityVerificationAttributes: instance Generic GetIdentityVerificationAttributes
+ Network.AWS.SES.GetIdentityVerificationAttributes: instance Generic GetIdentityVerificationAttributesResponse
+ Network.AWS.SES.GetIdentityVerificationAttributes: instance Selector S1_0_0GetIdentityVerificationAttributes
+ Network.AWS.SES.GetIdentityVerificationAttributes: instance Selector S1_0_0GetIdentityVerificationAttributesResponse
+ Network.AWS.SES.GetIdentityVerificationAttributes: instance Selector S1_0_1GetIdentityVerificationAttributesResponse
+ Network.AWS.SES.GetIdentityVerificationAttributes: instance Typeable GetIdentityVerificationAttributes
+ Network.AWS.SES.GetIdentityVerificationAttributes: instance Typeable GetIdentityVerificationAttributesResponse
+ Network.AWS.SES.GetSendQuota: gsqrsMax24HourSend :: Lens' GetSendQuotaResponse (Maybe Double)
+ Network.AWS.SES.GetSendQuota: gsqrsMaxSendRate :: Lens' GetSendQuotaResponse (Maybe Double)
+ Network.AWS.SES.GetSendQuota: gsqrsSentLast24Hours :: Lens' GetSendQuotaResponse (Maybe Double)
+ Network.AWS.SES.GetSendQuota: gsqrsStatus :: Lens' GetSendQuotaResponse Int
+ Network.AWS.SES.GetSendQuota: instance Constructor C1_0GetSendQuotaResponse
+ Network.AWS.SES.GetSendQuota: instance Data GetSendQuota
+ Network.AWS.SES.GetSendQuota: instance Data GetSendQuotaResponse
+ Network.AWS.SES.GetSendQuota: instance Datatype D1GetSendQuotaResponse
+ Network.AWS.SES.GetSendQuota: instance Generic GetSendQuotaResponse
+ Network.AWS.SES.GetSendQuota: instance Selector S1_0_0GetSendQuotaResponse
+ Network.AWS.SES.GetSendQuota: instance Selector S1_0_1GetSendQuotaResponse
+ Network.AWS.SES.GetSendQuota: instance Selector S1_0_2GetSendQuotaResponse
+ Network.AWS.SES.GetSendQuota: instance Selector S1_0_3GetSendQuotaResponse
+ Network.AWS.SES.GetSendQuota: instance Typeable GetSendQuota
+ Network.AWS.SES.GetSendQuota: instance Typeable GetSendQuotaResponse
+ Network.AWS.SES.GetSendStatistics: gssrsSendDataPoints :: Lens' GetSendStatisticsResponse [SendDataPoint]
+ Network.AWS.SES.GetSendStatistics: gssrsStatus :: Lens' GetSendStatisticsResponse Int
+ Network.AWS.SES.GetSendStatistics: instance Constructor C1_0GetSendStatisticsResponse
+ Network.AWS.SES.GetSendStatistics: instance Data GetSendStatistics
+ Network.AWS.SES.GetSendStatistics: instance Data GetSendStatisticsResponse
+ Network.AWS.SES.GetSendStatistics: instance Datatype D1GetSendStatisticsResponse
+ Network.AWS.SES.GetSendStatistics: instance Generic GetSendStatisticsResponse
+ Network.AWS.SES.GetSendStatistics: instance Selector S1_0_0GetSendStatisticsResponse
+ Network.AWS.SES.GetSendStatistics: instance Selector S1_0_1GetSendStatisticsResponse
+ Network.AWS.SES.GetSendStatistics: instance Typeable GetSendStatistics
+ Network.AWS.SES.GetSendStatistics: instance Typeable GetSendStatisticsResponse
+ Network.AWS.SES.ListIdentities: instance Constructor C1_0ListIdentities
+ Network.AWS.SES.ListIdentities: instance Constructor C1_0ListIdentitiesResponse
+ Network.AWS.SES.ListIdentities: instance Data ListIdentities
+ Network.AWS.SES.ListIdentities: instance Data ListIdentitiesResponse
+ Network.AWS.SES.ListIdentities: instance Datatype D1ListIdentities
+ Network.AWS.SES.ListIdentities: instance Datatype D1ListIdentitiesResponse
+ Network.AWS.SES.ListIdentities: instance Generic ListIdentities
+ Network.AWS.SES.ListIdentities: instance Generic ListIdentitiesResponse
+ Network.AWS.SES.ListIdentities: instance Selector S1_0_0ListIdentities
+ Network.AWS.SES.ListIdentities: instance Selector S1_0_0ListIdentitiesResponse
+ Network.AWS.SES.ListIdentities: instance Selector S1_0_1ListIdentities
+ Network.AWS.SES.ListIdentities: instance Selector S1_0_1ListIdentitiesResponse
+ Network.AWS.SES.ListIdentities: instance Selector S1_0_2ListIdentities
+ Network.AWS.SES.ListIdentities: instance Selector S1_0_2ListIdentitiesResponse
+ Network.AWS.SES.ListIdentities: instance Typeable ListIdentities
+ Network.AWS.SES.ListIdentities: instance Typeable ListIdentitiesResponse
+ Network.AWS.SES.ListIdentities: lirsIdentities :: Lens' ListIdentitiesResponse [Text]
+ Network.AWS.SES.ListIdentities: lirsNextToken :: Lens' ListIdentitiesResponse (Maybe Text)
+ Network.AWS.SES.ListIdentities: lirsStatus :: Lens' ListIdentitiesResponse Int
+ Network.AWS.SES.ListIdentityPolicies: data ListIdentityPolicies
+ Network.AWS.SES.ListIdentityPolicies: data ListIdentityPoliciesResponse
+ Network.AWS.SES.ListIdentityPolicies: instance AWSRequest ListIdentityPolicies
+ Network.AWS.SES.ListIdentityPolicies: instance Constructor C1_0ListIdentityPolicies
+ Network.AWS.SES.ListIdentityPolicies: instance Constructor C1_0ListIdentityPoliciesResponse
+ Network.AWS.SES.ListIdentityPolicies: instance Data ListIdentityPolicies
+ Network.AWS.SES.ListIdentityPolicies: instance Data ListIdentityPoliciesResponse
+ Network.AWS.SES.ListIdentityPolicies: instance Datatype D1ListIdentityPolicies
+ Network.AWS.SES.ListIdentityPolicies: instance Datatype D1ListIdentityPoliciesResponse
+ Network.AWS.SES.ListIdentityPolicies: instance Eq ListIdentityPolicies
+ Network.AWS.SES.ListIdentityPolicies: instance Eq ListIdentityPoliciesResponse
+ Network.AWS.SES.ListIdentityPolicies: instance Generic ListIdentityPolicies
+ Network.AWS.SES.ListIdentityPolicies: instance Generic ListIdentityPoliciesResponse
+ Network.AWS.SES.ListIdentityPolicies: instance Read ListIdentityPolicies
+ Network.AWS.SES.ListIdentityPolicies: instance Read ListIdentityPoliciesResponse
+ Network.AWS.SES.ListIdentityPolicies: instance Selector S1_0_0ListIdentityPolicies
+ Network.AWS.SES.ListIdentityPolicies: instance Selector S1_0_0ListIdentityPoliciesResponse
+ Network.AWS.SES.ListIdentityPolicies: instance Selector S1_0_1ListIdentityPoliciesResponse
+ Network.AWS.SES.ListIdentityPolicies: instance Show ListIdentityPolicies
+ Network.AWS.SES.ListIdentityPolicies: instance Show ListIdentityPoliciesResponse
+ Network.AWS.SES.ListIdentityPolicies: instance ToHeaders ListIdentityPolicies
+ Network.AWS.SES.ListIdentityPolicies: instance ToPath ListIdentityPolicies
+ Network.AWS.SES.ListIdentityPolicies: instance ToQuery ListIdentityPolicies
+ Network.AWS.SES.ListIdentityPolicies: instance Typeable ListIdentityPolicies
+ Network.AWS.SES.ListIdentityPolicies: instance Typeable ListIdentityPoliciesResponse
+ Network.AWS.SES.ListIdentityPolicies: lipIdentity :: Lens' ListIdentityPolicies Text
+ Network.AWS.SES.ListIdentityPolicies: liprsPolicyNames :: Lens' ListIdentityPoliciesResponse [Text]
+ Network.AWS.SES.ListIdentityPolicies: liprsStatus :: Lens' ListIdentityPoliciesResponse Int
+ Network.AWS.SES.ListIdentityPolicies: listIdentityPolicies :: Text -> ListIdentityPolicies
+ Network.AWS.SES.ListIdentityPolicies: listIdentityPoliciesResponse :: Int -> ListIdentityPoliciesResponse
+ Network.AWS.SES.ListVerifiedEmailAddresses: instance Constructor C1_0ListVerifiedEmailAddressesResponse
+ Network.AWS.SES.ListVerifiedEmailAddresses: instance Data ListVerifiedEmailAddresses
+ Network.AWS.SES.ListVerifiedEmailAddresses: instance Data ListVerifiedEmailAddressesResponse
+ Network.AWS.SES.ListVerifiedEmailAddresses: instance Datatype D1ListVerifiedEmailAddressesResponse
+ Network.AWS.SES.ListVerifiedEmailAddresses: instance Generic ListVerifiedEmailAddressesResponse
+ Network.AWS.SES.ListVerifiedEmailAddresses: instance Selector S1_0_0ListVerifiedEmailAddressesResponse
+ Network.AWS.SES.ListVerifiedEmailAddresses: instance Selector S1_0_1ListVerifiedEmailAddressesResponse
+ Network.AWS.SES.ListVerifiedEmailAddresses: instance Typeable ListVerifiedEmailAddresses
+ Network.AWS.SES.ListVerifiedEmailAddresses: instance Typeable ListVerifiedEmailAddressesResponse
+ Network.AWS.SES.ListVerifiedEmailAddresses: lvearsStatus :: Lens' ListVerifiedEmailAddressesResponse Int
+ Network.AWS.SES.ListVerifiedEmailAddresses: lvearsVerifiedEmailAddresses :: Lens' ListVerifiedEmailAddressesResponse [Text]
+ Network.AWS.SES.PutIdentityPolicy: data PutIdentityPolicy
+ Network.AWS.SES.PutIdentityPolicy: data PutIdentityPolicyResponse
+ Network.AWS.SES.PutIdentityPolicy: instance AWSRequest PutIdentityPolicy
+ Network.AWS.SES.PutIdentityPolicy: instance Constructor C1_0PutIdentityPolicy
+ Network.AWS.SES.PutIdentityPolicy: instance Constructor C1_0PutIdentityPolicyResponse
+ Network.AWS.SES.PutIdentityPolicy: instance Data PutIdentityPolicy
+ Network.AWS.SES.PutIdentityPolicy: instance Data PutIdentityPolicyResponse
+ Network.AWS.SES.PutIdentityPolicy: instance Datatype D1PutIdentityPolicy
+ Network.AWS.SES.PutIdentityPolicy: instance Datatype D1PutIdentityPolicyResponse
+ Network.AWS.SES.PutIdentityPolicy: instance Eq PutIdentityPolicy
+ Network.AWS.SES.PutIdentityPolicy: instance Eq PutIdentityPolicyResponse
+ Network.AWS.SES.PutIdentityPolicy: instance Generic PutIdentityPolicy
+ Network.AWS.SES.PutIdentityPolicy: instance Generic PutIdentityPolicyResponse
+ Network.AWS.SES.PutIdentityPolicy: instance Read PutIdentityPolicy
+ Network.AWS.SES.PutIdentityPolicy: instance Read PutIdentityPolicyResponse
+ Network.AWS.SES.PutIdentityPolicy: instance Selector S1_0_0PutIdentityPolicy
+ Network.AWS.SES.PutIdentityPolicy: instance Selector S1_0_0PutIdentityPolicyResponse
+ Network.AWS.SES.PutIdentityPolicy: instance Selector S1_0_1PutIdentityPolicy
+ Network.AWS.SES.PutIdentityPolicy: instance Selector S1_0_2PutIdentityPolicy
+ Network.AWS.SES.PutIdentityPolicy: instance Show PutIdentityPolicy
+ Network.AWS.SES.PutIdentityPolicy: instance Show PutIdentityPolicyResponse
+ Network.AWS.SES.PutIdentityPolicy: instance ToHeaders PutIdentityPolicy
+ Network.AWS.SES.PutIdentityPolicy: instance ToPath PutIdentityPolicy
+ Network.AWS.SES.PutIdentityPolicy: instance ToQuery PutIdentityPolicy
+ Network.AWS.SES.PutIdentityPolicy: instance Typeable PutIdentityPolicy
+ Network.AWS.SES.PutIdentityPolicy: instance Typeable PutIdentityPolicyResponse
+ Network.AWS.SES.PutIdentityPolicy: pipIdentity :: Lens' PutIdentityPolicy Text
+ Network.AWS.SES.PutIdentityPolicy: pipPolicy :: Lens' PutIdentityPolicy Text
+ Network.AWS.SES.PutIdentityPolicy: pipPolicyName :: Lens' PutIdentityPolicy Text
+ Network.AWS.SES.PutIdentityPolicy: piprsStatus :: Lens' PutIdentityPolicyResponse Int
+ Network.AWS.SES.PutIdentityPolicy: putIdentityPolicy :: Text -> Text -> Text -> PutIdentityPolicy
+ Network.AWS.SES.PutIdentityPolicy: putIdentityPolicyResponse :: Int -> PutIdentityPolicyResponse
+ Network.AWS.SES.SendEmail: instance Constructor C1_0SendEmail
+ Network.AWS.SES.SendEmail: instance Constructor C1_0SendEmailResponse
+ Network.AWS.SES.SendEmail: instance Data SendEmail
+ Network.AWS.SES.SendEmail: instance Data SendEmailResponse
+ Network.AWS.SES.SendEmail: instance Datatype D1SendEmail
+ Network.AWS.SES.SendEmail: instance Datatype D1SendEmailResponse
+ Network.AWS.SES.SendEmail: instance Generic SendEmail
+ Network.AWS.SES.SendEmail: instance Generic SendEmailResponse
+ Network.AWS.SES.SendEmail: instance Selector S1_0_0SendEmail
+ Network.AWS.SES.SendEmail: instance Selector S1_0_0SendEmailResponse
+ Network.AWS.SES.SendEmail: instance Selector S1_0_1SendEmail
+ Network.AWS.SES.SendEmail: instance Selector S1_0_1SendEmailResponse
+ Network.AWS.SES.SendEmail: instance Selector S1_0_2SendEmail
+ Network.AWS.SES.SendEmail: instance Selector S1_0_3SendEmail
+ Network.AWS.SES.SendEmail: instance Selector S1_0_4SendEmail
+ Network.AWS.SES.SendEmail: instance Selector S1_0_5SendEmail
+ Network.AWS.SES.SendEmail: instance Selector S1_0_6SendEmail
+ Network.AWS.SES.SendEmail: instance Typeable SendEmail
+ Network.AWS.SES.SendEmail: instance Typeable SendEmailResponse
+ Network.AWS.SES.SendEmail: seReturnPathARN :: Lens' SendEmail (Maybe Text)
+ Network.AWS.SES.SendEmail: seSourceARN :: Lens' SendEmail (Maybe Text)
+ Network.AWS.SES.SendEmail: sersMessageId :: Lens' SendEmailResponse Text
+ Network.AWS.SES.SendEmail: sersStatus :: Lens' SendEmailResponse Int
+ Network.AWS.SES.SendRawEmail: instance Constructor C1_0SendRawEmail
+ Network.AWS.SES.SendRawEmail: instance Constructor C1_0SendRawEmailResponse
+ Network.AWS.SES.SendRawEmail: instance Data SendRawEmail
+ Network.AWS.SES.SendRawEmail: instance Data SendRawEmailResponse
+ Network.AWS.SES.SendRawEmail: instance Datatype D1SendRawEmail
+ Network.AWS.SES.SendRawEmail: instance Datatype D1SendRawEmailResponse
+ Network.AWS.SES.SendRawEmail: instance Generic SendRawEmail
+ Network.AWS.SES.SendRawEmail: instance Generic SendRawEmailResponse
+ Network.AWS.SES.SendRawEmail: instance Selector S1_0_0SendRawEmail
+ Network.AWS.SES.SendRawEmail: instance Selector S1_0_0SendRawEmailResponse
+ Network.AWS.SES.SendRawEmail: instance Selector S1_0_1SendRawEmail
+ Network.AWS.SES.SendRawEmail: instance Selector S1_0_1SendRawEmailResponse
+ Network.AWS.SES.SendRawEmail: instance Selector S1_0_2SendRawEmail
+ Network.AWS.SES.SendRawEmail: instance Selector S1_0_3SendRawEmail
+ Network.AWS.SES.SendRawEmail: instance Selector S1_0_4SendRawEmail
+ Network.AWS.SES.SendRawEmail: instance Selector S1_0_5SendRawEmail
+ Network.AWS.SES.SendRawEmail: instance Typeable SendRawEmail
+ Network.AWS.SES.SendRawEmail: instance Typeable SendRawEmailResponse
+ Network.AWS.SES.SendRawEmail: sreFromARN :: Lens' SendRawEmail (Maybe Text)
+ Network.AWS.SES.SendRawEmail: sreReturnPathARN :: Lens' SendRawEmail (Maybe Text)
+ Network.AWS.SES.SendRawEmail: sreSourceARN :: Lens' SendRawEmail (Maybe Text)
+ Network.AWS.SES.SendRawEmail: srersMessageId :: Lens' SendRawEmailResponse Text
+ Network.AWS.SES.SendRawEmail: srersStatus :: Lens' SendRawEmailResponse Int
+ Network.AWS.SES.SetIdentityDkimEnabled: instance Constructor C1_0SetIdentityDkimEnabled
+ Network.AWS.SES.SetIdentityDkimEnabled: instance Data SetIdentityDkimEnabled
+ Network.AWS.SES.SetIdentityDkimEnabled: instance Data SetIdentityDkimEnabledResponse
+ Network.AWS.SES.SetIdentityDkimEnabled: instance Datatype D1SetIdentityDkimEnabled
+ Network.AWS.SES.SetIdentityDkimEnabled: instance Generic SetIdentityDkimEnabled
+ Network.AWS.SES.SetIdentityDkimEnabled: instance Selector S1_0_0SetIdentityDkimEnabled
+ Network.AWS.SES.SetIdentityDkimEnabled: instance Selector S1_0_0SetIdentityDkimEnabledResponse
+ Network.AWS.SES.SetIdentityDkimEnabled: instance Selector S1_0_1SetIdentityDkimEnabled
+ Network.AWS.SES.SetIdentityDkimEnabled: instance Typeable SetIdentityDkimEnabled
+ Network.AWS.SES.SetIdentityDkimEnabled: instance Typeable SetIdentityDkimEnabledResponse
+ Network.AWS.SES.SetIdentityDkimEnabled: sidersStatus :: Lens' SetIdentityDkimEnabledResponse Int
+ Network.AWS.SES.SetIdentityFeedbackForwardingEnabled: instance Constructor C1_0SetIdentityFeedbackForwardingEnabled
+ Network.AWS.SES.SetIdentityFeedbackForwardingEnabled: instance Data SetIdentityFeedbackForwardingEnabled
+ Network.AWS.SES.SetIdentityFeedbackForwardingEnabled: instance Data SetIdentityFeedbackForwardingEnabledResponse
+ Network.AWS.SES.SetIdentityFeedbackForwardingEnabled: instance Datatype D1SetIdentityFeedbackForwardingEnabled
+ Network.AWS.SES.SetIdentityFeedbackForwardingEnabled: instance Generic SetIdentityFeedbackForwardingEnabled
+ Network.AWS.SES.SetIdentityFeedbackForwardingEnabled: instance Selector S1_0_0SetIdentityFeedbackForwardingEnabled
+ Network.AWS.SES.SetIdentityFeedbackForwardingEnabled: instance Selector S1_0_0SetIdentityFeedbackForwardingEnabledResponse
+ Network.AWS.SES.SetIdentityFeedbackForwardingEnabled: instance Selector S1_0_1SetIdentityFeedbackForwardingEnabled
+ Network.AWS.SES.SetIdentityFeedbackForwardingEnabled: instance Typeable SetIdentityFeedbackForwardingEnabled
+ Network.AWS.SES.SetIdentityFeedbackForwardingEnabled: instance Typeable SetIdentityFeedbackForwardingEnabledResponse
+ Network.AWS.SES.SetIdentityFeedbackForwardingEnabled: siffersStatus :: Lens' SetIdentityFeedbackForwardingEnabledResponse Int
+ Network.AWS.SES.SetIdentityNotificationTopic: instance Constructor C1_0SetIdentityNotificationTopic
+ Network.AWS.SES.SetIdentityNotificationTopic: instance Data SetIdentityNotificationTopic
+ Network.AWS.SES.SetIdentityNotificationTopic: instance Data SetIdentityNotificationTopicResponse
+ Network.AWS.SES.SetIdentityNotificationTopic: instance Datatype D1SetIdentityNotificationTopic
+ Network.AWS.SES.SetIdentityNotificationTopic: instance Generic SetIdentityNotificationTopic
+ Network.AWS.SES.SetIdentityNotificationTopic: instance Selector S1_0_0SetIdentityNotificationTopic
+ Network.AWS.SES.SetIdentityNotificationTopic: instance Selector S1_0_0SetIdentityNotificationTopicResponse
+ Network.AWS.SES.SetIdentityNotificationTopic: instance Selector S1_0_1SetIdentityNotificationTopic
+ Network.AWS.SES.SetIdentityNotificationTopic: instance Selector S1_0_2SetIdentityNotificationTopic
+ Network.AWS.SES.SetIdentityNotificationTopic: instance Typeable SetIdentityNotificationTopic
+ Network.AWS.SES.SetIdentityNotificationTopic: instance Typeable SetIdentityNotificationTopicResponse
+ Network.AWS.SES.SetIdentityNotificationTopic: sintSNSTopic :: Lens' SetIdentityNotificationTopic (Maybe Text)
+ Network.AWS.SES.SetIdentityNotificationTopic: sintrsStatus :: Lens' SetIdentityNotificationTopicResponse Int
+ Network.AWS.SES.Types: Domain :: IdentityType
+ Network.AWS.SES.Types: EmailAddress :: IdentityType
+ Network.AWS.SES.Types: _InvalidPolicyException :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SES.Types: _MessageRejected :: AsError a => Getting (First ServiceError) a ServiceError
+ Network.AWS.SES.Types: bHTML :: Lens' Body (Maybe Content)
+ Network.AWS.SES.Types: dBCCAddresses :: Lens' Destination [Text]
+ Network.AWS.SES.Types: dCCAddresses :: Lens' Destination [Text]
+ Network.AWS.SES.VerifyDomainDkim: instance Constructor C1_0VerifyDomainDkim
+ Network.AWS.SES.VerifyDomainDkim: instance Constructor C1_0VerifyDomainDkimResponse
+ Network.AWS.SES.VerifyDomainDkim: instance Data VerifyDomainDkim
+ Network.AWS.SES.VerifyDomainDkim: instance Data VerifyDomainDkimResponse
+ Network.AWS.SES.VerifyDomainDkim: instance Datatype D1VerifyDomainDkim
+ Network.AWS.SES.VerifyDomainDkim: instance Datatype D1VerifyDomainDkimResponse
+ Network.AWS.SES.VerifyDomainDkim: instance Generic VerifyDomainDkim
+ Network.AWS.SES.VerifyDomainDkim: instance Generic VerifyDomainDkimResponse
+ Network.AWS.SES.VerifyDomainDkim: instance Selector S1_0_0VerifyDomainDkim
+ Network.AWS.SES.VerifyDomainDkim: instance Selector S1_0_0VerifyDomainDkimResponse
+ Network.AWS.SES.VerifyDomainDkim: instance Selector S1_0_1VerifyDomainDkimResponse
+ Network.AWS.SES.VerifyDomainDkim: instance Typeable VerifyDomainDkim
+ Network.AWS.SES.VerifyDomainDkim: instance Typeable VerifyDomainDkimResponse
+ Network.AWS.SES.VerifyDomainDkim: vddrsDkimTokens :: Lens' VerifyDomainDkimResponse [Text]
+ Network.AWS.SES.VerifyDomainDkim: vddrsStatus :: Lens' VerifyDomainDkimResponse Int
+ Network.AWS.SES.VerifyDomainIdentity: instance Constructor C1_0VerifyDomainIdentity
+ Network.AWS.SES.VerifyDomainIdentity: instance Constructor C1_0VerifyDomainIdentityResponse
+ Network.AWS.SES.VerifyDomainIdentity: instance Data VerifyDomainIdentity
+ Network.AWS.SES.VerifyDomainIdentity: instance Data VerifyDomainIdentityResponse
+ Network.AWS.SES.VerifyDomainIdentity: instance Datatype D1VerifyDomainIdentity
+ Network.AWS.SES.VerifyDomainIdentity: instance Datatype D1VerifyDomainIdentityResponse
+ Network.AWS.SES.VerifyDomainIdentity: instance Generic VerifyDomainIdentity
+ Network.AWS.SES.VerifyDomainIdentity: instance Generic VerifyDomainIdentityResponse
+ Network.AWS.SES.VerifyDomainIdentity: instance Selector S1_0_0VerifyDomainIdentity
+ Network.AWS.SES.VerifyDomainIdentity: instance Selector S1_0_0VerifyDomainIdentityResponse
+ Network.AWS.SES.VerifyDomainIdentity: instance Selector S1_0_1VerifyDomainIdentityResponse
+ Network.AWS.SES.VerifyDomainIdentity: instance Typeable VerifyDomainIdentity
+ Network.AWS.SES.VerifyDomainIdentity: instance Typeable VerifyDomainIdentityResponse
+ Network.AWS.SES.VerifyDomainIdentity: vdirsStatus :: Lens' VerifyDomainIdentityResponse Int
+ Network.AWS.SES.VerifyDomainIdentity: vdirsVerificationToken :: Lens' VerifyDomainIdentityResponse Text
+ Network.AWS.SES.VerifyEmailAddress: instance Constructor C1_0VerifyEmailAddress
+ Network.AWS.SES.VerifyEmailAddress: instance Data VerifyEmailAddress
+ Network.AWS.SES.VerifyEmailAddress: instance Data VerifyEmailAddressResponse
+ Network.AWS.SES.VerifyEmailAddress: instance Datatype D1VerifyEmailAddress
+ Network.AWS.SES.VerifyEmailAddress: instance Generic VerifyEmailAddress
+ Network.AWS.SES.VerifyEmailAddress: instance Selector S1_0_0VerifyEmailAddress
+ Network.AWS.SES.VerifyEmailAddress: instance Typeable VerifyEmailAddress
+ Network.AWS.SES.VerifyEmailAddress: instance Typeable VerifyEmailAddressResponse
+ Network.AWS.SES.VerifyEmailIdentity: instance Constructor C1_0VerifyEmailIdentity
+ Network.AWS.SES.VerifyEmailIdentity: instance Data VerifyEmailIdentity
+ Network.AWS.SES.VerifyEmailIdentity: instance Data VerifyEmailIdentityResponse
+ Network.AWS.SES.VerifyEmailIdentity: instance Datatype D1VerifyEmailIdentity
+ Network.AWS.SES.VerifyEmailIdentity: instance Generic VerifyEmailIdentity
+ Network.AWS.SES.VerifyEmailIdentity: instance Selector S1_0_0VerifyEmailIdentity
+ Network.AWS.SES.VerifyEmailIdentity: instance Selector S1_0_0VerifyEmailIdentityResponse
+ Network.AWS.SES.VerifyEmailIdentity: instance Typeable VerifyEmailIdentity
+ Network.AWS.SES.VerifyEmailIdentity: instance Typeable VerifyEmailIdentityResponse
+ Network.AWS.SES.VerifyEmailIdentity: veirsStatus :: Lens' VerifyEmailIdentityResponse Int
- Network.AWS.SES.DeleteIdentity: deleteIdentityResponse :: DeleteIdentityResponse
+ Network.AWS.SES.DeleteIdentity: deleteIdentityResponse :: Int -> DeleteIdentityResponse
- Network.AWS.SES.GetIdentityDkimAttributes: getIdentityDkimAttributesResponse :: GetIdentityDkimAttributesResponse
+ Network.AWS.SES.GetIdentityDkimAttributes: getIdentityDkimAttributesResponse :: Int -> GetIdentityDkimAttributesResponse
- Network.AWS.SES.GetIdentityNotificationAttributes: getIdentityNotificationAttributesResponse :: GetIdentityNotificationAttributesResponse
+ Network.AWS.SES.GetIdentityNotificationAttributes: getIdentityNotificationAttributesResponse :: Int -> GetIdentityNotificationAttributesResponse
- Network.AWS.SES.GetIdentityVerificationAttributes: getIdentityVerificationAttributesResponse :: GetIdentityVerificationAttributesResponse
+ Network.AWS.SES.GetIdentityVerificationAttributes: getIdentityVerificationAttributesResponse :: Int -> GetIdentityVerificationAttributesResponse
- Network.AWS.SES.GetSendQuota: getSendQuotaResponse :: GetSendQuotaResponse
+ Network.AWS.SES.GetSendQuota: getSendQuotaResponse :: Int -> GetSendQuotaResponse
- Network.AWS.SES.GetSendStatistics: getSendStatisticsResponse :: GetSendStatisticsResponse
+ Network.AWS.SES.GetSendStatistics: getSendStatisticsResponse :: Int -> GetSendStatisticsResponse
- Network.AWS.SES.ListIdentities: listIdentitiesResponse :: ListIdentitiesResponse
+ Network.AWS.SES.ListIdentities: listIdentitiesResponse :: Int -> ListIdentitiesResponse
- Network.AWS.SES.ListVerifiedEmailAddresses: listVerifiedEmailAddressesResponse :: ListVerifiedEmailAddressesResponse
+ Network.AWS.SES.ListVerifiedEmailAddresses: listVerifiedEmailAddressesResponse :: Int -> ListVerifiedEmailAddressesResponse
- Network.AWS.SES.SendEmail: sendEmailResponse :: Text -> SendEmailResponse
+ Network.AWS.SES.SendEmail: sendEmailResponse :: Int -> Text -> SendEmailResponse
- Network.AWS.SES.SendRawEmail: sendRawEmailResponse :: Text -> SendRawEmailResponse
+ Network.AWS.SES.SendRawEmail: sendRawEmailResponse :: Int -> Text -> SendRawEmailResponse
- Network.AWS.SES.SetIdentityDkimEnabled: setIdentityDkimEnabledResponse :: SetIdentityDkimEnabledResponse
+ Network.AWS.SES.SetIdentityDkimEnabled: setIdentityDkimEnabledResponse :: Int -> SetIdentityDkimEnabledResponse
- Network.AWS.SES.SetIdentityFeedbackForwardingEnabled: setIdentityFeedbackForwardingEnabledResponse :: SetIdentityFeedbackForwardingEnabledResponse
+ Network.AWS.SES.SetIdentityFeedbackForwardingEnabled: setIdentityFeedbackForwardingEnabledResponse :: Int -> SetIdentityFeedbackForwardingEnabledResponse
- Network.AWS.SES.SetIdentityNotificationTopic: setIdentityNotificationTopicResponse :: SetIdentityNotificationTopicResponse
+ Network.AWS.SES.SetIdentityNotificationTopic: setIdentityNotificationTopicResponse :: Int -> SetIdentityNotificationTopicResponse
- Network.AWS.SES.Types: rawMessage :: Base64 -> RawMessage
+ Network.AWS.SES.Types: rawMessage :: ByteString -> RawMessage
- Network.AWS.SES.Types: rmData :: Lens' RawMessage Base64
+ Network.AWS.SES.Types: rmData :: Lens' RawMessage ByteString
- Network.AWS.SES.VerifyDomainDkim: verifyDomainDkimResponse :: VerifyDomainDkimResponse
+ Network.AWS.SES.VerifyDomainDkim: verifyDomainDkimResponse :: Int -> VerifyDomainDkimResponse
- Network.AWS.SES.VerifyDomainIdentity: verifyDomainIdentityResponse :: Text -> VerifyDomainIdentityResponse
+ Network.AWS.SES.VerifyDomainIdentity: verifyDomainIdentityResponse :: Int -> Text -> VerifyDomainIdentityResponse
- Network.AWS.SES.VerifyEmailIdentity: verifyEmailIdentityResponse :: VerifyEmailIdentityResponse
+ Network.AWS.SES.VerifyEmailIdentity: verifyEmailIdentityResponse :: Int -> VerifyEmailIdentityResponse
Files
- README.md +24/−10
- amazonka-ses.cabal +57/−14
- gen/Network/AWS/SES.hs +223/−50
- gen/Network/AWS/SES/DeleteIdentity.hs +85/−59
- gen/Network/AWS/SES/DeleteIdentityPolicy.hs +147/−0
- gen/Network/AWS/SES/DeleteVerifiedEmailAddress.hs +72/−60
- gen/Network/AWS/SES/GetIdentityDkimAttributes.hs +115/−94
- gen/Network/AWS/SES/GetIdentityNotificationAttributes.hs +107/−87
- gen/Network/AWS/SES/GetIdentityPolicies.hs +160/−0
- gen/Network/AWS/SES/GetIdentityVerificationAttributes.hs +102/−86
- gen/Network/AWS/SES/GetSendQuota.hs +103/−87
- gen/Network/AWS/SES/GetSendStatistics.hs +88/−74
- gen/Network/AWS/SES/ListIdentities.hs +126/−104
- gen/Network/AWS/SES/ListIdentityPolicies.hs +147/−0
- gen/Network/AWS/SES/ListVerifiedEmailAddresses.hs +93/−75
- gen/Network/AWS/SES/PutIdentityPolicy.hs +160/−0
- gen/Network/AWS/SES/SendEmail.hs +222/−136
- gen/Network/AWS/SES/SendRawEmail.hs +249/−119
- gen/Network/AWS/SES/SetIdentityDkimEnabled.hs +109/−76
- gen/Network/AWS/SES/SetIdentityFeedbackForwardingEnabled.hs +118/−85
- gen/Network/AWS/SES/SetIdentityNotificationTopic.hs +119/−84
- gen/Network/AWS/SES/Types.hs +91/−643
- gen/Network/AWS/SES/Types/Product.hs +475/−0
- gen/Network/AWS/SES/Types/Sum.hs +101/−0
- gen/Network/AWS/SES/VerifyDomainDkim.hs +115/−96
- gen/Network/AWS/SES/VerifyDomainIdentity.hs +93/−77
- gen/Network/AWS/SES/VerifyEmailAddress.hs +71/−62
- gen/Network/AWS/SES/VerifyEmailIdentity.hs +84/−58
- gen/Network/AWS/SES/Waiters.hs +11/−22
- test/Main.hs +21/−0
- test/Test/AWS/Gen/SES.hs +413/−0
- test/Test/AWS/SES.hs +26/−0
- test/Test/AWS/SES/Internal.hs +16/−0
README.md view
@@ -1,25 +1,39 @@ # Amazon Simple Email Service SDK -> _Warning:_ This is an experimental preview release which is still under heavy development and not intended for public consumption, _caveat emptor_!-+* [Version](#version) * [Description](#description) * [Contribute](#contribute) * [Licence](#licence) ++## Version++`1.0.0`++ ## Description -Amazon Simple Email Service (Amazon SES) is a cost-effective outbound-only-email-sending service built on the reliable and scalable infrastructure that-Amazon.com has developed to serve its own customer base. With Amazon SES, you-can send transactional email, marketing messages, or any other type of-high-quality content and you only pay for what you use. Along with high-deliverability, Amazon SES provides easy, real-time access to your sending-statistics and built-in notifications for bounces, complaints, and deliveries-to help you fine-tune your email-sending strategy.+Amazon Simple Email Service +This is the API Reference for Amazon Simple Email Service (Amazon SES).+This documentation is intended to be used in conjunction with the+<http://docs.aws.amazon.com/ses/latest/DeveloperGuide/Welcome.html Amazon SES Developer Guide>.++For a list of Amazon SES endpoints to use in service requests, see+<http://docs.aws.amazon.com/ses/latest/DeveloperGuide/regions.html Regions and Amazon SES>+in the Amazon SES Developer Guide.+ Documentation is available via [Hackage](http://hackage.haskell.org/package/amazonka-ses) and the [AWS API Reference](http://docs.aws.amazon.com/ses/latest/APIReference/Welcome.html). +The types from this library are intended to be used with [amazonka](http://hackage.haskell.org/package/amazonka),+which provides mechanisms for specifying AuthN/AuthZ information and sending requests.++Use of lenses is required for constructing and manipulating types.+This is due to the amount of nesting of AWS types and transparency regarding+de/serialisation into more palatable Haskell values.+The provided lenses should be compatible with any of the major lens libraries+[lens](http://hackage.haskell.org/package/lens) or [lens-family-core](http://hackage.haskell.org/package/lens-family-core). ## Contribute
amazonka-ses.cabal view
@@ -1,32 +1,41 @@ name: amazonka-ses-version: 0.3.6+version: 1.0.0 synopsis: Amazon Simple Email Service SDK. homepage: https://github.com/brendanhay/amazonka license: OtherLicense license-file: LICENSE author: Brendan Hay maintainer: Brendan Hay <brendan.g.hay@gmail.com>-copyright: Copyright (c) 2013-2014 Brendan Hay+copyright: Copyright (c) 2013-2015 Brendan Hay category: Network, AWS, Cloud, Distributed Computing build-type: Simple extra-source-files: README.md cabal-version: >= 1.10 description:- Amazon Simple Email Service (Amazon SES) is a cost-effective outbound-only- email-sending service built on the reliable and scalable infrastructure that- Amazon.com has developed to serve its own customer base. With Amazon SES, you- can send transactional email, marketing messages, or any other type of- high-quality content and you only pay for what you use. Along with high- deliverability, Amazon SES provides easy, real-time access to your sending- statistics and built-in notifications for bounces, complaints, and deliveries- to help you fine-tune your email-sending strategy.+ Amazon Simple Email Service + This is the API Reference for Amazon Simple Email Service (Amazon SES).+ This documentation is intended to be used in conjunction with the+ <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/Welcome.html Amazon SES Developer Guide>.++ For a list of Amazon SES endpoints to use in service requests, see+ <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/regions.html Regions and Amazon SES>+ in the Amazon SES Developer Guide. .- /See:/ <http://docs.aws.amazon.com/ses/latest/APIReference/Welcome.html AWS API Reference>+ The types from this library are intended to be used with+ <http://hackage.haskell.org/package/amazonka amazonka>, which provides+ mechanisms for specifying AuthN/AuthZ information and sending requests. .- /Warning:/ This is an experimental preview release which is still under- heavy development and not intended for public consumption, caveat emptor!+ Use of lenses is required for constructing and manipulating types.+ This is due to the amount of nesting of AWS types and transparency regarding+ de/serialisation into more palatable Haskell values.+ The provided lenses should be compatible with any of the major lens libraries+ such as <http://hackage.haskell.org/package/lens lens> or+ <http://hackage.haskell.org/package/lens-family-core lens-family-core>.+ .+ See "Network.AWS.SES" and the <http://docs.aws.amazon.com/ses/latest/APIReference/Welcome.html AWS API Reference>+ to get started. source-repository head type: git@@ -41,14 +50,18 @@ exposed-modules: Network.AWS.SES , Network.AWS.SES.DeleteIdentity+ , Network.AWS.SES.DeleteIdentityPolicy , Network.AWS.SES.DeleteVerifiedEmailAddress , Network.AWS.SES.GetIdentityDkimAttributes , Network.AWS.SES.GetIdentityNotificationAttributes+ , Network.AWS.SES.GetIdentityPolicies , Network.AWS.SES.GetIdentityVerificationAttributes , Network.AWS.SES.GetSendQuota , Network.AWS.SES.GetSendStatistics , Network.AWS.SES.ListIdentities+ , Network.AWS.SES.ListIdentityPolicies , Network.AWS.SES.ListVerifiedEmailAddresses+ , Network.AWS.SES.PutIdentityPolicy , Network.AWS.SES.SendEmail , Network.AWS.SES.SendRawEmail , Network.AWS.SES.SetIdentityDkimEnabled@@ -62,7 +75,37 @@ , Network.AWS.SES.Waiters other-modules:+ Network.AWS.SES.Types.Product+ , Network.AWS.SES.Types.Sum build-depends:- amazonka-core == 0.3.6.*+ amazonka-core == 1.0.0.* , base >= 4.7 && < 5++test-suite amazonka-ses-test+ type: exitcode-stdio-1.0+ default-language: Haskell2010+ hs-source-dirs: test+ main-is: Main.hs++ ghc-options: -Wall -threaded++ -- This is not comprehensive if modules have manually been added.+ -- It exists to ensure cabal 'somewhat' detects test module changes.+ other-modules:+ Test.AWS.SES+ , Test.AWS.Gen.SES+ , Test.AWS.SES.Internal++ build-depends:+ amazonka-core == 1.0.0+ , amazonka-test == 1.0.0+ , amazonka-ses == 1.0.0+ , base+ , bytestring+ , lens+ , tasty+ , tasty-hunit+ , text+ , time+ , unordered-containers
gen/Network/AWS/SES.hs view
@@ -1,63 +1,236 @@+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.SES--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- 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/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Amazon Simple Email Service (Amazon SES) is a cost-effective outbound-only--- email-sending service built on the reliable and scalable infrastructure that--- Amazon.com has developed to serve its own customer base. With Amazon SES, you--- can send transactional email, marketing messages, or any other type of--- high-quality content and you only pay for what you use. Along with high--- deliverability, Amazon SES provides easy, real-time access to your sending--- statistics and built-in notifications for bounces, complaints, and deliveries--- to help you fine-tune your email-sending strategy.+-- Amazon Simple Email Service+--+-- This is the API Reference for Amazon Simple Email Service (Amazon SES).+-- This documentation is intended to be used in conjunction with the+-- <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/Welcome.html Amazon SES Developer Guide>.+--+-- For a list of Amazon SES endpoints to use in service requests, see+-- <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/regions.html Regions and Amazon SES>+-- in the Amazon SES Developer Guide.+--+-- /See:/ <http://docs.aws.amazon.com/ses/latest/APIReference/Welcome.html AWS API Reference> module Network.AWS.SES- ( module Network.AWS.SES.DeleteIdentity- , module Network.AWS.SES.DeleteVerifiedEmailAddress- , module Network.AWS.SES.GetIdentityDkimAttributes- , module Network.AWS.SES.GetIdentityNotificationAttributes- , module Network.AWS.SES.GetIdentityVerificationAttributes+ (+ -- * Service+ SES++ -- * Errors+ -- $errors++ -- ** MessageRejected+ , _MessageRejected++ -- ** InvalidPolicyException+ , _InvalidPolicyException++ -- * Waiters+ -- $waiters++ -- * Operations+ -- $operations++ -- ** GetSendQuota , module Network.AWS.SES.GetSendQuota- , module Network.AWS.SES.GetSendStatistics- , module Network.AWS.SES.ListIdentities- , module Network.AWS.SES.ListVerifiedEmailAddresses- , module Network.AWS.SES.SendEmail- , module Network.AWS.SES.SendRawEmail++ -- ** DeleteIdentityPolicy+ , module Network.AWS.SES.DeleteIdentityPolicy++ -- ** PutIdentityPolicy+ , module Network.AWS.SES.PutIdentityPolicy++ -- ** SetIdentityDkimEnabled , module Network.AWS.SES.SetIdentityDkimEnabled++ -- ** GetIdentityNotificationAttributes+ , module Network.AWS.SES.GetIdentityNotificationAttributes++ -- ** ListIdentityPolicies+ , module Network.AWS.SES.ListIdentityPolicies++ -- ** SetIdentityFeedbackForwardingEnabled , module Network.AWS.SES.SetIdentityFeedbackForwardingEnabled- , module Network.AWS.SES.SetIdentityNotificationTopic- , module Network.AWS.SES.Types- , module Network.AWS.SES.VerifyDomainDkim++ -- ** GetIdentityVerificationAttributes+ , module Network.AWS.SES.GetIdentityVerificationAttributes++ -- ** GetIdentityPolicies+ , module Network.AWS.SES.GetIdentityPolicies++ -- ** VerifyDomainIdentity , module Network.AWS.SES.VerifyDomainIdentity++ -- ** VerifyDomainDkim+ , module Network.AWS.SES.VerifyDomainDkim++ -- ** SendRawEmail+ , module Network.AWS.SES.SendRawEmail++ -- ** GetIdentityDkimAttributes+ , module Network.AWS.SES.GetIdentityDkimAttributes++ -- ** DeleteIdentity+ , module Network.AWS.SES.DeleteIdentity++ -- ** GetSendStatistics+ , module Network.AWS.SES.GetSendStatistics++ -- ** ListIdentities (Paginated)+ , module Network.AWS.SES.ListIdentities++ -- ** DeleteVerifiedEmailAddress+ , module Network.AWS.SES.DeleteVerifiedEmailAddress++ -- ** VerifyEmailAddress , module Network.AWS.SES.VerifyEmailAddress++ -- ** VerifyEmailIdentity , module Network.AWS.SES.VerifyEmailIdentity- , module Network.AWS.SES.Waiters++ -- ** SendEmail+ , module Network.AWS.SES.SendEmail++ -- ** ListVerifiedEmailAddresses+ , module Network.AWS.SES.ListVerifiedEmailAddresses++ -- ** SetIdentityNotificationTopic+ , module Network.AWS.SES.SetIdentityNotificationTopic++ -- * Types++ -- ** IdentityType+ , IdentityType (..)++ -- ** NotificationType+ , NotificationType (..)++ -- ** VerificationStatus+ , VerificationStatus (..)++ -- ** Body+ , Body+ , body+ , bText+ , bHTML++ -- ** Content+ , Content+ , content+ , cCharset+ , cData++ -- ** Destination+ , Destination+ , destination+ , dBCCAddresses+ , dCCAddresses+ , dToAddresses++ -- ** IdentityDkimAttributes+ , IdentityDkimAttributes+ , identityDkimAttributes+ , idaDkimTokens+ , idaDkimEnabled+ , idaDkimVerificationStatus++ -- ** IdentityNotificationAttributes+ , IdentityNotificationAttributes+ , identityNotificationAttributes+ , inaBounceTopic+ , inaComplaintTopic+ , inaDeliveryTopic+ , inaForwardingEnabled++ -- ** IdentityVerificationAttributes+ , IdentityVerificationAttributes+ , identityVerificationAttributes+ , ivaVerificationToken+ , ivaVerificationStatus++ -- ** Message+ , Message+ , message+ , mSubject+ , mBody++ -- ** RawMessage+ , RawMessage+ , rawMessage+ , rmData++ -- ** SendDataPoint+ , SendDataPoint+ , sendDataPoint+ , sdpRejects+ , sdpComplaints+ , sdpDeliveryAttempts+ , sdpBounces+ , sdpTimestamp ) where -import Network.AWS.SES.DeleteIdentity-import Network.AWS.SES.DeleteVerifiedEmailAddress-import Network.AWS.SES.GetIdentityDkimAttributes-import Network.AWS.SES.GetIdentityNotificationAttributes-import Network.AWS.SES.GetIdentityVerificationAttributes-import Network.AWS.SES.GetSendQuota-import Network.AWS.SES.GetSendStatistics-import Network.AWS.SES.ListIdentities-import Network.AWS.SES.ListVerifiedEmailAddresses-import Network.AWS.SES.SendEmail-import Network.AWS.SES.SendRawEmail-import Network.AWS.SES.SetIdentityDkimEnabled-import Network.AWS.SES.SetIdentityFeedbackForwardingEnabled-import Network.AWS.SES.SetIdentityNotificationTopic-import Network.AWS.SES.Types-import Network.AWS.SES.VerifyDomainDkim-import Network.AWS.SES.VerifyDomainIdentity-import Network.AWS.SES.VerifyEmailAddress-import Network.AWS.SES.VerifyEmailIdentity-import Network.AWS.SES.Waiters+import Network.AWS.SES.DeleteIdentity+import Network.AWS.SES.DeleteIdentityPolicy+import Network.AWS.SES.DeleteVerifiedEmailAddress+import Network.AWS.SES.GetIdentityDkimAttributes+import Network.AWS.SES.GetIdentityNotificationAttributes+import Network.AWS.SES.GetIdentityPolicies+import Network.AWS.SES.GetIdentityVerificationAttributes+import Network.AWS.SES.GetSendQuota+import Network.AWS.SES.GetSendStatistics+import Network.AWS.SES.ListIdentities+import Network.AWS.SES.ListIdentityPolicies+import Network.AWS.SES.ListVerifiedEmailAddresses+import Network.AWS.SES.PutIdentityPolicy+import Network.AWS.SES.SendEmail+import Network.AWS.SES.SendRawEmail+import Network.AWS.SES.SetIdentityDkimEnabled+import Network.AWS.SES.SetIdentityFeedbackForwardingEnabled+import Network.AWS.SES.SetIdentityNotificationTopic+import Network.AWS.SES.Types+import Network.AWS.SES.VerifyDomainDkim+import Network.AWS.SES.VerifyDomainIdentity+import Network.AWS.SES.VerifyEmailAddress+import Network.AWS.SES.VerifyEmailIdentity+import Network.AWS.SES.Waiters++{- $errors+Error matchers are designed for use with the functions provided by+<http://hackage.haskell.org/package/lens/docs/Control-Exception-Lens.html Control.Exception.Lens>.+This allows catching (and rethrowing) service specific errors returned+by 'SES'.+-}++{- $operations+Some AWS operations return results that are incomplete and require subsequent+requests in order to obtain the entire result set. The process of sending+subsequent requests to continue where a previous request left off is called+pagination. For example, the 'ListObjects' operation of Amazon S3 returns up to+1000 objects at a time, and you must send subsequent requests with the+appropriate Marker in order to retrieve the next page of results.++Operations that have an 'AWSPager' instance can transparently perform subsequent+requests, correctly setting Markers and other request facets to iterate through+the entire result set of a truncated API operation. Operations which support+this have an additional note in the documentation.++Many operations have the ability to filter results on the server side. See the+individual operation parameters for details.+-}++{- $waiters+Waiters poll by repeatedly sending a request until some remote success condition+configured by the 'Wait' specification is fulfilled. The 'Wait' specification+determines how many attempts should be made, in addition to delay and retry strategies.+-}
gen/Network/AWS/SES/DeleteIdentity.hs view
@@ -1,93 +1,119 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# 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.DeleteIdentity--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- 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/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Deletes the specified identity (email address or domain) from the list of--- verified identities.+-- Deletes the specified identity (email address or domain) from the list+-- of verified identities. -- -- This action is throttled at one request per second. ----- <http://docs.aws.amazon.com/ses/latest/APIReference/API_DeleteIdentity.html>+-- /See:/ <http://docs.aws.amazon.com/ses/latest/APIReference/API_DeleteIdentity.html AWS API Reference> for DeleteIdentity. module Network.AWS.SES.DeleteIdentity (- -- * Request- DeleteIdentity- -- ** Request constructor- , deleteIdentity- -- ** Request lenses+ -- * Creating a Request+ deleteIdentity+ , DeleteIdentity+ -- * Request Lenses , diIdentity - -- * Response- , DeleteIdentityResponse- -- ** Response constructor+ -- * Destructuring the Response , deleteIdentityResponse+ , DeleteIdentityResponse+ -- * Response Lenses+ , dirsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SES.Types-import qualified GHC.Exts+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SES.Types+import Network.AWS.SES.Types.Product -newtype DeleteIdentity = DeleteIdentity+-- | Represents a request instructing the service to delete an identity from+-- the list of identities for the AWS Account.+--+-- /See:/ 'deleteIdentity' smart constructor.+newtype DeleteIdentity = DeleteIdentity' { _diIdentity :: Text- } deriving (Eq, Ord, Read, Show, Monoid, IsString)+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DeleteIdentity' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DeleteIdentity' with the minimum fields required to make a request. ----- * 'diIdentity' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ---deleteIdentity :: Text -- ^ 'diIdentity'- -> DeleteIdentity-deleteIdentity p1 = DeleteIdentity- { _diIdentity = p1+-- * 'diIdentity'+deleteIdentity+ :: Text -- ^ 'diIdentity'+ -> DeleteIdentity+deleteIdentity pIdentity_ =+ DeleteIdentity'+ { _diIdentity = pIdentity_ } --- | The identity to be removed from the list of identities for the AWS Account.+-- | The identity to be removed from the list of identities for the AWS+-- Account. diIdentity :: Lens' DeleteIdentity Text-diIdentity = lens _diIdentity (\s a -> s { _diIdentity = a })+diIdentity = lens _diIdentity (\ s a -> s{_diIdentity = a}); -data DeleteIdentityResponse = DeleteIdentityResponse- deriving (Eq, Ord, Read, Show, Generic)+instance AWSRequest DeleteIdentity where+ type Sv DeleteIdentity = SES+ type Rs DeleteIdentity = DeleteIdentityResponse+ request = postQuery+ response+ = receiveXMLWrapper "DeleteIdentityResult"+ (\ s h x ->+ DeleteIdentityResponse' <$> (pure (fromEnum s))) --- | 'DeleteIdentityResponse' constructor.-deleteIdentityResponse :: DeleteIdentityResponse-deleteIdentityResponse = DeleteIdentityResponse+instance ToHeaders DeleteIdentity where+ toHeaders = const mempty instance ToPath DeleteIdentity where- toPath = const "/"+ toPath = const "/" instance ToQuery DeleteIdentity where- toQuery DeleteIdentity{..} = mconcat- [ "Identity" =? _diIdentity- ]+ toQuery DeleteIdentity'{..}+ = mconcat+ ["Action" =: ("DeleteIdentity" :: ByteString),+ "Version" =: ("2010-12-01" :: ByteString),+ "Identity" =: _diIdentity] -instance ToHeaders DeleteIdentity+-- | An empty element. Receiving this element indicates that the request+-- completed successfully.+--+-- /See:/ 'deleteIdentityResponse' smart constructor.+newtype DeleteIdentityResponse = DeleteIdentityResponse'+ { _dirsStatus :: Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest DeleteIdentity where- type Sv DeleteIdentity = SES- type Rs DeleteIdentity = DeleteIdentityResponse+-- | Creates a value of 'DeleteIdentityResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dirsStatus'+deleteIdentityResponse+ :: Int -- ^ 'dirsStatus'+ -> DeleteIdentityResponse+deleteIdentityResponse pStatus_ =+ DeleteIdentityResponse'+ { _dirsStatus = pStatus_+ } - request = post "DeleteIdentity"- response = nullResponse DeleteIdentityResponse+-- | The response status code.+dirsStatus :: Lens' DeleteIdentityResponse Int+dirsStatus = lens _dirsStatus (\ s a -> s{_dirsStatus = a});
+ gen/Network/AWS/SES/DeleteIdentityPolicy.hs view
@@ -0,0 +1,147 @@+{-# 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.DeleteIdentityPolicy+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes the specified sending authorization policy for the given+-- identity (email address or domain). This API returns successfully even+-- if a policy with the specified name does not exist.+--+-- This API is for the identity owner only. If you have not verified the+-- identity, this API will return an error.+--+-- Sending authorization is a feature that enables an identity owner to+-- authorize other senders to use its identities. For information about+-- using sending authorization, see the+-- <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html Amazon SES Developer Guide>.+--+-- This action is throttled at one request per second.+--+-- /See:/ <http://docs.aws.amazon.com/ses/latest/APIReference/API_DeleteIdentityPolicy.html AWS API Reference> for DeleteIdentityPolicy.+module Network.AWS.SES.DeleteIdentityPolicy+ (+ -- * Creating a Request+ deleteIdentityPolicy+ , DeleteIdentityPolicy+ -- * Request Lenses+ , dipIdentity+ , dipPolicyName++ -- * Destructuring the Response+ , deleteIdentityPolicyResponse+ , DeleteIdentityPolicyResponse+ -- * Response Lenses+ , diprsStatus+ ) where++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 instructing the service to delete an authorization+-- policy applying to an identity.+--+-- This request succeeds regardless of whether the specified policy exists.+--+-- /See:/ 'deleteIdentityPolicy' smart constructor.+data DeleteIdentityPolicy = DeleteIdentityPolicy'+ { _dipIdentity :: !Text+ , _dipPolicyName :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DeleteIdentityPolicy' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dipIdentity'+--+-- * 'dipPolicyName'+deleteIdentityPolicy+ :: Text -- ^ 'dipIdentity'+ -> Text -- ^ 'dipPolicyName'+ -> DeleteIdentityPolicy+deleteIdentityPolicy pIdentity_ pPolicyName_ =+ DeleteIdentityPolicy'+ { _dipIdentity = pIdentity_+ , _dipPolicyName = pPolicyName_+ }++-- | The identity that is associated with the policy that you want to delete.+-- You can specify the identity by using its name or by using its Amazon+-- Resource Name (ARN). Examples: 'user\'example.com', 'example.com',+-- 'arn:aws:ses:us-east-1:123456789012:identity\/example.com'.+--+-- To successfully call this API, you must own the identity.+dipIdentity :: Lens' DeleteIdentityPolicy Text+dipIdentity = lens _dipIdentity (\ s a -> s{_dipIdentity = a});++-- | The name of the policy to be deleted.+dipPolicyName :: Lens' DeleteIdentityPolicy Text+dipPolicyName = lens _dipPolicyName (\ s a -> s{_dipPolicyName = a});++instance AWSRequest DeleteIdentityPolicy where+ type Sv DeleteIdentityPolicy = SES+ type Rs DeleteIdentityPolicy =+ DeleteIdentityPolicyResponse+ request = postQuery+ response+ = receiveXMLWrapper "DeleteIdentityPolicyResult"+ (\ s h x ->+ DeleteIdentityPolicyResponse' <$>+ (pure (fromEnum s)))++instance ToHeaders DeleteIdentityPolicy where+ toHeaders = const mempty++instance ToPath DeleteIdentityPolicy where+ toPath = const "/"++instance ToQuery DeleteIdentityPolicy where+ toQuery DeleteIdentityPolicy'{..}+ = mconcat+ ["Action" =: ("DeleteIdentityPolicy" :: ByteString),+ "Version" =: ("2010-12-01" :: ByteString),+ "Identity" =: _dipIdentity,+ "PolicyName" =: _dipPolicyName]++-- | An empty element. Receiving this element indicates that the request+-- completed successfully.+--+-- /See:/ 'deleteIdentityPolicyResponse' smart constructor.+newtype DeleteIdentityPolicyResponse = DeleteIdentityPolicyResponse'+ { _diprsStatus :: Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'DeleteIdentityPolicyResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'diprsStatus'+deleteIdentityPolicyResponse+ :: Int -- ^ 'diprsStatus'+ -> DeleteIdentityPolicyResponse+deleteIdentityPolicyResponse pStatus_ =+ DeleteIdentityPolicyResponse'+ { _diprsStatus = pStatus_+ }++-- | The response status code.+diprsStatus :: Lens' DeleteIdentityPolicyResponse Int+diprsStatus = lens _diprsStatus (\ s a -> s{_diprsStatus = a});
gen/Network/AWS/SES/DeleteVerifiedEmailAddress.hs view
@@ -1,93 +1,105 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# 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.DeleteVerifiedEmailAddress--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- 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/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Deletes the specified email address from the list of verified addresses.+-- Deletes the specified email address from the list of verified addresses. ----- The DeleteVerifiedEmailAddress action is deprecated as of the May 15, 2012--- release of Domain Verification. The DeleteIdentity action is now preferred. This action is throttled at one request per second.+-- The DeleteVerifiedEmailAddress action is deprecated as of the May 15,+-- 2012 release of Domain Verification. The DeleteIdentity action is now+-- preferred. ----- <http://docs.aws.amazon.com/ses/latest/APIReference/API_DeleteVerifiedEmailAddress.html>+-- This action is throttled at one request per second.+--+-- /See:/ <http://docs.aws.amazon.com/ses/latest/APIReference/API_DeleteVerifiedEmailAddress.html AWS API Reference> for DeleteVerifiedEmailAddress. module Network.AWS.SES.DeleteVerifiedEmailAddress (- -- * Request- DeleteVerifiedEmailAddress- -- ** Request constructor- , deleteVerifiedEmailAddress- -- ** Request lenses+ -- * Creating a Request+ deleteVerifiedEmailAddress+ , DeleteVerifiedEmailAddress+ -- * Request Lenses , dveaEmailAddress - -- * Response- , DeleteVerifiedEmailAddressResponse- -- ** Response constructor+ -- * Destructuring the Response , deleteVerifiedEmailAddressResponse+ , DeleteVerifiedEmailAddressResponse ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SES.Types-import qualified GHC.Exts+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SES.Types+import Network.AWS.SES.Types.Product -newtype DeleteVerifiedEmailAddress = DeleteVerifiedEmailAddress+-- | Represents a request instructing the service to delete an address from+-- the list of verified email addresses.+--+-- /See:/ 'deleteVerifiedEmailAddress' smart constructor.+newtype DeleteVerifiedEmailAddress = DeleteVerifiedEmailAddress' { _dveaEmailAddress :: Text- } deriving (Eq, Ord, Read, Show, Monoid, IsString)+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'DeleteVerifiedEmailAddress' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'DeleteVerifiedEmailAddress' with the minimum fields required to make a request. ----- * 'dveaEmailAddress' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ---deleteVerifiedEmailAddress :: Text -- ^ 'dveaEmailAddress'- -> DeleteVerifiedEmailAddress-deleteVerifiedEmailAddress p1 = DeleteVerifiedEmailAddress- { _dveaEmailAddress = p1+-- * 'dveaEmailAddress'+deleteVerifiedEmailAddress+ :: Text -- ^ 'dveaEmailAddress'+ -> DeleteVerifiedEmailAddress+deleteVerifiedEmailAddress pEmailAddress_ =+ DeleteVerifiedEmailAddress'+ { _dveaEmailAddress = pEmailAddress_ } -- | An email address to be removed from the list of verified addresses. dveaEmailAddress :: Lens' DeleteVerifiedEmailAddress Text-dveaEmailAddress = lens _dveaEmailAddress (\s a -> s { _dveaEmailAddress = a })+dveaEmailAddress = lens _dveaEmailAddress (\ s a -> s{_dveaEmailAddress = a}); -data DeleteVerifiedEmailAddressResponse = DeleteVerifiedEmailAddressResponse- deriving (Eq, Ord, Read, Show, Generic)+instance AWSRequest DeleteVerifiedEmailAddress where+ type Sv DeleteVerifiedEmailAddress = SES+ type Rs DeleteVerifiedEmailAddress =+ DeleteVerifiedEmailAddressResponse+ request = postQuery+ response+ = receiveNull DeleteVerifiedEmailAddressResponse' --- | 'DeleteVerifiedEmailAddressResponse' constructor.-deleteVerifiedEmailAddressResponse :: DeleteVerifiedEmailAddressResponse-deleteVerifiedEmailAddressResponse = DeleteVerifiedEmailAddressResponse+instance ToHeaders DeleteVerifiedEmailAddress where+ toHeaders = const mempty instance ToPath DeleteVerifiedEmailAddress where- toPath = const "/"+ toPath = const "/" instance ToQuery DeleteVerifiedEmailAddress where- toQuery DeleteVerifiedEmailAddress{..} = mconcat- [ "EmailAddress" =? _dveaEmailAddress- ]--instance ToHeaders DeleteVerifiedEmailAddress+ toQuery DeleteVerifiedEmailAddress'{..}+ = mconcat+ ["Action" =:+ ("DeleteVerifiedEmailAddress" :: ByteString),+ "Version" =: ("2010-12-01" :: ByteString),+ "EmailAddress" =: _dveaEmailAddress] -instance AWSRequest DeleteVerifiedEmailAddress where- type Sv DeleteVerifiedEmailAddress = SES- type Rs DeleteVerifiedEmailAddress = DeleteVerifiedEmailAddressResponse+-- | /See:/ 'deleteVerifiedEmailAddressResponse' smart constructor.+data DeleteVerifiedEmailAddressResponse =+ DeleteVerifiedEmailAddressResponse'+ deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "DeleteVerifiedEmailAddress"- response = nullResponse DeleteVerifiedEmailAddressResponse+-- | Creates a value of 'DeleteVerifiedEmailAddressResponse' with the minimum fields required to make a request.+--+deleteVerifiedEmailAddressResponse+ :: DeleteVerifiedEmailAddressResponse+deleteVerifiedEmailAddressResponse = DeleteVerifiedEmailAddressResponse'
gen/Network/AWS/SES/GetIdentityDkimAttributes.hs view
@@ -1,131 +1,152 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# 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.GetIdentityDkimAttributes--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- 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/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Returns the current status of Easy DKIM signing for an entity. For domain--- name identities, this action also returns the DKIM tokens that are required--- for Easy DKIM signing, and whether Amazon SES has successfully verified that--- these tokens have been published.+-- Returns the current status of Easy DKIM signing for an entity. For+-- domain name identities, this action also returns the DKIM tokens that+-- are required for Easy DKIM signing, and whether Amazon SES has+-- successfully verified that these tokens have been published. ----- This action takes a list of identities as input and returns the following--- information for each:+-- This action takes a list of identities as input and returns the+-- following information for each: ----- Whether Easy DKIM signing is enabled or disabled. A set of DKIM tokens that--- represent the identity. If the identity is an email address, the tokens--- represent the domain of that address. Whether Amazon SES has successfully--- verified the DKIM tokens published in the domain's DNS. This information is--- only returned for domain name identities, not for email addresses. This--- action is throttled at one request per second and can only get DKIM+-- - Whether Easy DKIM signing is enabled or disabled.+-- - A set of DKIM tokens that represent the identity. If the identity is+-- an email address, the tokens represent the domain of that address.+-- - Whether Amazon SES has successfully verified the DKIM tokens+-- published in the domain\'s DNS. This information is only returned+-- for domain name identities, not for email addresses.+--+-- This action is throttled at one request per second and can only get DKIM -- attributes for up to 100 identities at a time. ----- For more information about creating DNS records using DKIM tokens, go to the <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim-dns-records.html Amazon SES Developer Guide>.+-- For more information about creating DNS records using DKIM tokens, go to+-- the+-- <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim-dns-records.html Amazon SES Developer Guide>. ----- <http://docs.aws.amazon.com/ses/latest/APIReference/API_GetIdentityDkimAttributes.html>+-- /See:/ <http://docs.aws.amazon.com/ses/latest/APIReference/API_GetIdentityDkimAttributes.html AWS API Reference> for GetIdentityDkimAttributes. module Network.AWS.SES.GetIdentityDkimAttributes (- -- * Request- GetIdentityDkimAttributes- -- ** Request constructor- , getIdentityDkimAttributes- -- ** Request lenses+ -- * Creating a Request+ getIdentityDkimAttributes+ , GetIdentityDkimAttributes+ -- * Request Lenses , gidaIdentities - -- * Response- , GetIdentityDkimAttributesResponse- -- ** Response constructor+ -- * Destructuring the Response , getIdentityDkimAttributesResponse- -- ** Response lenses- , gidarDkimAttributes+ , GetIdentityDkimAttributesResponse+ -- * Response Lenses+ , gidarsStatus+ , gidarsDkimAttributes ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SES.Types-import qualified GHC.Exts--newtype GetIdentityDkimAttributes = GetIdentityDkimAttributes- { _gidaIdentities :: List "member" Text- } deriving (Eq, Ord, Read, Show, Monoid, Semigroup)--instance GHC.Exts.IsList GetIdentityDkimAttributes where- type Item GetIdentityDkimAttributes = Text-- fromList = GetIdentityDkimAttributes . GHC.Exts.fromList- toList = GHC.Exts.toList . _gidaIdentities+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SES.Types+import Network.AWS.SES.Types.Product --- | 'GetIdentityDkimAttributes' constructor.+-- | Given a list of verified identities, describes their DKIM attributes.+-- The DKIM attributes of an email address identity includes whether DKIM+-- signing is individually enabled or disabled for that address. The DKIM+-- attributes of a domain name identity includes whether DKIM signing is+-- enabled, as well as the DNS records (tokens) that must remain published+-- in the domain name\'s DNS. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'getIdentityDkimAttributes' smart constructor.+newtype GetIdentityDkimAttributes = GetIdentityDkimAttributes'+ { _gidaIdentities :: [Text]+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'GetIdentityDkimAttributes' with the minimum fields required to make a request. ----- * 'gidaIdentities' @::@ ['Text']+-- Use one of the following lenses to modify other fields as desired: ---getIdentityDkimAttributes :: GetIdentityDkimAttributes-getIdentityDkimAttributes = GetIdentityDkimAttributes+-- * 'gidaIdentities'+getIdentityDkimAttributes+ :: GetIdentityDkimAttributes+getIdentityDkimAttributes =+ GetIdentityDkimAttributes' { _gidaIdentities = mempty } --- | A list of one or more verified identities - email addresses, domains, or both.+-- | A list of one or more verified identities - email addresses, domains, or+-- both. gidaIdentities :: Lens' GetIdentityDkimAttributes [Text]-gidaIdentities = lens _gidaIdentities (\s a -> s { _gidaIdentities = a }) . _List--newtype GetIdentityDkimAttributesResponse = GetIdentityDkimAttributesResponse- { _gidarDkimAttributes :: EMap "entry" "key" "value" Text IdentityDkimAttributes- } deriving (Eq, Read, Show, Monoid, Semigroup)+gidaIdentities = lens _gidaIdentities (\ s a -> s{_gidaIdentities = a}) . _Coerce; --- | 'GetIdentityDkimAttributesResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'gidarDkimAttributes' @::@ 'HashMap' 'Text' 'IdentityDkimAttributes'----getIdentityDkimAttributesResponse :: GetIdentityDkimAttributesResponse-getIdentityDkimAttributesResponse = GetIdentityDkimAttributesResponse- { _gidarDkimAttributes = mempty- }+instance AWSRequest GetIdentityDkimAttributes where+ type Sv GetIdentityDkimAttributes = SES+ type Rs GetIdentityDkimAttributes =+ GetIdentityDkimAttributesResponse+ request = postQuery+ response+ = receiveXMLWrapper "GetIdentityDkimAttributesResult"+ (\ s h x ->+ GetIdentityDkimAttributesResponse' <$>+ (pure (fromEnum s)) <*>+ (x .@? "DkimAttributes" .!@ mempty >>=+ parseXMLMap "entry" "key" "value")) --- | The DKIM attributes for an email address or a domain.-gidarDkimAttributes :: Lens' GetIdentityDkimAttributesResponse (HashMap Text IdentityDkimAttributes)-gidarDkimAttributes =- lens _gidarDkimAttributes (\s a -> s { _gidarDkimAttributes = a })- . _EMap+instance ToHeaders GetIdentityDkimAttributes where+ toHeaders = const mempty instance ToPath GetIdentityDkimAttributes where- toPath = const "/"+ toPath = const "/" instance ToQuery GetIdentityDkimAttributes where- toQuery GetIdentityDkimAttributes{..} = mconcat- [ "Identities" =? _gidaIdentities- ]+ toQuery GetIdentityDkimAttributes'{..}+ = mconcat+ ["Action" =:+ ("GetIdentityDkimAttributes" :: ByteString),+ "Version" =: ("2010-12-01" :: ByteString),+ "Identities" =: toQueryList "member" _gidaIdentities] -instance ToHeaders GetIdentityDkimAttributes+-- | Represents a list of all the DKIM attributes for the specified identity.+--+-- /See:/ 'getIdentityDkimAttributesResponse' smart constructor.+data GetIdentityDkimAttributesResponse = GetIdentityDkimAttributesResponse'+ { _gidarsStatus :: !Int+ , _gidarsDkimAttributes :: !(Map Text IdentityDkimAttributes)+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest GetIdentityDkimAttributes where- type Sv GetIdentityDkimAttributes = SES- type Rs GetIdentityDkimAttributes = GetIdentityDkimAttributesResponse+-- | Creates a value of 'GetIdentityDkimAttributesResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gidarsStatus'+--+-- * 'gidarsDkimAttributes'+getIdentityDkimAttributesResponse+ :: Int -- ^ 'gidarsStatus'+ -> GetIdentityDkimAttributesResponse+getIdentityDkimAttributesResponse pStatus_ =+ GetIdentityDkimAttributesResponse'+ { _gidarsStatus = pStatus_+ , _gidarsDkimAttributes = mempty+ } - request = post "GetIdentityDkimAttributes"- response = xmlResponse+-- | The response status code.+gidarsStatus :: Lens' GetIdentityDkimAttributesResponse Int+gidarsStatus = lens _gidarsStatus (\ s a -> s{_gidarsStatus = a}); -instance FromXML GetIdentityDkimAttributesResponse where- parseXML = withElement "GetIdentityDkimAttributesResult" $ \x -> GetIdentityDkimAttributesResponse- <$> x .@? "DkimAttributes" .!@ mempty+-- | The DKIM attributes for an email address or a domain.+gidarsDkimAttributes :: Lens' GetIdentityDkimAttributesResponse (HashMap Text IdentityDkimAttributes)+gidarsDkimAttributes = lens _gidarsDkimAttributes (\ s a -> s{_gidarsDkimAttributes = a}) . _Map;
gen/Network/AWS/SES/GetIdentityNotificationAttributes.hs view
@@ -1,122 +1,142 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# 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.GetIdentityNotificationAttributes--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- 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/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Given a list of verified identities (email addresses and/or domains), returns--- a structure describing identity notification attributes.+-- Given a list of verified identities (email addresses and\/or domains),+-- returns a structure describing identity notification attributes. -- -- This action is throttled at one request per second and can only get -- notification attributes for up to 100 identities at a time. ----- For more information about using notifications with Amazon SES, see the <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/notifications.html Amazon SES Developer Guide>.+-- For more information about using notifications with Amazon SES, see the+-- <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/notifications.html Amazon SES Developer Guide>. ----- <http://docs.aws.amazon.com/ses/latest/APIReference/API_GetIdentityNotificationAttributes.html>+-- /See:/ <http://docs.aws.amazon.com/ses/latest/APIReference/API_GetIdentityNotificationAttributes.html AWS API Reference> for GetIdentityNotificationAttributes. module Network.AWS.SES.GetIdentityNotificationAttributes (- -- * Request- GetIdentityNotificationAttributes- -- ** Request constructor- , getIdentityNotificationAttributes- -- ** Request lenses+ -- * Creating a Request+ getIdentityNotificationAttributes+ , GetIdentityNotificationAttributes+ -- * Request Lenses , ginaIdentities - -- * Response- , GetIdentityNotificationAttributesResponse- -- ** Response constructor+ -- * Destructuring the Response , getIdentityNotificationAttributesResponse- -- ** Response lenses- , ginarNotificationAttributes+ , GetIdentityNotificationAttributesResponse+ -- * Response Lenses+ , ginarsStatus+ , ginarsNotificationAttributes ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SES.Types-import qualified GHC.Exts--newtype GetIdentityNotificationAttributes = GetIdentityNotificationAttributes- { _ginaIdentities :: List "member" Text- } deriving (Eq, Ord, Read, Show, Monoid, Semigroup)--instance GHC.Exts.IsList GetIdentityNotificationAttributes where- type Item GetIdentityNotificationAttributes = Text+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SES.Types+import Network.AWS.SES.Types.Product - fromList = GetIdentityNotificationAttributes . GHC.Exts.fromList- toList = GHC.Exts.toList . _ginaIdentities+-- | /See:/ 'getIdentityNotificationAttributes' smart constructor.+newtype GetIdentityNotificationAttributes = GetIdentityNotificationAttributes'+ { _ginaIdentities :: [Text]+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'GetIdentityNotificationAttributes' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'GetIdentityNotificationAttributes' with the minimum fields required to make a request. ----- * 'ginaIdentities' @::@ ['Text']+-- Use one of the following lenses to modify other fields as desired: ---getIdentityNotificationAttributes :: GetIdentityNotificationAttributes-getIdentityNotificationAttributes = GetIdentityNotificationAttributes+-- * 'ginaIdentities'+getIdentityNotificationAttributes+ :: GetIdentityNotificationAttributes+getIdentityNotificationAttributes =+ GetIdentityNotificationAttributes' { _ginaIdentities = mempty } --- | A list of one or more identities.+-- | A list of one or more identities. You can specify an identity by using+-- its name or by using its Amazon Resource Name (ARN). Examples:+-- 'user\'example.com', 'example.com',+-- 'arn:aws:ses:us-east-1:123456789012:identity\/example.com'. ginaIdentities :: Lens' GetIdentityNotificationAttributes [Text]-ginaIdentities = lens _ginaIdentities (\s a -> s { _ginaIdentities = a }) . _List--newtype GetIdentityNotificationAttributesResponse = GetIdentityNotificationAttributesResponse- { _ginarNotificationAttributes :: EMap "entry" "key" "value" Text IdentityNotificationAttributes- } deriving (Eq, Read, Show, Monoid, Semigroup)+ginaIdentities = lens _ginaIdentities (\ s a -> s{_ginaIdentities = a}) . _Coerce; --- | 'GetIdentityNotificationAttributesResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'ginarNotificationAttributes' @::@ 'HashMap' 'Text' 'IdentityNotificationAttributes'----getIdentityNotificationAttributesResponse :: GetIdentityNotificationAttributesResponse-getIdentityNotificationAttributesResponse = GetIdentityNotificationAttributesResponse- { _ginarNotificationAttributes = mempty- }+instance AWSRequest GetIdentityNotificationAttributes+ where+ type Sv GetIdentityNotificationAttributes = SES+ type Rs GetIdentityNotificationAttributes =+ GetIdentityNotificationAttributesResponse+ request = postQuery+ response+ = receiveXMLWrapper+ "GetIdentityNotificationAttributesResult"+ (\ s h x ->+ GetIdentityNotificationAttributesResponse' <$>+ (pure (fromEnum s)) <*>+ (x .@? "NotificationAttributes" .!@ mempty >>=+ parseXMLMap "entry" "key" "value")) --- | A map of Identity to IdentityNotificationAttributes.-ginarNotificationAttributes :: Lens' GetIdentityNotificationAttributesResponse (HashMap Text IdentityNotificationAttributes)-ginarNotificationAttributes =- lens _ginarNotificationAttributes- (\s a -> s { _ginarNotificationAttributes = a })- . _EMap+instance ToHeaders GetIdentityNotificationAttributes+ where+ toHeaders = const mempty -instance ToPath GetIdentityNotificationAttributes where- toPath = const "/"+instance ToPath GetIdentityNotificationAttributes+ where+ toPath = const "/" -instance ToQuery GetIdentityNotificationAttributes where- toQuery GetIdentityNotificationAttributes{..} = mconcat- [ "Identities" =? _ginaIdentities- ]+instance ToQuery GetIdentityNotificationAttributes+ where+ toQuery GetIdentityNotificationAttributes'{..}+ = mconcat+ ["Action" =:+ ("GetIdentityNotificationAttributes" :: ByteString),+ "Version" =: ("2010-12-01" :: ByteString),+ "Identities" =: toQueryList "member" _ginaIdentities] -instance ToHeaders GetIdentityNotificationAttributes+-- | Describes whether an identity has Amazon Simple Notification Service+-- (Amazon SNS) topics set for bounce, complaint, and\/or delivery+-- notifications, and specifies whether feedback forwarding is enabled for+-- bounce and complaint notifications.+--+-- /See:/ 'getIdentityNotificationAttributesResponse' smart constructor.+data GetIdentityNotificationAttributesResponse = GetIdentityNotificationAttributesResponse'+ { _ginarsStatus :: !Int+ , _ginarsNotificationAttributes :: !(Map Text IdentityNotificationAttributes)+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest GetIdentityNotificationAttributes where- type Sv GetIdentityNotificationAttributes = SES- type Rs GetIdentityNotificationAttributes = GetIdentityNotificationAttributesResponse+-- | Creates a value of 'GetIdentityNotificationAttributesResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ginarsStatus'+--+-- * 'ginarsNotificationAttributes'+getIdentityNotificationAttributesResponse+ :: Int -- ^ 'ginarsStatus'+ -> GetIdentityNotificationAttributesResponse+getIdentityNotificationAttributesResponse pStatus_ =+ GetIdentityNotificationAttributesResponse'+ { _ginarsStatus = pStatus_+ , _ginarsNotificationAttributes = mempty+ } - request = post "GetIdentityNotificationAttributes"- response = xmlResponse+-- | The response status code.+ginarsStatus :: Lens' GetIdentityNotificationAttributesResponse Int+ginarsStatus = lens _ginarsStatus (\ s a -> s{_ginarsStatus = a}); -instance FromXML GetIdentityNotificationAttributesResponse where- parseXML = withElement "GetIdentityNotificationAttributesResult" $ \x -> GetIdentityNotificationAttributesResponse- <$> x .@? "NotificationAttributes" .!@ mempty+-- | A map of Identity to IdentityNotificationAttributes.+ginarsNotificationAttributes :: Lens' GetIdentityNotificationAttributesResponse (HashMap Text IdentityNotificationAttributes)+ginarsNotificationAttributes = lens _ginarsNotificationAttributes (\ s a -> s{_ginarsNotificationAttributes = a}) . _Map;
+ gen/Network/AWS/SES/GetIdentityPolicies.hs view
@@ -0,0 +1,160 @@+{-# 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.GetIdentityPolicies+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns the requested sending authorization policies for the given+-- identity (email address or domain). The policies are returned as a map+-- of policy names to policy contents. You can retrieve a maximum of 20+-- policies at a time.+--+-- This API is for the identity owner only. If you have not verified the+-- identity, this API will return an error.+--+-- Sending authorization is a feature that enables an identity owner to+-- authorize other senders to use its identities. For information about+-- using sending authorization, see the+-- <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html Amazon SES Developer Guide>.+--+-- This action is throttled at one request per second.+--+-- /See:/ <http://docs.aws.amazon.com/ses/latest/APIReference/API_GetIdentityPolicies.html AWS API Reference> for GetIdentityPolicies.+module Network.AWS.SES.GetIdentityPolicies+ (+ -- * Creating a Request+ getIdentityPolicies+ , GetIdentityPolicies+ -- * Request Lenses+ , gipIdentity+ , gipPolicyNames++ -- * Destructuring the Response+ , getIdentityPoliciesResponse+ , GetIdentityPoliciesResponse+ -- * Response Lenses+ , giprsStatus+ , giprsPolicies+ ) where++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 instructing the service to retrieve the text of a+-- list of authorization policies applying to an identity.+--+-- /See:/ 'getIdentityPolicies' smart constructor.+data GetIdentityPolicies = GetIdentityPolicies'+ { _gipIdentity :: !Text+ , _gipPolicyNames :: ![Text]+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'GetIdentityPolicies' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gipIdentity'+--+-- * 'gipPolicyNames'+getIdentityPolicies+ :: Text -- ^ 'gipIdentity'+ -> GetIdentityPolicies+getIdentityPolicies pIdentity_ =+ GetIdentityPolicies'+ { _gipIdentity = pIdentity_+ , _gipPolicyNames = mempty+ }++-- | The identity for which the policies will be retrieved. You can specify+-- an identity by using its name or by using its Amazon Resource Name+-- (ARN). Examples: 'user\'example.com', 'example.com',+-- 'arn:aws:ses:us-east-1:123456789012:identity\/example.com'.+--+-- To successfully call this API, you must own the identity.+gipIdentity :: Lens' GetIdentityPolicies Text+gipIdentity = lens _gipIdentity (\ s a -> s{_gipIdentity = a});++-- | A list of the names of policies to be retrieved. You can retrieve a+-- maximum of 20 policies at a time. If you do not know the names of the+-- policies that are attached to the identity, you can use+-- 'ListIdentityPolicies'.+gipPolicyNames :: Lens' GetIdentityPolicies [Text]+gipPolicyNames = lens _gipPolicyNames (\ s a -> s{_gipPolicyNames = a}) . _Coerce;++instance AWSRequest GetIdentityPolicies where+ type Sv GetIdentityPolicies = SES+ type Rs GetIdentityPolicies =+ GetIdentityPoliciesResponse+ request = postQuery+ response+ = receiveXMLWrapper "GetIdentityPoliciesResult"+ (\ s h x ->+ GetIdentityPoliciesResponse' <$>+ (pure (fromEnum s)) <*>+ (x .@? "Policies" .!@ mempty >>=+ parseXMLMap "entry" "key" "value"))++instance ToHeaders GetIdentityPolicies where+ toHeaders = const mempty++instance ToPath GetIdentityPolicies where+ toPath = const "/"++instance ToQuery GetIdentityPolicies where+ toQuery GetIdentityPolicies'{..}+ = mconcat+ ["Action" =: ("GetIdentityPolicies" :: ByteString),+ "Version" =: ("2010-12-01" :: ByteString),+ "Identity" =: _gipIdentity,+ "PolicyNames" =:+ toQueryList "member" _gipPolicyNames]++-- | Represents a map of policy names to policies returned from a successful+-- 'GetIdentityPolicies' request.+--+-- /See:/ 'getIdentityPoliciesResponse' smart constructor.+data GetIdentityPoliciesResponse = GetIdentityPoliciesResponse'+ { _giprsStatus :: !Int+ , _giprsPolicies :: !(Map Text Text)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'GetIdentityPoliciesResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'giprsStatus'+--+-- * 'giprsPolicies'+getIdentityPoliciesResponse+ :: Int -- ^ 'giprsStatus'+ -> GetIdentityPoliciesResponse+getIdentityPoliciesResponse pStatus_ =+ GetIdentityPoliciesResponse'+ { _giprsStatus = pStatus_+ , _giprsPolicies = mempty+ }++-- | The response status code.+giprsStatus :: Lens' GetIdentityPoliciesResponse Int+giprsStatus = lens _giprsStatus (\ s a -> s{_giprsStatus = a});++-- | A map of policy names to policies.+giprsPolicies :: Lens' GetIdentityPoliciesResponse (HashMap Text Text)+giprsPolicies = lens _giprsPolicies (\ s a -> s{_giprsPolicies = a}) . _Map;
gen/Network/AWS/SES/GetIdentityVerificationAttributes.hs view
@@ -1,121 +1,137 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# 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.GetIdentityVerificationAttributes--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- 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/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Given a list of identities (email addresses and/or domains), returns the--- verification status and (for domain identities) the verification token for--- each identity.+-- Given a list of identities (email addresses and\/or domains), returns+-- the verification status and (for domain identities) the verification+-- token for each identity. -- -- This action is throttled at one request per second and can only get -- verification attributes for up to 100 identities at a time. ----- <http://docs.aws.amazon.com/ses/latest/APIReference/API_GetIdentityVerificationAttributes.html>+-- /See:/ <http://docs.aws.amazon.com/ses/latest/APIReference/API_GetIdentityVerificationAttributes.html AWS API Reference> for GetIdentityVerificationAttributes. module Network.AWS.SES.GetIdentityVerificationAttributes (- -- * Request- GetIdentityVerificationAttributes- -- ** Request constructor- , getIdentityVerificationAttributes- -- ** Request lenses+ -- * Creating a Request+ getIdentityVerificationAttributes+ , GetIdentityVerificationAttributes+ -- * Request Lenses , givaIdentities - -- * Response- , GetIdentityVerificationAttributesResponse- -- ** Response constructor+ -- * Destructuring the Response , getIdentityVerificationAttributesResponse- -- ** Response lenses- , givarVerificationAttributes+ , GetIdentityVerificationAttributesResponse+ -- * Response Lenses+ , givarsStatus+ , givarsVerificationAttributes ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SES.Types-import qualified GHC.Exts--newtype GetIdentityVerificationAttributes = GetIdentityVerificationAttributes- { _givaIdentities :: List "member" Text- } deriving (Eq, Ord, Read, Show, Monoid, Semigroup)--instance GHC.Exts.IsList GetIdentityVerificationAttributes where- type Item GetIdentityVerificationAttributes = Text-- fromList = GetIdentityVerificationAttributes . GHC.Exts.fromList- toList = GHC.Exts.toList . _givaIdentities+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SES.Types+import Network.AWS.SES.Types.Product --- | 'GetIdentityVerificationAttributes' constructor.+-- | Represents a request instructing the service to provide the verification+-- attributes for a list of identities. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'getIdentityVerificationAttributes' smart constructor.+newtype GetIdentityVerificationAttributes = GetIdentityVerificationAttributes'+ { _givaIdentities :: [Text]+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'GetIdentityVerificationAttributes' with the minimum fields required to make a request. ----- * 'givaIdentities' @::@ ['Text']+-- Use one of the following lenses to modify other fields as desired: ---getIdentityVerificationAttributes :: GetIdentityVerificationAttributes-getIdentityVerificationAttributes = GetIdentityVerificationAttributes+-- * 'givaIdentities'+getIdentityVerificationAttributes+ :: GetIdentityVerificationAttributes+getIdentityVerificationAttributes =+ GetIdentityVerificationAttributes' { _givaIdentities = mempty } -- | A list of identities. givaIdentities :: Lens' GetIdentityVerificationAttributes [Text]-givaIdentities = lens _givaIdentities (\s a -> s { _givaIdentities = a }) . _List--newtype GetIdentityVerificationAttributesResponse = GetIdentityVerificationAttributesResponse- { _givarVerificationAttributes :: EMap "entry" "key" "value" Text IdentityVerificationAttributes- } deriving (Eq, Read, Show, Monoid, Semigroup)+givaIdentities = lens _givaIdentities (\ s a -> s{_givaIdentities = a}) . _Coerce; --- | 'GetIdentityVerificationAttributesResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'givarVerificationAttributes' @::@ 'HashMap' 'Text' 'IdentityVerificationAttributes'----getIdentityVerificationAttributesResponse :: GetIdentityVerificationAttributesResponse-getIdentityVerificationAttributesResponse = GetIdentityVerificationAttributesResponse- { _givarVerificationAttributes = mempty- }+instance AWSRequest GetIdentityVerificationAttributes+ where+ type Sv GetIdentityVerificationAttributes = SES+ type Rs GetIdentityVerificationAttributes =+ GetIdentityVerificationAttributesResponse+ request = postQuery+ response+ = receiveXMLWrapper+ "GetIdentityVerificationAttributesResult"+ (\ s h x ->+ GetIdentityVerificationAttributesResponse' <$>+ (pure (fromEnum s)) <*>+ (x .@? "VerificationAttributes" .!@ mempty >>=+ parseXMLMap "entry" "key" "value")) --- | A map of Identities to IdentityVerificationAttributes objects.-givarVerificationAttributes :: Lens' GetIdentityVerificationAttributesResponse (HashMap Text IdentityVerificationAttributes)-givarVerificationAttributes =- lens _givarVerificationAttributes- (\s a -> s { _givarVerificationAttributes = a })- . _EMap+instance ToHeaders GetIdentityVerificationAttributes+ where+ toHeaders = const mempty -instance ToPath GetIdentityVerificationAttributes where- toPath = const "/"+instance ToPath GetIdentityVerificationAttributes+ where+ toPath = const "/" -instance ToQuery GetIdentityVerificationAttributes where- toQuery GetIdentityVerificationAttributes{..} = mconcat- [ "Identities" =? _givaIdentities- ]+instance ToQuery GetIdentityVerificationAttributes+ where+ toQuery GetIdentityVerificationAttributes'{..}+ = mconcat+ ["Action" =:+ ("GetIdentityVerificationAttributes" :: ByteString),+ "Version" =: ("2010-12-01" :: ByteString),+ "Identities" =: toQueryList "member" _givaIdentities] -instance ToHeaders GetIdentityVerificationAttributes+-- | Represents the verification attributes for a list of identities.+--+-- /See:/ 'getIdentityVerificationAttributesResponse' smart constructor.+data GetIdentityVerificationAttributesResponse = GetIdentityVerificationAttributesResponse'+ { _givarsStatus :: !Int+ , _givarsVerificationAttributes :: !(Map Text IdentityVerificationAttributes)+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest GetIdentityVerificationAttributes where- type Sv GetIdentityVerificationAttributes = SES- type Rs GetIdentityVerificationAttributes = GetIdentityVerificationAttributesResponse+-- | Creates a value of 'GetIdentityVerificationAttributesResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'givarsStatus'+--+-- * 'givarsVerificationAttributes'+getIdentityVerificationAttributesResponse+ :: Int -- ^ 'givarsStatus'+ -> GetIdentityVerificationAttributesResponse+getIdentityVerificationAttributesResponse pStatus_ =+ GetIdentityVerificationAttributesResponse'+ { _givarsStatus = pStatus_+ , _givarsVerificationAttributes = mempty+ } - request = post "GetIdentityVerificationAttributes"- response = xmlResponse+-- | The response status code.+givarsStatus :: Lens' GetIdentityVerificationAttributesResponse Int+givarsStatus = lens _givarsStatus (\ s a -> s{_givarsStatus = a}); -instance FromXML GetIdentityVerificationAttributesResponse where- parseXML = withElement "GetIdentityVerificationAttributesResult" $ \x -> GetIdentityVerificationAttributesResponse- <$> x .@? "VerificationAttributes" .!@ mempty+-- | A map of Identities to IdentityVerificationAttributes objects.+givarsVerificationAttributes :: Lens' GetIdentityVerificationAttributesResponse (HashMap Text IdentityVerificationAttributes)+givarsVerificationAttributes = lens _givarsVerificationAttributes (\ s a -> s{_givarsVerificationAttributes = a}) . _Map;
gen/Network/AWS/SES/GetSendQuota.hs view
@@ -1,120 +1,136 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# 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.GetSendQuota--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- 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/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Returns the user's current sending limits.+-- Returns the user\'s current sending limits. -- -- This action is throttled at one request per second. ----- <http://docs.aws.amazon.com/ses/latest/APIReference/API_GetSendQuota.html>+-- /See:/ <http://docs.aws.amazon.com/ses/latest/APIReference/API_GetSendQuota.html AWS API Reference> for GetSendQuota. module Network.AWS.SES.GetSendQuota (- -- * Request- GetSendQuota- -- ** Request constructor- , getSendQuota+ -- * Creating a Request+ getSendQuota+ , GetSendQuota - -- * Response- , GetSendQuotaResponse- -- ** Response constructor+ -- * Destructuring the Response , getSendQuotaResponse- -- ** Response lenses- , gsqrMax24HourSend- , gsqrMaxSendRate- , gsqrSentLast24Hours+ , GetSendQuotaResponse+ -- * Response Lenses+ , gsqrsMaxSendRate+ , gsqrsSentLast24Hours+ , gsqrsMax24HourSend+ , gsqrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SES.Types-import qualified GHC.Exts+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SES.Types+import Network.AWS.SES.Types.Product -data GetSendQuota = GetSendQuota- deriving (Eq, Ord, Read, Show, Generic)+-- | /See:/ 'getSendQuota' smart constructor.+data GetSendQuota =+ GetSendQuota'+ deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'GetSendQuota' constructor.-getSendQuota :: GetSendQuota-getSendQuota = GetSendQuota+-- | Creates a value of 'GetSendQuota' with the minimum fields required to make a request.+--+getSendQuota+ :: GetSendQuota+getSendQuota = GetSendQuota' -data GetSendQuotaResponse = GetSendQuotaResponse- { _gsqrMax24HourSend :: Maybe Double- , _gsqrMaxSendRate :: Maybe Double- , _gsqrSentLast24Hours :: Maybe Double- } deriving (Eq, Ord, Read, Show)+instance AWSRequest GetSendQuota where+ type Sv GetSendQuota = SES+ type Rs GetSendQuota = GetSendQuotaResponse+ request = postQuery+ response+ = receiveXMLWrapper "GetSendQuotaResult"+ (\ s h x ->+ GetSendQuotaResponse' <$>+ (x .@? "MaxSendRate") <*> (x .@? "SentLast24Hours")+ <*> (x .@? "Max24HourSend")+ <*> (pure (fromEnum s))) --- | 'GetSendQuotaResponse' constructor.+instance ToHeaders GetSendQuota where+ toHeaders = const mempty++instance ToPath GetSendQuota where+ toPath = const "/"++instance ToQuery GetSendQuota where+ toQuery+ = const+ (mconcat+ ["Action" =: ("GetSendQuota" :: ByteString),+ "Version" =: ("2010-12-01" :: ByteString)])++-- | Represents the user\'s current activity limits returned from a+-- successful 'GetSendQuota' request. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'getSendQuotaResponse' smart constructor.+data GetSendQuotaResponse = GetSendQuotaResponse'+ { _gsqrsMaxSendRate :: !(Maybe Double)+ , _gsqrsSentLast24Hours :: !(Maybe Double)+ , _gsqrsMax24HourSend :: !(Maybe Double)+ , _gsqrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'GetSendQuotaResponse' with the minimum fields required to make a request. ----- * 'gsqrMax24HourSend' @::@ 'Maybe' 'Double'+-- Use one of the following lenses to modify other fields as desired: ----- * 'gsqrMaxSendRate' @::@ 'Maybe' 'Double'+-- * 'gsqrsMaxSendRate' ----- * 'gsqrSentLast24Hours' @::@ 'Maybe' 'Double'+-- * 'gsqrsSentLast24Hours' ---getSendQuotaResponse :: GetSendQuotaResponse-getSendQuotaResponse = GetSendQuotaResponse- { _gsqrMax24HourSend = Nothing- , _gsqrMaxSendRate = Nothing- , _gsqrSentLast24Hours = Nothing+-- * 'gsqrsMax24HourSend'+--+-- * 'gsqrsStatus'+getSendQuotaResponse+ :: Int -- ^ 'gsqrsStatus'+ -> GetSendQuotaResponse+getSendQuotaResponse pStatus_ =+ GetSendQuotaResponse'+ { _gsqrsMaxSendRate = Nothing+ , _gsqrsSentLast24Hours = Nothing+ , _gsqrsMax24HourSend = Nothing+ , _gsqrsStatus = pStatus_ } --- | The maximum number of emails the user is allowed to send in a 24-hour--- interval. A value of -1 signifies an unlimited quota.-gsqrMax24HourSend :: Lens' GetSendQuotaResponse (Maybe Double)-gsqrMax24HourSend =- lens _gsqrMax24HourSend (\s a -> s { _gsqrMax24HourSend = a })---- | The maximum number of emails that Amazon SES can accept from the user's+-- | The maximum number of emails that Amazon SES can accept from the user\'s -- account per second. ----- The rate at which Amazon SES accepts the user's messages might be less than--- the maximum send rate.-gsqrMaxSendRate :: Lens' GetSendQuotaResponse (Maybe Double)-gsqrMaxSendRate = lens _gsqrMaxSendRate (\s a -> s { _gsqrMaxSendRate = a })+-- The rate at which Amazon SES accepts the user\'s messages might be less+-- than the maximum send rate.+gsqrsMaxSendRate :: Lens' GetSendQuotaResponse (Maybe Double)+gsqrsMaxSendRate = lens _gsqrsMaxSendRate (\ s a -> s{_gsqrsMaxSendRate = a}); -- | The number of emails sent during the previous 24 hours.-gsqrSentLast24Hours :: Lens' GetSendQuotaResponse (Maybe Double)-gsqrSentLast24Hours =- lens _gsqrSentLast24Hours (\s a -> s { _gsqrSentLast24Hours = a })--instance ToPath GetSendQuota where- toPath = const "/"--instance ToQuery GetSendQuota where- toQuery = const mempty--instance ToHeaders GetSendQuota--instance AWSRequest GetSendQuota where- type Sv GetSendQuota = SES- type Rs GetSendQuota = GetSendQuotaResponse+gsqrsSentLast24Hours :: Lens' GetSendQuotaResponse (Maybe Double)+gsqrsSentLast24Hours = lens _gsqrsSentLast24Hours (\ s a -> s{_gsqrsSentLast24Hours = a}); - request = post "GetSendQuota"- response = xmlResponse+-- | The maximum number of emails the user is allowed to send in a 24-hour+-- interval. A value of -1 signifies an unlimited quota.+gsqrsMax24HourSend :: Lens' GetSendQuotaResponse (Maybe Double)+gsqrsMax24HourSend = lens _gsqrsMax24HourSend (\ s a -> s{_gsqrsMax24HourSend = a}); -instance FromXML GetSendQuotaResponse where- parseXML = withElement "GetSendQuotaResult" $ \x -> GetSendQuotaResponse- <$> x .@? "Max24HourSend"- <*> x .@? "MaxSendRate"- <*> x .@? "SentLast24Hours"+-- | The response status code.+gsqrsStatus :: Lens' GetSendQuotaResponse Int+gsqrsStatus = lens _gsqrsStatus (\ s a -> s{_gsqrsStatus = a});
gen/Network/AWS/SES/GetSendStatistics.hs view
@@ -1,104 +1,118 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# 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.GetSendStatistics--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- 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/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Returns the user's sending statistics. The result is a list of data points,--- representing the last two weeks of sending activity.+-- Returns the user\'s sending statistics. The result is a list of data+-- points, representing the last two weeks of sending activity. ----- Each data point in the list contains statistics for a 15-minute interval.+-- Each data point in the list contains statistics for a 15-minute+-- interval. -- -- This action is throttled at one request per second. ----- <http://docs.aws.amazon.com/ses/latest/APIReference/API_GetSendStatistics.html>+-- /See:/ <http://docs.aws.amazon.com/ses/latest/APIReference/API_GetSendStatistics.html AWS API Reference> for GetSendStatistics. module Network.AWS.SES.GetSendStatistics (- -- * Request- GetSendStatistics- -- ** Request constructor- , getSendStatistics+ -- * Creating a Request+ getSendStatistics+ , GetSendStatistics - -- * Response- , GetSendStatisticsResponse- -- ** Response constructor+ -- * Destructuring the Response , getSendStatisticsResponse- -- ** Response lenses- , gssrSendDataPoints+ , GetSendStatisticsResponse+ -- * Response Lenses+ , gssrsSendDataPoints+ , gssrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SES.Types-import qualified GHC.Exts+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SES.Types+import Network.AWS.SES.Types.Product -data GetSendStatistics = GetSendStatistics- deriving (Eq, Ord, Read, Show, Generic)+-- | /See:/ 'getSendStatistics' smart constructor.+data GetSendStatistics =+ GetSendStatistics'+ deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'GetSendStatistics' constructor.-getSendStatistics :: GetSendStatistics-getSendStatistics = GetSendStatistics+-- | Creates a value of 'GetSendStatistics' with the minimum fields required to make a request.+--+getSendStatistics+ :: GetSendStatistics+getSendStatistics = GetSendStatistics' -newtype GetSendStatisticsResponse = GetSendStatisticsResponse- { _gssrSendDataPoints :: List "member" SendDataPoint- } deriving (Eq, Read, Show, Monoid, Semigroup)+instance AWSRequest GetSendStatistics where+ type Sv GetSendStatistics = SES+ type Rs GetSendStatistics = GetSendStatisticsResponse+ request = postQuery+ response+ = receiveXMLWrapper "GetSendStatisticsResult"+ (\ s h x ->+ GetSendStatisticsResponse' <$>+ (x .@? "SendDataPoints" .!@ mempty >>=+ may (parseXMLList "member"))+ <*> (pure (fromEnum s))) -instance GHC.Exts.IsList GetSendStatisticsResponse where- type Item GetSendStatisticsResponse = SendDataPoint+instance ToHeaders GetSendStatistics where+ toHeaders = const mempty - fromList = GetSendStatisticsResponse . GHC.Exts.fromList- toList = GHC.Exts.toList . _gssrSendDataPoints+instance ToPath GetSendStatistics where+ toPath = const "/" --- | 'GetSendStatisticsResponse' constructor.+instance ToQuery GetSendStatistics where+ toQuery+ = const+ (mconcat+ ["Action" =: ("GetSendStatistics" :: ByteString),+ "Version" =: ("2010-12-01" :: ByteString)])++-- | Represents a list of 'SendDataPoint' items returned from a successful+-- 'GetSendStatistics' request. This list contains aggregated data from the+-- previous two weeks of sending activity. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'getSendStatisticsResponse' smart constructor.+data GetSendStatisticsResponse = GetSendStatisticsResponse'+ { _gssrsSendDataPoints :: !(Maybe [SendDataPoint])+ , _gssrsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'GetSendStatisticsResponse' with the minimum fields required to make a request. ----- * 'gssrSendDataPoints' @::@ ['SendDataPoint']+-- Use one of the following lenses to modify other fields as desired: ---getSendStatisticsResponse :: GetSendStatisticsResponse-getSendStatisticsResponse = GetSendStatisticsResponse- { _gssrSendDataPoints = mempty+-- * 'gssrsSendDataPoints'+--+-- * 'gssrsStatus'+getSendStatisticsResponse+ :: Int -- ^ 'gssrsStatus'+ -> GetSendStatisticsResponse+getSendStatisticsResponse pStatus_ =+ GetSendStatisticsResponse'+ { _gssrsSendDataPoints = Nothing+ , _gssrsStatus = pStatus_ } -- | A list of data points, each of which represents 15 minutes of activity.-gssrSendDataPoints :: Lens' GetSendStatisticsResponse [SendDataPoint]-gssrSendDataPoints =- lens _gssrSendDataPoints (\s a -> s { _gssrSendDataPoints = a })- . _List--instance ToPath GetSendStatistics where- toPath = const "/"--instance ToQuery GetSendStatistics where- toQuery = const mempty--instance ToHeaders GetSendStatistics--instance AWSRequest GetSendStatistics where- type Sv GetSendStatistics = SES- type Rs GetSendStatistics = GetSendStatisticsResponse-- request = post "GetSendStatistics"- response = xmlResponse+gssrsSendDataPoints :: Lens' GetSendStatisticsResponse [SendDataPoint]+gssrsSendDataPoints = lens _gssrsSendDataPoints (\ s a -> s{_gssrsSendDataPoints = a}) . _Default . _Coerce; -instance FromXML GetSendStatisticsResponse where- parseXML = withElement "GetSendStatisticsResult" $ \x -> GetSendStatisticsResponse- <$> x .@? "SendDataPoints" .!@ mempty+-- | The response status code.+gssrsStatus :: Lens' GetSendStatisticsResponse Int+gssrsStatus = lens _gssrsStatus (\ s a -> s{_gssrsStatus = a});
gen/Network/AWS/SES/ListIdentities.hs view
@@ -1,148 +1,170 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# 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.ListIdentities--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- 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/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Returns a list containing all of the identities (email addresses and domains)--- for a specific AWS Account, regardless of verification status.+-- Returns a list containing all of the identities (email addresses and+-- domains) for a specific AWS Account, regardless of verification status. -- -- This action is throttled at one request per second. ----- <http://docs.aws.amazon.com/ses/latest/APIReference/API_ListIdentities.html>+-- /See:/ <http://docs.aws.amazon.com/ses/latest/APIReference/API_ListIdentities.html AWS API Reference> for ListIdentities.+--+-- This operation returns paginated results. module Network.AWS.SES.ListIdentities (- -- * Request- ListIdentities- -- ** Request constructor- , listIdentities- -- ** Request lenses+ -- * Creating a Request+ listIdentities+ , ListIdentities+ -- * Request Lenses , liIdentityType- , liMaxItems , liNextToken+ , liMaxItems - -- * Response- , ListIdentitiesResponse- -- ** Response constructor+ -- * Destructuring the Response , listIdentitiesResponse- -- ** Response lenses- , lirIdentities- , lirNextToken+ , ListIdentitiesResponse+ -- * Response Lenses+ , lirsNextToken+ , lirsStatus+ , lirsIdentities ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SES.Types-import qualified GHC.Exts--data ListIdentities = ListIdentities- { _liIdentityType :: Maybe IdentityType- , _liMaxItems :: Maybe Int- , _liNextToken :: Maybe Text- } deriving (Eq, Read, Show)+import Network.AWS.Pager+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SES.Types+import Network.AWS.SES.Types.Product --- | 'ListIdentities' constructor.+-- | Represents a request instructing the service to list all identities for+-- the AWS Account. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'listIdentities' smart constructor.+data ListIdentities = ListIdentities'+ { _liIdentityType :: !(Maybe IdentityType)+ , _liNextToken :: !(Maybe Text)+ , _liMaxItems :: !(Maybe Int)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListIdentities' with the minimum fields required to make a request. ----- * 'liIdentityType' @::@ 'Maybe' 'IdentityType'+-- Use one of the following lenses to modify other fields as desired: ----- * 'liMaxItems' @::@ 'Maybe' 'Int'+-- * 'liIdentityType' ----- * 'liNextToken' @::@ 'Maybe' 'Text'+-- * 'liNextToken' ---listIdentities :: ListIdentities-listIdentities = ListIdentities+-- * 'liMaxItems'+listIdentities+ :: ListIdentities+listIdentities =+ ListIdentities' { _liIdentityType = Nothing- , _liNextToken = Nothing- , _liMaxItems = Nothing+ , _liNextToken = Nothing+ , _liMaxItems = Nothing } --- | The type of the identities to list. Possible values are "EmailAddress" and--- "Domain". If this parameter is omitted, then all identities will be listed.+-- | The type of the identities to list. Possible values are \"EmailAddress\"+-- and \"Domain\". If this parameter is omitted, then all identities will+-- be listed. liIdentityType :: Lens' ListIdentities (Maybe IdentityType)-liIdentityType = lens _liIdentityType (\s a -> s { _liIdentityType = a })---- | The maximum number of identities per page. Possible values are 1-1000--- inclusive.-liMaxItems :: Lens' ListIdentities (Maybe Int)-liMaxItems = lens _liMaxItems (\s a -> s { _liMaxItems = a })+liIdentityType = lens _liIdentityType (\ s a -> s{_liIdentityType = a}); -- | The token to use for pagination. liNextToken :: Lens' ListIdentities (Maybe Text)-liNextToken = lens _liNextToken (\s a -> s { _liNextToken = a })+liNextToken = lens _liNextToken (\ s a -> s{_liNextToken = a}); -data ListIdentitiesResponse = ListIdentitiesResponse- { _lirIdentities :: List "member" Text- , _lirNextToken :: Maybe Text- } deriving (Eq, Ord, Read, Show)+-- | The maximum number of identities per page. Possible values are 1-1000+-- inclusive.+liMaxItems :: Lens' ListIdentities (Maybe Int)+liMaxItems = lens _liMaxItems (\ s a -> s{_liMaxItems = a}); --- | 'ListIdentitiesResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'lirIdentities' @::@ ['Text']------ * 'lirNextToken' @::@ 'Maybe' 'Text'----listIdentitiesResponse :: ListIdentitiesResponse-listIdentitiesResponse = ListIdentitiesResponse- { _lirIdentities = mempty- , _lirNextToken = Nothing- }+instance AWSPager ListIdentities where+ page rq rs+ | stop (rs ^. lirsNextToken) = Nothing+ | stop (rs ^. lirsIdentities) = Nothing+ | otherwise =+ Just $ rq & liNextToken .~ rs ^. lirsNextToken --- | A list of identities.-lirIdentities :: Lens' ListIdentitiesResponse [Text]-lirIdentities = lens _lirIdentities (\s a -> s { _lirIdentities = a }) . _List+instance AWSRequest ListIdentities where+ type Sv ListIdentities = SES+ type Rs ListIdentities = ListIdentitiesResponse+ request = postQuery+ response+ = receiveXMLWrapper "ListIdentitiesResult"+ (\ s h x ->+ ListIdentitiesResponse' <$>+ (x .@? "NextToken") <*> (pure (fromEnum s)) <*>+ (x .@? "Identities" .!@ mempty >>=+ parseXMLList "member")) --- | The token used for pagination.-lirNextToken :: Lens' ListIdentitiesResponse (Maybe Text)-lirNextToken = lens _lirNextToken (\s a -> s { _lirNextToken = a })+instance ToHeaders ListIdentities where+ toHeaders = const mempty instance ToPath ListIdentities where- toPath = const "/"+ toPath = const "/" instance ToQuery ListIdentities where- toQuery ListIdentities{..} = mconcat- [ "IdentityType" =? _liIdentityType- , "MaxItems" =? _liMaxItems- , "NextToken" =? _liNextToken- ]+ toQuery ListIdentities'{..}+ = mconcat+ ["Action" =: ("ListIdentities" :: ByteString),+ "Version" =: ("2010-12-01" :: ByteString),+ "IdentityType" =: _liIdentityType,+ "NextToken" =: _liNextToken,+ "MaxItems" =: _liMaxItems] -instance ToHeaders ListIdentities+-- | Represents a list of all verified identities for the AWS Account.+--+-- /See:/ 'listIdentitiesResponse' smart constructor.+data ListIdentitiesResponse = ListIdentitiesResponse'+ { _lirsNextToken :: !(Maybe Text)+ , _lirsStatus :: !Int+ , _lirsIdentities :: ![Text]+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest ListIdentities where- type Sv ListIdentities = SES- type Rs ListIdentities = ListIdentitiesResponse+-- | Creates a value of 'ListIdentitiesResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lirsNextToken'+--+-- * 'lirsStatus'+--+-- * 'lirsIdentities'+listIdentitiesResponse+ :: Int -- ^ 'lirsStatus'+ -> ListIdentitiesResponse+listIdentitiesResponse pStatus_ =+ ListIdentitiesResponse'+ { _lirsNextToken = Nothing+ , _lirsStatus = pStatus_+ , _lirsIdentities = mempty+ } - request = post "ListIdentities"- response = xmlResponse+-- | The token used for pagination.+lirsNextToken :: Lens' ListIdentitiesResponse (Maybe Text)+lirsNextToken = lens _lirsNextToken (\ s a -> s{_lirsNextToken = a}); -instance FromXML ListIdentitiesResponse where- parseXML = withElement "ListIdentitiesResult" $ \x -> ListIdentitiesResponse- <$> x .@? "Identities" .!@ mempty- <*> x .@? "NextToken"+-- | The response status code.+lirsStatus :: Lens' ListIdentitiesResponse Int+lirsStatus = lens _lirsStatus (\ s a -> s{_lirsStatus = a}); -instance AWSPager ListIdentities where- page rq rs- | stop (rs ^. lirNextToken) = Nothing- | otherwise = (\x -> rq & liNextToken ?~ x)- <$> (rs ^. lirNextToken)+-- | A list of identities.+lirsIdentities :: Lens' ListIdentitiesResponse [Text]+lirsIdentities = lens _lirsIdentities (\ s a -> s{_lirsIdentities = a}) . _Coerce;
+ gen/Network/AWS/SES/ListIdentityPolicies.hs view
@@ -0,0 +1,147 @@+{-# 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.ListIdentityPolicies+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a list of sending authorization policies that are attached to+-- the given identity (email address or domain). This API returns only a+-- list. If you want the actual policy content, you can use+-- 'GetIdentityPolicies'.+--+-- This API is for the identity owner only. If you have not verified the+-- identity, this API will return an error.+--+-- Sending authorization is a feature that enables an identity owner to+-- authorize other senders to use its identities. For information about+-- using sending authorization, see the+-- <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html Amazon SES Developer Guide>.+--+-- This action is throttled at one request per second.+--+-- /See:/ <http://docs.aws.amazon.com/ses/latest/APIReference/API_ListIdentityPolicies.html AWS API Reference> for ListIdentityPolicies.+module Network.AWS.SES.ListIdentityPolicies+ (+ -- * Creating a Request+ listIdentityPolicies+ , ListIdentityPolicies+ -- * Request Lenses+ , lipIdentity++ -- * Destructuring the Response+ , listIdentityPoliciesResponse+ , ListIdentityPoliciesResponse+ -- * Response Lenses+ , liprsStatus+ , liprsPolicyNames+ ) where++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 instructing the service to list all authorization+-- policies, by name, applying to an identity.+--+-- /See:/ 'listIdentityPolicies' smart constructor.+newtype ListIdentityPolicies = ListIdentityPolicies'+ { _lipIdentity :: Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListIdentityPolicies' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lipIdentity'+listIdentityPolicies+ :: Text -- ^ 'lipIdentity'+ -> ListIdentityPolicies+listIdentityPolicies pIdentity_ =+ ListIdentityPolicies'+ { _lipIdentity = pIdentity_+ }++-- | The identity that is associated with the policy for which the policies+-- will be listed. You can specify an identity by using its name or by+-- using its Amazon Resource Name (ARN). Examples: 'user\'example.com',+-- 'example.com',+-- 'arn:aws:ses:us-east-1:123456789012:identity\/example.com'.+--+-- To successfully call this API, you must own the identity.+lipIdentity :: Lens' ListIdentityPolicies Text+lipIdentity = lens _lipIdentity (\ s a -> s{_lipIdentity = a});++instance AWSRequest ListIdentityPolicies where+ type Sv ListIdentityPolicies = SES+ type Rs ListIdentityPolicies =+ ListIdentityPoliciesResponse+ request = postQuery+ response+ = receiveXMLWrapper "ListIdentityPoliciesResult"+ (\ s h x ->+ ListIdentityPoliciesResponse' <$>+ (pure (fromEnum s)) <*>+ (x .@? "PolicyNames" .!@ mempty >>=+ parseXMLList "member"))++instance ToHeaders ListIdentityPolicies where+ toHeaders = const mempty++instance ToPath ListIdentityPolicies where+ toPath = const "/"++instance ToQuery ListIdentityPolicies where+ toQuery ListIdentityPolicies'{..}+ = mconcat+ ["Action" =: ("ListIdentityPolicies" :: ByteString),+ "Version" =: ("2010-12-01" :: ByteString),+ "Identity" =: _lipIdentity]++-- | Represents a list of policy names returned from a successful+-- 'ListIdentityPolicies' request.+--+-- /See:/ 'listIdentityPoliciesResponse' smart constructor.+data ListIdentityPoliciesResponse = ListIdentityPoliciesResponse'+ { _liprsStatus :: !Int+ , _liprsPolicyNames :: ![Text]+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListIdentityPoliciesResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'liprsStatus'+--+-- * 'liprsPolicyNames'+listIdentityPoliciesResponse+ :: Int -- ^ 'liprsStatus'+ -> ListIdentityPoliciesResponse+listIdentityPoliciesResponse pStatus_ =+ ListIdentityPoliciesResponse'+ { _liprsStatus = pStatus_+ , _liprsPolicyNames = mempty+ }++-- | The response status code.+liprsStatus :: Lens' ListIdentityPoliciesResponse Int+liprsStatus = lens _liprsStatus (\ s a -> s{_liprsStatus = a});++-- | A list of names of policies that apply to the specified identity.+liprsPolicyNames :: Lens' ListIdentityPoliciesResponse [Text]+liprsPolicyNames = lens _liprsPolicyNames (\ s a -> s{_liprsPolicyNames = a}) . _Coerce;
gen/Network/AWS/SES/ListVerifiedEmailAddresses.hs view
@@ -1,103 +1,121 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# 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.ListVerifiedEmailAddresses--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- 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/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Returns a list containing all of the email addresses that have been verified.+-- Returns a list containing all of the email addresses that have been+-- verified. ----- The ListVerifiedEmailAddresses action is deprecated as of the May 15, 2012--- release of Domain Verification. The ListIdentities action is now preferred. This action is throttled at one request per second.+-- The ListVerifiedEmailAddresses action is deprecated as of the May 15,+-- 2012 release of Domain Verification. The ListIdentities action is now+-- preferred. ----- <http://docs.aws.amazon.com/ses/latest/APIReference/API_ListVerifiedEmailAddresses.html>+-- This action is throttled at one request per second.+--+-- /See:/ <http://docs.aws.amazon.com/ses/latest/APIReference/API_ListVerifiedEmailAddresses.html AWS API Reference> for ListVerifiedEmailAddresses. module Network.AWS.SES.ListVerifiedEmailAddresses (- -- * Request- ListVerifiedEmailAddresses- -- ** Request constructor- , listVerifiedEmailAddresses+ -- * Creating a Request+ listVerifiedEmailAddresses+ , ListVerifiedEmailAddresses - -- * Response- , ListVerifiedEmailAddressesResponse- -- ** Response constructor+ -- * Destructuring the Response , listVerifiedEmailAddressesResponse- -- ** Response lenses- , lvearVerifiedEmailAddresses+ , ListVerifiedEmailAddressesResponse+ -- * Response Lenses+ , lvearsVerifiedEmailAddresses+ , lvearsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SES.Types-import qualified GHC.Exts+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SES.Types+import Network.AWS.SES.Types.Product -data ListVerifiedEmailAddresses = ListVerifiedEmailAddresses- deriving (Eq, Ord, Read, Show, Generic)+-- | /See:/ 'listVerifiedEmailAddresses' smart constructor.+data ListVerifiedEmailAddresses =+ ListVerifiedEmailAddresses'+ deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'ListVerifiedEmailAddresses' constructor.-listVerifiedEmailAddresses :: ListVerifiedEmailAddresses-listVerifiedEmailAddresses = ListVerifiedEmailAddresses+-- | Creates a value of 'ListVerifiedEmailAddresses' with the minimum fields required to make a request.+--+listVerifiedEmailAddresses+ :: ListVerifiedEmailAddresses+listVerifiedEmailAddresses = ListVerifiedEmailAddresses' -newtype ListVerifiedEmailAddressesResponse = ListVerifiedEmailAddressesResponse- { _lvearVerifiedEmailAddresses :: List "member" Text- } deriving (Eq, Ord, Read, Show, Monoid, Semigroup)+instance AWSRequest ListVerifiedEmailAddresses where+ type Sv ListVerifiedEmailAddresses = SES+ type Rs ListVerifiedEmailAddresses =+ ListVerifiedEmailAddressesResponse+ request = postQuery+ response+ = receiveXMLWrapper+ "ListVerifiedEmailAddressesResult"+ (\ s h x ->+ ListVerifiedEmailAddressesResponse' <$>+ (x .@? "VerifiedEmailAddresses" .!@ mempty >>=+ may (parseXMLList "member"))+ <*> (pure (fromEnum s))) -instance GHC.Exts.IsList ListVerifiedEmailAddressesResponse where- type Item ListVerifiedEmailAddressesResponse = Text+instance ToHeaders ListVerifiedEmailAddresses where+ toHeaders = const mempty - fromList = ListVerifiedEmailAddressesResponse . GHC.Exts.fromList- toList = GHC.Exts.toList . _lvearVerifiedEmailAddresses+instance ToPath ListVerifiedEmailAddresses where+ toPath = const "/" --- | 'ListVerifiedEmailAddressesResponse' constructor.+instance ToQuery ListVerifiedEmailAddresses where+ toQuery+ = const+ (mconcat+ ["Action" =:+ ("ListVerifiedEmailAddresses" :: ByteString),+ "Version" =: ("2010-12-01" :: ByteString)])++-- | Represents a list of all the email addresses verified for the current+-- user. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'listVerifiedEmailAddressesResponse' smart constructor.+data ListVerifiedEmailAddressesResponse = ListVerifiedEmailAddressesResponse'+ { _lvearsVerifiedEmailAddresses :: !(Maybe [Text])+ , _lvearsStatus :: !Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListVerifiedEmailAddressesResponse' with the minimum fields required to make a request. ----- * 'lvearVerifiedEmailAddresses' @::@ ['Text']+-- Use one of the following lenses to modify other fields as desired: ---listVerifiedEmailAddressesResponse :: ListVerifiedEmailAddressesResponse-listVerifiedEmailAddressesResponse = ListVerifiedEmailAddressesResponse- { _lvearVerifiedEmailAddresses = mempty+-- * 'lvearsVerifiedEmailAddresses'+--+-- * 'lvearsStatus'+listVerifiedEmailAddressesResponse+ :: Int -- ^ 'lvearsStatus'+ -> ListVerifiedEmailAddressesResponse+listVerifiedEmailAddressesResponse pStatus_ =+ ListVerifiedEmailAddressesResponse'+ { _lvearsVerifiedEmailAddresses = Nothing+ , _lvearsStatus = pStatus_ } -- | A list of email addresses that have been verified.-lvearVerifiedEmailAddresses :: Lens' ListVerifiedEmailAddressesResponse [Text]-lvearVerifiedEmailAddresses =- lens _lvearVerifiedEmailAddresses- (\s a -> s { _lvearVerifiedEmailAddresses = a })- . _List--instance ToPath ListVerifiedEmailAddresses where- toPath = const "/"--instance ToQuery ListVerifiedEmailAddresses where- toQuery = const mempty--instance ToHeaders ListVerifiedEmailAddresses--instance AWSRequest ListVerifiedEmailAddresses where- type Sv ListVerifiedEmailAddresses = SES- type Rs ListVerifiedEmailAddresses = ListVerifiedEmailAddressesResponse-- request = post "ListVerifiedEmailAddresses"- response = xmlResponse+lvearsVerifiedEmailAddresses :: Lens' ListVerifiedEmailAddressesResponse [Text]+lvearsVerifiedEmailAddresses = lens _lvearsVerifiedEmailAddresses (\ s a -> s{_lvearsVerifiedEmailAddresses = a}) . _Default . _Coerce; -instance FromXML ListVerifiedEmailAddressesResponse where- parseXML = withElement "ListVerifiedEmailAddressesResult" $ \x -> ListVerifiedEmailAddressesResponse- <$> x .@? "VerifiedEmailAddresses" .!@ mempty+-- | The response status code.+lvearsStatus :: Lens' ListVerifiedEmailAddressesResponse Int+lvearsStatus = lens _lvearsStatus (\ s a -> s{_lvearsStatus = a});
+ gen/Network/AWS/SES/PutIdentityPolicy.hs view
@@ -0,0 +1,160 @@+{-# 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.PutIdentityPolicy+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Adds or updates a sending authorization policy for the specified+-- identity (email address or domain).+--+-- This API is for the identity owner only. If you have not verified the+-- identity, this API will return an error.+--+-- Sending authorization is a feature that enables an identity owner to+-- authorize other senders to use its identities. For information about+-- using sending authorization, see the+-- <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html Amazon SES Developer Guide>.+--+-- This action is throttled at one request per second.+--+-- /See:/ <http://docs.aws.amazon.com/ses/latest/APIReference/API_PutIdentityPolicy.html AWS API Reference> for PutIdentityPolicy.+module Network.AWS.SES.PutIdentityPolicy+ (+ -- * Creating a Request+ putIdentityPolicy+ , PutIdentityPolicy+ -- * Request Lenses+ , pipIdentity+ , pipPolicyName+ , pipPolicy++ -- * Destructuring the Response+ , putIdentityPolicyResponse+ , PutIdentityPolicyResponse+ -- * Response Lenses+ , piprsStatus+ ) where++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 instructing the service to apply an authorization+-- policy to an identity.+--+-- /See:/ 'putIdentityPolicy' smart constructor.+data PutIdentityPolicy = PutIdentityPolicy'+ { _pipIdentity :: !Text+ , _pipPolicyName :: !Text+ , _pipPolicy :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'PutIdentityPolicy' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'pipIdentity'+--+-- * 'pipPolicyName'+--+-- * 'pipPolicy'+putIdentityPolicy+ :: Text -- ^ 'pipIdentity'+ -> Text -- ^ 'pipPolicyName'+ -> Text -- ^ 'pipPolicy'+ -> PutIdentityPolicy+putIdentityPolicy pIdentity_ pPolicyName_ pPolicy_ =+ PutIdentityPolicy'+ { _pipIdentity = pIdentity_+ , _pipPolicyName = pPolicyName_+ , _pipPolicy = pPolicy_+ }++-- | The identity to which the policy will apply. You can specify an identity+-- by using its name or by using its Amazon Resource Name (ARN). Examples:+-- 'user\'example.com', 'example.com',+-- 'arn:aws:ses:us-east-1:123456789012:identity\/example.com'.+--+-- To successfully call this API, you must own the identity.+pipIdentity :: Lens' PutIdentityPolicy Text+pipIdentity = lens _pipIdentity (\ s a -> s{_pipIdentity = a});++-- | The name of the policy.+--+-- The policy name cannot exceed 64 characters and can only include+-- alphanumeric characters, dashes, and underscores.+pipPolicyName :: Lens' PutIdentityPolicy Text+pipPolicyName = lens _pipPolicyName (\ s a -> s{_pipPolicyName = a});++-- | The text of the policy in JSON format. The policy cannot exceed 4 KB.+--+-- For information about the syntax of sending authorization policies, see+-- the+-- <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization-policies.html Amazon SES Developer Guide>.+pipPolicy :: Lens' PutIdentityPolicy Text+pipPolicy = lens _pipPolicy (\ s a -> s{_pipPolicy = a});++instance AWSRequest PutIdentityPolicy where+ type Sv PutIdentityPolicy = SES+ type Rs PutIdentityPolicy = PutIdentityPolicyResponse+ request = postQuery+ response+ = receiveXMLWrapper "PutIdentityPolicyResult"+ (\ s h x ->+ PutIdentityPolicyResponse' <$> (pure (fromEnum s)))++instance ToHeaders PutIdentityPolicy where+ toHeaders = const mempty++instance ToPath PutIdentityPolicy where+ toPath = const "/"++instance ToQuery PutIdentityPolicy where+ toQuery PutIdentityPolicy'{..}+ = mconcat+ ["Action" =: ("PutIdentityPolicy" :: ByteString),+ "Version" =: ("2010-12-01" :: ByteString),+ "Identity" =: _pipIdentity,+ "PolicyName" =: _pipPolicyName,+ "Policy" =: _pipPolicy]++-- | An empty element. Receiving this element indicates that the request+-- completed successfully.+--+-- /See:/ 'putIdentityPolicyResponse' smart constructor.+newtype PutIdentityPolicyResponse = PutIdentityPolicyResponse'+ { _piprsStatus :: Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'PutIdentityPolicyResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'piprsStatus'+putIdentityPolicyResponse+ :: Int -- ^ 'piprsStatus'+ -> PutIdentityPolicyResponse+putIdentityPolicyResponse pStatus_ =+ PutIdentityPolicyResponse'+ { _piprsStatus = pStatus_+ }++-- | The response status code.+piprsStatus :: Lens' PutIdentityPolicyResponse Int+piprsStatus = lens _piprsStatus (\ s a -> s{_piprsStatus = a});
gen/Network/AWS/SES/SendEmail.hs view
@@ -1,182 +1,268 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# 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.SendEmail--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- 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/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Composes an email message based on input data, and then immediately queues--- the message for sending.------ You can only send email from verified email addresses and domains. If your--- account is still in the Amazon SES sandbox, you must also verify every--- recipient email address except for the recipients provided by the Amazon SES--- mailbox simulator. For more information, go to the <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-addresses-and-domains.html Amazon SES Developer Guide>.--- The total size of the message cannot exceed 10 MB.+-- Composes an email message based on input data, and then immediately+-- queues the message for sending. ----- Amazon SES has a limit on the total number of recipients per message: The--- combined number of To:, CC: and BCC: email addresses cannot exceed 50. If you--- need to send an email message to a larger audience, you can divide your--- recipient list into groups of 50 or fewer, and then call Amazon SES--- repeatedly to send the message to each group.+-- There are several important points to know about 'SendEmail': ----- For every message that you send, the total number of recipients (To:, CC:--- and BCC:) is counted against your /sending quota/ - the maximum number of--- emails you can send in a 24-hour period. For information about your sending--- quota, go to the <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/manage-sending-limits.html Amazon SES Developer Guide>.+-- - You can only send email from verified email addresses and domains;+-- otherwise, you will get an \"Email address not verified\" error. If+-- your account is still in the Amazon SES sandbox, you must also+-- verify every recipient email address except for the recipients+-- provided by the Amazon SES mailbox simulator. For more information,+-- go to the+-- <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-addresses-and-domains.html Amazon SES Developer Guide>.+-- - The total size of the message cannot exceed 10 MB. This includes any+-- attachments that are part of the message.+-- - Amazon SES has a limit on the total number of recipients per+-- message. The combined number of To:, CC: and BCC: email addresses+-- cannot exceed 50. If you need to send an email message to a larger+-- audience, you can divide your recipient list into groups of 50 or+-- fewer, and then call Amazon SES repeatedly to send the message to+-- each group.+-- - For every message that you send, the total number of recipients+-- (To:, CC: and BCC:) is counted against your sending quota - the+-- maximum number of emails you can send in a 24-hour period. For+-- information about your sending quota, go to the+-- <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/manage-sending-limits.html Amazon SES Developer Guide>. ----- <http://docs.aws.amazon.com/ses/latest/APIReference/API_SendEmail.html>+-- /See:/ <http://docs.aws.amazon.com/ses/latest/APIReference/API_SendEmail.html AWS API Reference> for SendEmail. module Network.AWS.SES.SendEmail (- -- * Request- SendEmail- -- ** Request constructor- , sendEmail- -- ** Request lenses- , seDestination- , seMessage- , seReplyToAddresses+ -- * Creating a Request+ sendEmail+ , SendEmail+ -- * Request Lenses , seReturnPath+ , seSourceARN+ , seReturnPathARN+ , seReplyToAddresses , seSource+ , seDestination+ , seMessage - -- * Response- , SendEmailResponse- -- ** Response constructor+ -- * Destructuring the Response , sendEmailResponse- -- ** Response lenses- , serMessageId+ , SendEmailResponse+ -- * Response Lenses+ , sersStatus+ , sersMessageId ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SES.Types-import qualified GHC.Exts+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SES.Types+import Network.AWS.SES.Types.Product -data SendEmail = SendEmail- { _seDestination :: Destination- , _seMessage :: Message- , _seReplyToAddresses :: List "member" Text- , _seReturnPath :: Maybe Text- , _seSource :: Text- } deriving (Eq, Read, Show)+-- | Represents a request instructing the service to send a single email+-- message.+--+-- This datatype can be used in application code to compose a message+-- consisting of source, destination, message, reply-to, and return-path+-- parts. This object can then be sent using the 'SendEmail' action.+--+-- /See:/ 'sendEmail' smart constructor.+data SendEmail = SendEmail'+ { _seReturnPath :: !(Maybe Text)+ , _seSourceARN :: !(Maybe Text)+ , _seReturnPathARN :: !(Maybe Text)+ , _seReplyToAddresses :: !(Maybe [Text])+ , _seSource :: !Text+ , _seDestination :: !Destination+ , _seMessage :: !Message+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'SendEmail' constructor.+-- | Creates a value of 'SendEmail' with the minimum fields required to make a request. ----- The fields accessible through corresponding lenses are:+-- Use one of the following lenses to modify other fields as desired: ----- * 'seDestination' @::@ 'Destination'+-- * 'seReturnPath' ----- * 'seMessage' @::@ 'Message'+-- * 'seSourceARN' ----- * 'seReplyToAddresses' @::@ ['Text']+-- * 'seReturnPathARN' ----- * 'seReturnPath' @::@ 'Maybe' 'Text'+-- * 'seReplyToAddresses' ----- * 'seSource' @::@ 'Text'+-- * 'seSource' ---sendEmail :: Text -- ^ 'seSource'- -> Destination -- ^ 'seDestination'- -> Message -- ^ 'seMessage'- -> SendEmail-sendEmail p1 p2 p3 = SendEmail- { _seSource = p1- , _seDestination = p2- , _seMessage = p3- , _seReplyToAddresses = mempty- , _seReturnPath = Nothing+-- * 'seDestination'+--+-- * 'seMessage'+sendEmail+ :: Text -- ^ 'seSource'+ -> Destination -- ^ 'seDestination'+ -> Message -- ^ 'seMessage'+ -> SendEmail+sendEmail pSource_ pDestination_ pMessage_ =+ SendEmail'+ { _seReturnPath = Nothing+ , _seSourceARN = Nothing+ , _seReturnPathARN = Nothing+ , _seReplyToAddresses = Nothing+ , _seSource = pSource_+ , _seDestination = pDestination_+ , _seMessage = pMessage_ } --- | The destination for this email, composed of To:, CC:, and BCC: fields.-seDestination :: Lens' SendEmail Destination-seDestination = lens _seDestination (\s a -> s { _seDestination = a })+-- | The email address to which bounces and complaints are to be forwarded+-- when feedback forwarding is enabled. If the message cannot be delivered+-- to the recipient, then an error message will be returned from the+-- recipient\'s ISP; this message will then be forwarded to the email+-- address specified by the 'ReturnPath' parameter. The 'ReturnPath'+-- parameter is never overwritten. This email address must be either+-- individually verified with Amazon SES, or from a domain that has been+-- verified with Amazon SES.+seReturnPath :: Lens' SendEmail (Maybe Text)+seReturnPath = lens _seReturnPath (\ s a -> s{_seReturnPath = a}); --- | The message to be sent.-seMessage :: Lens' SendEmail Message-seMessage = lens _seMessage (\s a -> s { _seMessage = a })+-- | This parameter is used only for sending authorization. It is the ARN of+-- the identity that is associated with the sending authorization policy+-- that permits you to send for the email address specified in the 'Source'+-- parameter.+--+-- For example, if the owner of 'example.com' (which has ARN+-- 'arn:aws:ses:us-east-1:123456789012:identity\/example.com') attaches a+-- policy to it that authorizes you to send from 'user\'example.com', then+-- you would specify the 'SourceArn' to be+-- 'arn:aws:ses:us-east-1:123456789012:identity\/example.com', and the+-- 'Source' to be 'user\'example.com'.+--+-- For more information about sending authorization, see the+-- <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html Amazon SES Developer Guide>.+seSourceARN :: Lens' SendEmail (Maybe Text)+seSourceARN = lens _seSourceARN (\ s a -> s{_seSourceARN = a}); --- | The reply-to email address(es) for the message. If the recipient replies to--- the message, each reply-to address will receive the reply.-seReplyToAddresses :: Lens' SendEmail [Text]-seReplyToAddresses =- lens _seReplyToAddresses (\s a -> s { _seReplyToAddresses = a })- . _List+-- | This parameter is used only for sending authorization. It is the ARN of+-- the identity that is associated with the sending authorization policy+-- that permits you to use the email address specified in the 'ReturnPath'+-- parameter.+--+-- For example, if the owner of 'example.com' (which has ARN+-- 'arn:aws:ses:us-east-1:123456789012:identity\/example.com') attaches a+-- policy to it that authorizes you to use 'feedback\'example.com', then+-- you would specify the 'ReturnPathArn' to be+-- 'arn:aws:ses:us-east-1:123456789012:identity\/example.com', and the+-- 'ReturnPath' to be 'feedback\'example.com'.+--+-- For more information about sending authorization, see the+-- <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html Amazon SES Developer Guide>.+seReturnPathARN :: Lens' SendEmail (Maybe Text)+seReturnPathARN = lens _seReturnPathARN (\ s a -> s{_seReturnPathARN = a}); --- | The email address to which bounces and complaints are to be forwarded when--- feedback forwarding is enabled. If the message cannot be delivered to the--- recipient, then an error message will be returned from the recipient's ISP;--- this message will then be forwarded to the email address specified by the 'ReturnPath' parameter. The 'ReturnPath' parameter is never overwritten. This email address--- must be either individually verified with Amazon SES, or from a domain that--- has been verified with Amazon SES.-seReturnPath :: Lens' SendEmail (Maybe Text)-seReturnPath = lens _seReturnPath (\s a -> s { _seReturnPath = a })+-- | The reply-to email address(es) for the message. If the recipient replies+-- to the message, each reply-to address will receive the reply.+seReplyToAddresses :: Lens' SendEmail [Text]+seReplyToAddresses = lens _seReplyToAddresses (\ s a -> s{_seReplyToAddresses = a}) . _Default . _Coerce; --- | The identity's email address.+-- | The email address that is sending the email. This email address must be+-- either individually verified with Amazon SES, or from a domain that has+-- been verified with Amazon SES. For information about verifying+-- identities, see the+-- <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-addresses-and-domains.html Amazon SES Developer Guide>. ----- By default, the string must be 7-bit ASCII. If the text must contain any--- other characters, then you must use MIME encoded-word syntax (RFC 2047)--- instead of a literal string. MIME encoded-word syntax uses the following--- form: '=?charset?encoding?encoded-text?='. For more information, see <http://tools.ietf.org/html/rfc2047 RFC 2047>.+-- If you are sending on behalf of another user and have been permitted to+-- do so by a sending authorization policy, then you must also specify the+-- 'SourceArn' parameter. For more information about sending authorization,+-- see the+-- <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html Amazon SES Developer Guide>.+--+-- In all cases, the email address must be 7-bit ASCII. If the text must+-- contain any other characters, then you must use MIME encoded-word syntax+-- (RFC 2047) instead of a literal string. MIME encoded-word syntax uses+-- the following form: '=?charset?encoding?encoded-text?='. For more+-- information, see <http://tools.ietf.org/html/rfc2047 RFC 2047>. seSource :: Lens' SendEmail Text-seSource = lens _seSource (\s a -> s { _seSource = a })+seSource = lens _seSource (\ s a -> s{_seSource = a}); -newtype SendEmailResponse = SendEmailResponse- { _serMessageId :: Text- } deriving (Eq, Ord, Read, Show, Monoid, IsString)+-- | The destination for this email, composed of To:, CC:, and BCC: fields.+seDestination :: Lens' SendEmail Destination+seDestination = lens _seDestination (\ s a -> s{_seDestination = a}); --- | 'SendEmailResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'serMessageId' @::@ 'Text'----sendEmailResponse :: Text -- ^ 'serMessageId'- -> SendEmailResponse-sendEmailResponse p1 = SendEmailResponse- { _serMessageId = p1- }+-- | The message to be sent.+seMessage :: Lens' SendEmail Message+seMessage = lens _seMessage (\ s a -> s{_seMessage = a}); --- | The unique message identifier returned from the 'SendEmail' action.-serMessageId :: Lens' SendEmailResponse Text-serMessageId = lens _serMessageId (\s a -> s { _serMessageId = a })+instance AWSRequest SendEmail where+ type Sv SendEmail = SES+ type Rs SendEmail = SendEmailResponse+ request = postQuery+ response+ = receiveXMLWrapper "SendEmailResult"+ (\ s h x ->+ SendEmailResponse' <$>+ (pure (fromEnum s)) <*> (x .@ "MessageId")) +instance ToHeaders SendEmail where+ toHeaders = const mempty+ instance ToPath SendEmail where- toPath = const "/"+ toPath = const "/" instance ToQuery SendEmail where- toQuery SendEmail{..} = mconcat- [ "Destination" =? _seDestination- , "Message" =? _seMessage- , "ReplyToAddresses" =? _seReplyToAddresses- , "ReturnPath" =? _seReturnPath- , "Source" =? _seSource- ]+ toQuery SendEmail'{..}+ = mconcat+ ["Action" =: ("SendEmail" :: ByteString),+ "Version" =: ("2010-12-01" :: ByteString),+ "ReturnPath" =: _seReturnPath,+ "SourceArn" =: _seSourceARN,+ "ReturnPathArn" =: _seReturnPathARN,+ "ReplyToAddresses" =:+ toQuery+ (toQueryList "member" <$> _seReplyToAddresses),+ "Source" =: _seSource,+ "Destination" =: _seDestination,+ "Message" =: _seMessage] -instance ToHeaders SendEmail+-- | Represents a unique message ID returned from a successful 'SendEmail'+-- request.+--+-- /See:/ 'sendEmailResponse' smart constructor.+data SendEmailResponse = SendEmailResponse'+ { _sersStatus :: !Int+ , _sersMessageId :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest SendEmail where- type Sv SendEmail = SES- type Rs SendEmail = SendEmailResponse+-- | Creates a value of 'SendEmailResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sersStatus'+--+-- * 'sersMessageId'+sendEmailResponse+ :: Int -- ^ 'sersStatus'+ -> Text -- ^ 'sersMessageId'+ -> SendEmailResponse+sendEmailResponse pStatus_ pMessageId_ =+ SendEmailResponse'+ { _sersStatus = pStatus_+ , _sersMessageId = pMessageId_+ } - request = post "SendEmail"- response = xmlResponse+-- | The response status code.+sersStatus :: Lens' SendEmailResponse Int+sersStatus = lens _sersStatus (\ s a -> s{_sersStatus = a}); -instance FromXML SendEmailResponse where- parseXML = withElement "SendEmailResult" $ \x -> SendEmailResponse- <$> x .@ "MessageId"+-- | The unique message identifier returned from the 'SendEmail' action.+sersMessageId :: Lens' SendEmailResponse Text+sersMessageId = lens _sersMessageId (\ s a -> s{_sersMessageId = a});
gen/Network/AWS/SES/SendRawEmail.hs view
@@ -1,173 +1,303 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# 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.SendRawEmail--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- 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/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Sends an email message, with header and content specified by the client. The 'SendRawEmail' action is useful for sending multipart MIME emails. The raw text of the--- message must comply with Internet email standards; otherwise, the message--- cannot be sent.------ You can only send email from verified email addresses and domains. If your--- account is still in the Amazon SES sandbox, you must also verify every--- recipient email address except for the recipients provided by the Amazon SES--- mailbox simulator. For more information, go to the <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-addresses-and-domains.html Amazon SES Developer Guide>.--- The total size of the message cannot exceed 10 MB. This includes any--- attachments that are part of the message.+-- Sends an email message, with header and content specified by the client.+-- The 'SendRawEmail' action is useful for sending multipart MIME emails.+-- The raw text of the message must comply with Internet email standards;+-- otherwise, the message cannot be sent. ----- Amazon SES has a limit on the total number of recipients per message: The--- combined number of To:, CC: and BCC: email addresses cannot exceed 50. If you--- need to send an email message to a larger audience, you can divide your--- recipient list into groups of 50 or fewer, and then call Amazon SES--- repeatedly to send the message to each group.+-- There are several important points to know about 'SendRawEmail': ----- The To:, CC:, and BCC: headers in the raw message can contain a group list.--- Note that each recipient in a group list counts towards the 50-recipient--- limit.+-- - You can only send email from verified email addresses and domains;+-- otherwise, you will get an \"Email address not verified\" error. If+-- your account is still in the Amazon SES sandbox, you must also+-- verify every recipient email address except for the recipients+-- provided by the Amazon SES mailbox simulator. For more information,+-- go to the+-- <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/verify-addresses-and-domains.html Amazon SES Developer Guide>.+-- - The total size of the message cannot exceed 10 MB. This includes any+-- attachments that are part of the message.+-- - Amazon SES has a limit on the total number of recipients per+-- message. The combined number of To:, CC: and BCC: email addresses+-- cannot exceed 50. If you need to send an email message to a larger+-- audience, you can divide your recipient list into groups of 50 or+-- fewer, and then call Amazon SES repeatedly to send the message to+-- each group.+-- - The To:, CC:, and BCC: headers in the raw message can contain a+-- group list. Note that each recipient in a group list counts towards+-- the 50-recipient limit.+-- - For every message that you send, the total number of recipients+-- (To:, CC: and BCC:) is counted against your sending quota - the+-- maximum number of emails you can send in a 24-hour period. For+-- information about your sending quota, go to the+-- <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/manage-sending-limits.html Amazon SES Developer Guide>.+-- - If you are using sending authorization to send on behalf of another+-- user, 'SendRawEmail' enables you to specify the cross-account+-- identity for the email\'s \"Source,\" \"From,\" and \"Return-Path\"+-- parameters in one of two ways: you can pass optional parameters+-- 'SourceArn', 'FromArn', and\/or 'ReturnPathArn' to the API, or you+-- can include the following X-headers in the header of your raw email:+-- - 'X-SES-SOURCE-ARN'+-- - 'X-SES-FROM-ARN'+-- - 'X-SES-RETURN-PATH-ARN' ----- For every message that you send, the total number of recipients (To:, CC:--- and BCC:) is counted against your /sending quota/ - the maximum number of--- emails you can send in a 24-hour period. For information about your sending--- quota, go to the <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/manage-sending-limits.html Amazon SES Developer Guide>.+-- Do not include these X-headers in the DKIM signature, because they+-- are removed by Amazon SES before sending the email.+-- For the most common sending authorization use case, we recommend+-- that you specify the 'SourceIdentityArn' and do not specify either+-- the 'FromIdentityArn' or 'ReturnPathIdentityArn'. (The same note+-- applies to the corresponding X-headers.) If you only specify the+-- 'SourceIdentityArn', Amazon SES will simply set the \"From\" address+-- and the \"Return Path\" address to the identity specified in+-- 'SourceIdentityArn'. For more information about sending+-- authorization, see the+-- <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization.html Amazon SES Developer Guide>. ----- <http://docs.aws.amazon.com/ses/latest/APIReference/API_SendRawEmail.html>+-- /See:/ <http://docs.aws.amazon.com/ses/latest/APIReference/API_SendRawEmail.html AWS API Reference> for SendRawEmail. module Network.AWS.SES.SendRawEmail (- -- * Request- SendRawEmail- -- ** Request constructor- , sendRawEmail- -- ** Request lenses+ -- * Creating a Request+ sendRawEmail+ , SendRawEmail+ -- * Request Lenses+ , sreSourceARN , sreDestinations- , sreRawMessage+ , sreReturnPathARN , sreSource+ , sreFromARN+ , sreRawMessage - -- * Response- , SendRawEmailResponse- -- ** Response constructor+ -- * Destructuring the Response , sendRawEmailResponse- -- ** Response lenses- , srerMessageId+ , SendRawEmailResponse+ -- * Response Lenses+ , srersStatus+ , srersMessageId ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SES.Types-import qualified GHC.Exts+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SES.Types+import Network.AWS.SES.Types.Product -data SendRawEmail = SendRawEmail- { _sreDestinations :: List "member" Text- , _sreRawMessage :: RawMessage- , _sreSource :: Maybe Text- } deriving (Eq, Read, Show)+-- | Represents a request instructing the service to send a raw email+-- message.+--+-- This datatype can be used in application code to compose a message+-- consisting of source, destination, and raw message text. This object can+-- then be sent using the 'SendRawEmail' action.+--+-- /See:/ 'sendRawEmail' smart constructor.+data SendRawEmail = SendRawEmail'+ { _sreSourceARN :: !(Maybe Text)+ , _sreDestinations :: !(Maybe [Text])+ , _sreReturnPathARN :: !(Maybe Text)+ , _sreSource :: !(Maybe Text)+ , _sreFromARN :: !(Maybe Text)+ , _sreRawMessage :: !RawMessage+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'SendRawEmail' constructor.+-- | Creates a value of 'SendRawEmail' with the minimum fields required to make a request. ----- The fields accessible through corresponding lenses are:+-- Use one of the following lenses to modify other fields as desired: ----- * 'sreDestinations' @::@ ['Text']+-- * 'sreSourceARN' ----- * 'sreRawMessage' @::@ 'RawMessage'+-- * 'sreDestinations' ----- * 'sreSource' @::@ 'Maybe' 'Text'+-- * 'sreReturnPathARN' ---sendRawEmail :: RawMessage -- ^ 'sreRawMessage'- -> SendRawEmail-sendRawEmail p1 = SendRawEmail- { _sreRawMessage = p1- , _sreSource = Nothing- , _sreDestinations = mempty+-- * 'sreSource'+--+-- * 'sreFromARN'+--+-- * 'sreRawMessage'+sendRawEmail+ :: RawMessage -- ^ 'sreRawMessage'+ -> SendRawEmail+sendRawEmail pRawMessage_ =+ SendRawEmail'+ { _sreSourceARN = Nothing+ , _sreDestinations = Nothing+ , _sreReturnPathARN = Nothing+ , _sreSource = Nothing+ , _sreFromARN = Nothing+ , _sreRawMessage = pRawMessage_ } +-- | This parameter is used only for sending authorization. It is the ARN of+-- the identity that is associated with the sending authorization policy+-- that permits you to send for the email address specified in the 'Source'+-- parameter.+--+-- For example, if the owner of 'example.com' (which has ARN+-- 'arn:aws:ses:us-east-1:123456789012:identity\/example.com') attaches a+-- policy to it that authorizes you to send from 'user\'example.com', then+-- you would specify the 'SourceArn' to be+-- 'arn:aws:ses:us-east-1:123456789012:identity\/example.com', and the+-- 'Source' to be 'user\'example.com'.+--+-- Instead of using this parameter, you can use the X-header+-- 'X-SES-SOURCE-ARN' in the raw message of the email. If you use both the+-- 'SourceArn' parameter and the corresponding X-header, Amazon SES uses+-- the value of the 'SourceArn' parameter.+--+-- For information about when to use this parameter, see the description of+-- 'SendRawEmail' in this guide, or see the+-- <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization-delegate-sender-tasks-email.html Amazon SES Developer Guide>.+sreSourceARN :: Lens' SendRawEmail (Maybe Text)+sreSourceARN = lens _sreSourceARN (\ s a -> s{_sreSourceARN = a});+ -- | A list of destinations for the message, consisting of To:, CC:, and BCC: -- addresses. sreDestinations :: Lens' SendRawEmail [Text]-sreDestinations = lens _sreDestinations (\s a -> s { _sreDestinations = a }) . _List+sreDestinations = lens _sreDestinations (\ s a -> s{_sreDestinations = a}) . _Default . _Coerce; --- | The raw text of the message. The client is responsible for ensuring the--- following:+-- | This parameter is used only for sending authorization. It is the ARN of+-- the identity that is associated with the sending authorization policy+-- that permits you to use the email address specified in the 'ReturnPath'+-- parameter. ----- Message must contain a header and a body, separated by a blank line. All--- required header fields must be present. Each part of a multipart MIME message--- must be formatted properly. MIME content types must be among those supported--- by Amazon SES. For more information, go to the <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/mime-types.html Amazon SES Developer Guide>. Content must be base64-encoded, if MIME requires it.+-- For example, if the owner of 'example.com' (which has ARN+-- 'arn:aws:ses:us-east-1:123456789012:identity\/example.com') attaches a+-- policy to it that authorizes you to use 'feedback\'example.com', then+-- you would specify the 'ReturnPathArn' to be+-- 'arn:aws:ses:us-east-1:123456789012:identity\/example.com', and the+-- 'ReturnPath' to be 'feedback\'example.com'. ---sreRawMessage :: Lens' SendRawEmail RawMessage-sreRawMessage = lens _sreRawMessage (\s a -> s { _sreRawMessage = a })+-- Instead of using this parameter, you can use the X-header+-- 'X-SES-RETURN-PATH-ARN' in the raw message of the email. If you use both+-- the 'ReturnPathArn' parameter and the corresponding X-header, Amazon SES+-- uses the value of the 'ReturnPathArn' parameter.+--+-- For information about when to use this parameter, see the description of+-- 'SendRawEmail' in this guide, or see the+-- <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization-delegate-sender-tasks-email.html Amazon SES Developer Guide>.+sreReturnPathARN :: Lens' SendRawEmail (Maybe Text)+sreReturnPathARN = lens _sreReturnPathARN (\ s a -> s{_sreReturnPathARN = a}); --- | The identity's email address. If you do not provide a value for this--- parameter, you must specify a "From" address in the raw text of the message.--- (You can also specify both.)+-- | The identity\'s email address. If you do not provide a value for this+-- parameter, you must specify a \"From\" address in the raw text of the+-- message. (You can also specify both.) -- -- By default, the string must be 7-bit ASCII. If the text must contain any -- other characters, then you must use MIME encoded-word syntax (RFC 2047) -- instead of a literal string. MIME encoded-word syntax uses the following--- form: '=?charset?encoding?encoded-text?='. For more information, see <http://tools.ietf.org/html/rfc2047 RFC 2047>.+-- form: '=?charset?encoding?encoded-text?='. For more information, see+-- <http://tools.ietf.org/html/rfc2047 RFC 2047>. ----- If you specify the 'Source' parameter and have feedback forwarding enabled,--- then bounces and complaints will be sent to this email address. This takes--- precedence over any /Return-Path/ header that you might include in the raw text--- of the message.+-- If you specify the 'Source' parameter and have feedback forwarding+-- enabled, then bounces and complaints will be sent to this email address.+-- This takes precedence over any /Return-Path/ header that you might+-- include in the raw text of the message. sreSource :: Lens' SendRawEmail (Maybe Text)-sreSource = lens _sreSource (\s a -> s { _sreSource = a })--newtype SendRawEmailResponse = SendRawEmailResponse- { _srerMessageId :: Text- } deriving (Eq, Ord, Read, Show, Monoid, IsString)+sreSource = lens _sreSource (\ s a -> s{_sreSource = a}); --- | 'SendRawEmailResponse' constructor.+-- | This parameter is used only for sending authorization. It is the ARN of+-- the identity that is associated with the sending authorization policy+-- that permits you to specify a particular \"From\" address in the header+-- of the raw email. ----- The fields accessible through corresponding lenses are:+-- Instead of using this parameter, you can use the X-header+-- 'X-SES-FROM-ARN' in the raw message of the email. If you use both the+-- 'FromArn' parameter and the corresponding X-header, Amazon SES uses the+-- value of the 'FromArn' parameter. ----- * 'srerMessageId' @::@ 'Text'+-- For information about when to use this parameter, see the description of+-- 'SendRawEmail' in this guide, or see the+-- <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/sending-authorization-delegate-sender-tasks-email.html Amazon SES Developer Guide>.+sreFromARN :: Lens' SendRawEmail (Maybe Text)+sreFromARN = lens _sreFromARN (\ s a -> s{_sreFromARN = a});++-- | The raw text of the message. The client is responsible for ensuring the+-- following: ---sendRawEmailResponse :: Text -- ^ 'srerMessageId'- -> SendRawEmailResponse-sendRawEmailResponse p1 = SendRawEmailResponse- { _srerMessageId = p1- }+-- - Message must contain a header and a body, separated by a blank line.+-- - All required header fields must be present.+-- - Each part of a multipart MIME message must be formatted properly.+-- - MIME content types must be among those supported by Amazon SES. For+-- more information, go to the+-- <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/mime-types.html Amazon SES Developer Guide>.+-- - Content must be base64-encoded, if MIME requires it.+sreRawMessage :: Lens' SendRawEmail RawMessage+sreRawMessage = lens _sreRawMessage (\ s a -> s{_sreRawMessage = a}); --- | The unique message identifier returned from the 'SendRawEmail' action.-srerMessageId :: Lens' SendRawEmailResponse Text-srerMessageId = lens _srerMessageId (\s a -> s { _srerMessageId = a })+instance AWSRequest SendRawEmail where+ type Sv SendRawEmail = SES+ type Rs SendRawEmail = SendRawEmailResponse+ request = postQuery+ response+ = receiveXMLWrapper "SendRawEmailResult"+ (\ s h x ->+ SendRawEmailResponse' <$>+ (pure (fromEnum s)) <*> (x .@ "MessageId")) +instance ToHeaders SendRawEmail where+ toHeaders = const mempty+ instance ToPath SendRawEmail where- toPath = const "/"+ toPath = const "/" instance ToQuery SendRawEmail where- toQuery SendRawEmail{..} = mconcat- [ "Destinations" =? _sreDestinations- , "RawMessage" =? _sreRawMessage- , "Source" =? _sreSource- ]+ toQuery SendRawEmail'{..}+ = mconcat+ ["Action" =: ("SendRawEmail" :: ByteString),+ "Version" =: ("2010-12-01" :: ByteString),+ "SourceArn" =: _sreSourceARN,+ "Destinations" =:+ toQuery (toQueryList "member" <$> _sreDestinations),+ "ReturnPathArn" =: _sreReturnPathARN,+ "Source" =: _sreSource, "FromArn" =: _sreFromARN,+ "RawMessage" =: _sreRawMessage] -instance ToHeaders SendRawEmail+-- | Represents a unique message ID returned from a successful 'SendRawEmail'+-- request.+--+-- /See:/ 'sendRawEmailResponse' smart constructor.+data SendRawEmailResponse = SendRawEmailResponse'+ { _srersStatus :: !Int+ , _srersMessageId :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest SendRawEmail where- type Sv SendRawEmail = SES- type Rs SendRawEmail = SendRawEmailResponse+-- | Creates a value of 'SendRawEmailResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'srersStatus'+--+-- * 'srersMessageId'+sendRawEmailResponse+ :: Int -- ^ 'srersStatus'+ -> Text -- ^ 'srersMessageId'+ -> SendRawEmailResponse+sendRawEmailResponse pStatus_ pMessageId_ =+ SendRawEmailResponse'+ { _srersStatus = pStatus_+ , _srersMessageId = pMessageId_+ } - request = post "SendRawEmail"- response = xmlResponse+-- | The response status code.+srersStatus :: Lens' SendRawEmailResponse Int+srersStatus = lens _srersStatus (\ s a -> s{_srersStatus = a}); -instance FromXML SendRawEmailResponse where- parseXML = withElement "SendRawEmailResult" $ \x -> SendRawEmailResponse- <$> x .@ "MessageId"+-- | The unique message identifier returned from the 'SendRawEmail' action.+srersMessageId :: Lens' SendRawEmailResponse Text+srersMessageId = lens _srersMessageId (\ s a -> s{_srersMessageId = a});
gen/Network/AWS/SES/SetIdentityDkimEnabled.hs view
@@ -1,113 +1,146 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# 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.SetIdentityDkimEnabled--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- 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/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Enables or disables Easy DKIM signing of email sent from an identity:+-- Enables or disables Easy DKIM signing of email sent from an identity: ----- If Easy DKIM signing is enabled for a domain name identity (e.g., 'example.com'), then Amazon SES will DKIM-sign all email sent by addresses under that--- domain name (e.g., 'user@example.com'). If Easy DKIM signing is enabled for an--- email address, then Amazon SES will DKIM-sign all email sent by that email--- address. For email addresses (e.g., 'user@example.com'), you can only enable--- Easy DKIM signing if the corresponding domain (e.g., 'example.com') has been--- set up for Easy DKIM using the AWS Console or the 'VerifyDomainDkim' action.+-- - If Easy DKIM signing is enabled for a domain name identity (e.g.,+-- 'example.com'), then Amazon SES will DKIM-sign all email sent by+-- addresses under that domain name (e.g., 'user\'example.com').+-- - If Easy DKIM signing is enabled for an email address, then Amazon+-- SES will DKIM-sign all email sent by that email address. --+-- For email addresses (e.g., 'user\'example.com'), you can only enable+-- Easy DKIM signing if the corresponding domain (e.g., 'example.com') has+-- been set up for Easy DKIM using the AWS Console or the+-- 'VerifyDomainDkim' action.+-- -- This action is throttled at one request per second. ----- For more information about Easy DKIM signing, go to the <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim.html Amazon SES DeveloperGuide>.+-- For more information about Easy DKIM signing, go to the+-- <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim.html Amazon SES Developer Guide>. ----- <http://docs.aws.amazon.com/ses/latest/APIReference/API_SetIdentityDkimEnabled.html>+-- /See:/ <http://docs.aws.amazon.com/ses/latest/APIReference/API_SetIdentityDkimEnabled.html AWS API Reference> for SetIdentityDkimEnabled. module Network.AWS.SES.SetIdentityDkimEnabled (- -- * Request- SetIdentityDkimEnabled- -- ** Request constructor- , setIdentityDkimEnabled- -- ** Request lenses- , sideDkimEnabled+ -- * Creating a Request+ setIdentityDkimEnabled+ , SetIdentityDkimEnabled+ -- * Request Lenses , sideIdentity+ , sideDkimEnabled - -- * Response- , SetIdentityDkimEnabledResponse- -- ** Response constructor+ -- * Destructuring the Response , setIdentityDkimEnabledResponse+ , SetIdentityDkimEnabledResponse+ -- * Response Lenses+ , sidersStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SES.Types-import qualified GHC.Exts--data SetIdentityDkimEnabled = SetIdentityDkimEnabled- { _sideDkimEnabled :: Bool- , _sideIdentity :: Text- } deriving (Eq, Ord, Read, Show)+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SES.Types+import Network.AWS.SES.Types.Product --- | 'SetIdentityDkimEnabled' constructor.+-- | Represents a request instructing the service to enable or disable DKIM+-- signing for an identity. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'setIdentityDkimEnabled' smart constructor.+data SetIdentityDkimEnabled = SetIdentityDkimEnabled'+ { _sideIdentity :: !Text+ , _sideDkimEnabled :: !Bool+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'SetIdentityDkimEnabled' with the minimum fields required to make a request. ----- * 'sideDkimEnabled' @::@ 'Bool'+-- Use one of the following lenses to modify other fields as desired: ----- * 'sideIdentity' @::@ 'Text'+-- * 'sideIdentity' ---setIdentityDkimEnabled :: Text -- ^ 'sideIdentity'- -> Bool -- ^ 'sideDkimEnabled'- -> SetIdentityDkimEnabled-setIdentityDkimEnabled p1 p2 = SetIdentityDkimEnabled- { _sideIdentity = p1- , _sideDkimEnabled = p2+-- * 'sideDkimEnabled'+setIdentityDkimEnabled+ :: Text -- ^ 'sideIdentity'+ -> Bool -- ^ 'sideDkimEnabled'+ -> SetIdentityDkimEnabled+setIdentityDkimEnabled pIdentity_ pDkimEnabled_ =+ SetIdentityDkimEnabled'+ { _sideIdentity = pIdentity_+ , _sideDkimEnabled = pDkimEnabled_ } --- | Sets whether DKIM signing is enabled for an identity. Set to 'true' to enable--- DKIM signing for this identity; 'false' to disable it.-sideDkimEnabled :: Lens' SetIdentityDkimEnabled Bool-sideDkimEnabled = lens _sideDkimEnabled (\s a -> s { _sideDkimEnabled = a })- -- | The identity for which DKIM signing should be enabled or disabled. sideIdentity :: Lens' SetIdentityDkimEnabled Text-sideIdentity = lens _sideIdentity (\s a -> s { _sideIdentity = a })+sideIdentity = lens _sideIdentity (\ s a -> s{_sideIdentity = a}); -data SetIdentityDkimEnabledResponse = SetIdentityDkimEnabledResponse- deriving (Eq, Ord, Read, Show, Generic)+-- | Sets whether DKIM signing is enabled for an identity. Set to 'true' to+-- enable DKIM signing for this identity; 'false' to disable it.+sideDkimEnabled :: Lens' SetIdentityDkimEnabled Bool+sideDkimEnabled = lens _sideDkimEnabled (\ s a -> s{_sideDkimEnabled = a}); --- | 'SetIdentityDkimEnabledResponse' constructor.-setIdentityDkimEnabledResponse :: SetIdentityDkimEnabledResponse-setIdentityDkimEnabledResponse = SetIdentityDkimEnabledResponse+instance AWSRequest SetIdentityDkimEnabled where+ type Sv SetIdentityDkimEnabled = SES+ type Rs SetIdentityDkimEnabled =+ SetIdentityDkimEnabledResponse+ request = postQuery+ response+ = receiveXMLWrapper "SetIdentityDkimEnabledResult"+ (\ s h x ->+ SetIdentityDkimEnabledResponse' <$>+ (pure (fromEnum s))) +instance ToHeaders SetIdentityDkimEnabled where+ toHeaders = const mempty+ instance ToPath SetIdentityDkimEnabled where- toPath = const "/"+ toPath = const "/" instance ToQuery SetIdentityDkimEnabled where- toQuery SetIdentityDkimEnabled{..} = mconcat- [ "DkimEnabled" =? _sideDkimEnabled- , "Identity" =? _sideIdentity- ]+ toQuery SetIdentityDkimEnabled'{..}+ = mconcat+ ["Action" =:+ ("SetIdentityDkimEnabled" :: ByteString),+ "Version" =: ("2010-12-01" :: ByteString),+ "Identity" =: _sideIdentity,+ "DkimEnabled" =: _sideDkimEnabled] -instance ToHeaders SetIdentityDkimEnabled+-- | An empty element. Receiving this element indicates that the request+-- completed successfully.+--+-- /See:/ 'setIdentityDkimEnabledResponse' smart constructor.+newtype SetIdentityDkimEnabledResponse = SetIdentityDkimEnabledResponse'+ { _sidersStatus :: Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest SetIdentityDkimEnabled where- type Sv SetIdentityDkimEnabled = SES- type Rs SetIdentityDkimEnabled = SetIdentityDkimEnabledResponse+-- | Creates a value of 'SetIdentityDkimEnabledResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sidersStatus'+setIdentityDkimEnabledResponse+ :: Int -- ^ 'sidersStatus'+ -> SetIdentityDkimEnabledResponse+setIdentityDkimEnabledResponse pStatus_ =+ SetIdentityDkimEnabledResponse'+ { _sidersStatus = pStatus_+ } - request = post "SetIdentityDkimEnabled"- response = nullResponse SetIdentityDkimEnabledResponse+-- | The response status code.+sidersStatus :: Lens' SetIdentityDkimEnabledResponse Int+sidersStatus = lens _sidersStatus (\ s a -> s{_sidersStatus = a});
gen/Network/AWS/SES/SetIdentityFeedbackForwardingEnabled.hs view
@@ -1,118 +1,151 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# 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.SetIdentityFeedbackForwardingEnabled--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- 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/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | 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.+-- 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. -- -- Feedback forwarding does not apply to delivery notifications. Delivery--- notifications are only available through Amazon SNS. This action is throttled--- at one request per second.+-- notifications are only available through Amazon SNS. ----- For more information about using notifications with Amazon SES, see the <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/notifications.html Amazon SES Developer Guide>.+-- This action is throttled at one request per second. ----- <http://docs.aws.amazon.com/ses/latest/APIReference/API_SetIdentityFeedbackForwardingEnabled.html>+-- For more information about using notifications with Amazon SES, see the+-- <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/notifications.html Amazon SES Developer Guide>.+--+-- /See:/ <http://docs.aws.amazon.com/ses/latest/APIReference/API_SetIdentityFeedbackForwardingEnabled.html AWS API Reference> for SetIdentityFeedbackForwardingEnabled. module Network.AWS.SES.SetIdentityFeedbackForwardingEnabled (- -- * Request- SetIdentityFeedbackForwardingEnabled- -- ** Request constructor- , setIdentityFeedbackForwardingEnabled- -- ** Request lenses- , siffeForwardingEnabled+ -- * Creating a Request+ setIdentityFeedbackForwardingEnabled+ , SetIdentityFeedbackForwardingEnabled+ -- * Request Lenses , siffeIdentity+ , siffeForwardingEnabled - -- * Response- , SetIdentityFeedbackForwardingEnabledResponse- -- ** Response constructor+ -- * Destructuring the Response , setIdentityFeedbackForwardingEnabledResponse+ , SetIdentityFeedbackForwardingEnabledResponse+ -- * Response Lenses+ , siffersStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SES.Types-import qualified GHC.Exts+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SES.Types+import Network.AWS.SES.Types.Product -data SetIdentityFeedbackForwardingEnabled = SetIdentityFeedbackForwardingEnabled- { _siffeForwardingEnabled :: Bool- , _siffeIdentity :: Text- } deriving (Eq, Ord, Read, Show)+-- | /See:/ 'setIdentityFeedbackForwardingEnabled' smart constructor.+data SetIdentityFeedbackForwardingEnabled = SetIdentityFeedbackForwardingEnabled'+ { _siffeIdentity :: !Text+ , _siffeForwardingEnabled :: !Bool+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'SetIdentityFeedbackForwardingEnabled' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'SetIdentityFeedbackForwardingEnabled' with the minimum fields required to make a request. ----- * 'siffeForwardingEnabled' @::@ 'Bool'+-- Use one of the following lenses to modify other fields as desired: ----- * 'siffeIdentity' @::@ 'Text'+-- * 'siffeIdentity' ---setIdentityFeedbackForwardingEnabled :: Text -- ^ 'siffeIdentity'- -> Bool -- ^ 'siffeForwardingEnabled'- -> SetIdentityFeedbackForwardingEnabled-setIdentityFeedbackForwardingEnabled p1 p2 = SetIdentityFeedbackForwardingEnabled- { _siffeIdentity = p1- , _siffeForwardingEnabled = p2+-- * 'siffeForwardingEnabled'+setIdentityFeedbackForwardingEnabled+ :: Text -- ^ 'siffeIdentity'+ -> Bool -- ^ 'siffeForwardingEnabled'+ -> SetIdentityFeedbackForwardingEnabled+setIdentityFeedbackForwardingEnabled pIdentity_ pForwardingEnabled_ =+ SetIdentityFeedbackForwardingEnabled'+ { _siffeIdentity = pIdentity_+ , _siffeForwardingEnabled = pForwardingEnabled_ } --- | 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'.+-- | 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 })+siffeIdentity = lens _siffeIdentity (\ s a -> s{_siffeIdentity = a}); -data SetIdentityFeedbackForwardingEnabledResponse = SetIdentityFeedbackForwardingEnabledResponse- deriving (Eq, Ord, Read, Show, Generic)+-- | 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}); --- | 'SetIdentityFeedbackForwardingEnabledResponse' constructor.-setIdentityFeedbackForwardingEnabledResponse :: SetIdentityFeedbackForwardingEnabledResponse-setIdentityFeedbackForwardingEnabledResponse = SetIdentityFeedbackForwardingEnabledResponse+instance AWSRequest+ SetIdentityFeedbackForwardingEnabled where+ type Sv SetIdentityFeedbackForwardingEnabled = SES+ type Rs SetIdentityFeedbackForwardingEnabled =+ SetIdentityFeedbackForwardingEnabledResponse+ request = postQuery+ response+ = receiveXMLWrapper+ "SetIdentityFeedbackForwardingEnabledResult"+ (\ s h x ->+ SetIdentityFeedbackForwardingEnabledResponse' <$>+ (pure (fromEnum s))) -instance ToPath SetIdentityFeedbackForwardingEnabled where- toPath = const "/"+instance ToHeaders+ SetIdentityFeedbackForwardingEnabled where+ toHeaders = const mempty -instance ToQuery SetIdentityFeedbackForwardingEnabled where- toQuery SetIdentityFeedbackForwardingEnabled{..} = mconcat- [ "ForwardingEnabled" =? _siffeForwardingEnabled- , "Identity" =? _siffeIdentity- ]+instance ToPath SetIdentityFeedbackForwardingEnabled+ where+ toPath = const "/" -instance ToHeaders SetIdentityFeedbackForwardingEnabled+instance ToQuery SetIdentityFeedbackForwardingEnabled+ where+ toQuery SetIdentityFeedbackForwardingEnabled'{..}+ = mconcat+ ["Action" =:+ ("SetIdentityFeedbackForwardingEnabled" ::+ ByteString),+ "Version" =: ("2010-12-01" :: ByteString),+ "Identity" =: _siffeIdentity,+ "ForwardingEnabled" =: _siffeForwardingEnabled] -instance AWSRequest SetIdentityFeedbackForwardingEnabled where- type Sv SetIdentityFeedbackForwardingEnabled = SES- type Rs SetIdentityFeedbackForwardingEnabled = SetIdentityFeedbackForwardingEnabledResponse+-- | An empty element. Receiving this element indicates that the request+-- completed successfully.+--+-- /See:/ 'setIdentityFeedbackForwardingEnabledResponse' smart constructor.+newtype SetIdentityFeedbackForwardingEnabledResponse = SetIdentityFeedbackForwardingEnabledResponse'+ { _siffersStatus :: Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "SetIdentityFeedbackForwardingEnabled"- response = nullResponse SetIdentityFeedbackForwardingEnabledResponse+-- | Creates a value of 'SetIdentityFeedbackForwardingEnabledResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'siffersStatus'+setIdentityFeedbackForwardingEnabledResponse+ :: Int -- ^ 'siffersStatus'+ -> SetIdentityFeedbackForwardingEnabledResponse+setIdentityFeedbackForwardingEnabledResponse pStatus_ =+ SetIdentityFeedbackForwardingEnabledResponse'+ { _siffersStatus = pStatus_+ }++-- | The response status code.+siffersStatus :: Lens' SetIdentityFeedbackForwardingEnabledResponse Int+siffersStatus = lens _siffersStatus (\ s a -> s{_siffersStatus = a});
gen/Network/AWS/SES/SetIdentityNotificationTopic.hs view
@@ -1,123 +1,158 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# 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.SetIdentityNotificationTopic--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- 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/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Given an identity (email address or domain), sets the Amazon Simple+-- Given an identity (email address or domain), sets the Amazon Simple -- Notification Service (Amazon SNS) topic to which Amazon SES will publish--- bounce, complaint, and/or delivery notifications for emails sent with that--- identity as the 'Source'.+-- bounce, complaint, and\/or delivery notifications for emails sent with+-- that identity as the 'Source'. ----- Unless feedback forwarding is enabled, you must specify Amazon SNS topics--- for bounce and complaint notifications. For more information, see 'SetIdentityFeedbackForwardingEnabled'. This action is throttled at one request per second.+-- Unless feedback forwarding is enabled, you must specify Amazon SNS+-- topics for bounce and complaint notifications. For more information, see+-- 'SetIdentityFeedbackForwardingEnabled'. ----- For more information about feedback notification, see the <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/notifications.html Amazon SESDeveloper Guide>.+-- This action is throttled at one request per second. ----- <http://docs.aws.amazon.com/ses/latest/APIReference/API_SetIdentityNotificationTopic.html>+-- For more information about feedback notification, see the+-- <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/notifications.html Amazon SES Developer Guide>.+--+-- /See:/ <http://docs.aws.amazon.com/ses/latest/APIReference/API_SetIdentityNotificationTopic.html AWS API Reference> for SetIdentityNotificationTopic. module Network.AWS.SES.SetIdentityNotificationTopic (- -- * Request- SetIdentityNotificationTopic- -- ** Request constructor- , setIdentityNotificationTopic- -- ** Request lenses+ -- * Creating a Request+ setIdentityNotificationTopic+ , SetIdentityNotificationTopic+ -- * Request Lenses+ , sintSNSTopic , sintIdentity , sintNotificationType- , sintSnsTopic - -- * Response- , SetIdentityNotificationTopicResponse- -- ** Response constructor+ -- * Destructuring the Response , setIdentityNotificationTopicResponse+ , SetIdentityNotificationTopicResponse+ -- * Response Lenses+ , sintrsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SES.Types-import qualified GHC.Exts--data SetIdentityNotificationTopic = SetIdentityNotificationTopic- { _sintIdentity :: Text- , _sintNotificationType :: NotificationType- , _sintSnsTopic :: Maybe Text- } deriving (Eq, Read, Show)+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SES.Types+import Network.AWS.SES.Types.Product --- | 'SetIdentityNotificationTopic' constructor.+-- | Represents a request to set or clear an identity\'s notification topic. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'setIdentityNotificationTopic' smart constructor.+data SetIdentityNotificationTopic = SetIdentityNotificationTopic'+ { _sintSNSTopic :: !(Maybe Text)+ , _sintIdentity :: !Text+ , _sintNotificationType :: !NotificationType+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'SetIdentityNotificationTopic' with the minimum fields required to make a request. ----- * 'sintIdentity' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ----- * 'sintNotificationType' @::@ 'NotificationType'+-- * 'sintSNSTopic' ----- * 'sintSnsTopic' @::@ 'Maybe' 'Text'+-- * 'sintIdentity' ---setIdentityNotificationTopic :: Text -- ^ 'sintIdentity'- -> NotificationType -- ^ 'sintNotificationType'- -> SetIdentityNotificationTopic-setIdentityNotificationTopic p1 p2 = SetIdentityNotificationTopic- { _sintIdentity = p1- , _sintNotificationType = p2- , _sintSnsTopic = Nothing+-- * 'sintNotificationType'+setIdentityNotificationTopic+ :: Text -- ^ 'sintIdentity'+ -> NotificationType -- ^ 'sintNotificationType'+ -> SetIdentityNotificationTopic+setIdentityNotificationTopic pIdentity_ pNotificationType_ =+ SetIdentityNotificationTopic'+ { _sintSNSTopic = Nothing+ , _sintIdentity = pIdentity_+ , _sintNotificationType = pNotificationType_ } --- | The identity for which the Amazon SNS topic will be set. Examples: 'user@example.com', 'example.com'.+-- | The Amazon Resource Name (ARN) of the Amazon SNS topic. If the parameter+-- is omitted from the request or a null value is passed, 'SnsTopic' is+-- cleared and publishing is disabled.+sintSNSTopic :: Lens' SetIdentityNotificationTopic (Maybe Text)+sintSNSTopic = lens _sintSNSTopic (\ s a -> s{_sintSNSTopic = a});++-- | The identity for which the Amazon SNS topic will be set. You can specify+-- an identity by using its name or by using its Amazon Resource Name+-- (ARN). Examples: 'user\'example.com', 'example.com',+-- 'arn:aws:ses:us-east-1:123456789012:identity\/example.com'. sintIdentity :: Lens' SetIdentityNotificationTopic Text-sintIdentity = lens _sintIdentity (\s a -> s { _sintIdentity = a })+sintIdentity = lens _sintIdentity (\ s a -> s{_sintIdentity = a}); --- | The type of notifications that will be published to the specified Amazon SNS--- topic.+-- | The type of notifications that will be published to the specified Amazon+-- SNS topic. sintNotificationType :: Lens' SetIdentityNotificationTopic NotificationType-sintNotificationType =- lens _sintNotificationType (\s a -> s { _sintNotificationType = a })---- | The Amazon Resource Name (ARN) of the Amazon SNS topic. If the parameter is--- omitted from the request or a null value is passed, 'SnsTopic' is cleared and--- publishing is disabled.-sintSnsTopic :: Lens' SetIdentityNotificationTopic (Maybe Text)-sintSnsTopic = lens _sintSnsTopic (\s a -> s { _sintSnsTopic = a })+sintNotificationType = lens _sintNotificationType (\ s a -> s{_sintNotificationType = a}); -data SetIdentityNotificationTopicResponse = SetIdentityNotificationTopicResponse- deriving (Eq, Ord, Read, Show, Generic)+instance AWSRequest SetIdentityNotificationTopic+ where+ type Sv SetIdentityNotificationTopic = SES+ type Rs SetIdentityNotificationTopic =+ SetIdentityNotificationTopicResponse+ request = postQuery+ response+ = receiveXMLWrapper+ "SetIdentityNotificationTopicResult"+ (\ s h x ->+ SetIdentityNotificationTopicResponse' <$>+ (pure (fromEnum s))) --- | 'SetIdentityNotificationTopicResponse' constructor.-setIdentityNotificationTopicResponse :: SetIdentityNotificationTopicResponse-setIdentityNotificationTopicResponse = SetIdentityNotificationTopicResponse+instance ToHeaders SetIdentityNotificationTopic where+ toHeaders = const mempty instance ToPath SetIdentityNotificationTopic where- toPath = const "/"+ toPath = const "/" instance ToQuery SetIdentityNotificationTopic where- toQuery SetIdentityNotificationTopic{..} = mconcat- [ "Identity" =? _sintIdentity- , "NotificationType" =? _sintNotificationType- , "SnsTopic" =? _sintSnsTopic- ]+ toQuery SetIdentityNotificationTopic'{..}+ = mconcat+ ["Action" =:+ ("SetIdentityNotificationTopic" :: ByteString),+ "Version" =: ("2010-12-01" :: ByteString),+ "SnsTopic" =: _sintSNSTopic,+ "Identity" =: _sintIdentity,+ "NotificationType" =: _sintNotificationType] -instance ToHeaders SetIdentityNotificationTopic+-- | An empty element. Receiving this element indicates that the request+-- completed successfully.+--+-- /See:/ 'setIdentityNotificationTopicResponse' smart constructor.+newtype SetIdentityNotificationTopicResponse = SetIdentityNotificationTopicResponse'+ { _sintrsStatus :: Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest SetIdentityNotificationTopic where- type Sv SetIdentityNotificationTopic = SES- type Rs SetIdentityNotificationTopic = SetIdentityNotificationTopicResponse+-- | Creates a value of 'SetIdentityNotificationTopicResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sintrsStatus'+setIdentityNotificationTopicResponse+ :: Int -- ^ 'sintrsStatus'+ -> SetIdentityNotificationTopicResponse+setIdentityNotificationTopicResponse pStatus_ =+ SetIdentityNotificationTopicResponse'+ { _sintrsStatus = pStatus_+ } - request = post "SetIdentityNotificationTopic"- response = nullResponse SetIdentityNotificationTopicResponse+-- | The response status code.+sintrsStatus :: Lens' SetIdentityNotificationTopicResponse Int+sintrsStatus = lens _sintrsStatus (\ s a -> s{_sintrsStatus = a});
gen/Network/AWS/SES/Types.hs view
@@ -1,74 +1,39 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}-{-# LANGUAGE ViewPatterns #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE TypeFamilies #-} -{-# OPTIONS_GHC -fno-warn-unused-imports #-}+-- Derived from AWS service descriptions, licensed under Apache 2.0. +-- | -- Module : Network.AWS.SES.Types--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- 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/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.- module Network.AWS.SES.Types ( -- * Service SES- -- ** Error- , RESTError- -- ** XML- , ns - -- * Destination- , Destination- , destination- , dBccAddresses- , dCcAddresses- , dToAddresses+ -- * Errors+ , _MessageRejected+ , _InvalidPolicyException - -- * IdentityDkimAttributes- , IdentityDkimAttributes- , identityDkimAttributes- , idaDkimEnabled- , idaDkimTokens- , idaDkimVerificationStatus+ -- * IdentityType+ , IdentityType (..) + -- * NotificationType+ , NotificationType (..)++ -- * VerificationStatus+ , VerificationStatus (..)+ -- * Body , Body , body- , bHtml , bText-- -- * IdentityVerificationAttributes- , IdentityVerificationAttributes- , identityVerificationAttributes- , ivaVerificationStatus- , ivaVerificationToken-- -- * SendDataPoint- , SendDataPoint- , sendDataPoint- , sdpBounces- , sdpComplaints- , sdpDeliveryAttempts- , sdpRejects- , sdpTimestamp-- -- * IdentityType- , IdentityType (..)+ , bHTML -- * Content , Content@@ -76,6 +41,20 @@ , cCharset , cData + -- * Destination+ , Destination+ , destination+ , dBCCAddresses+ , dCCAddresses+ , dToAddresses++ -- * IdentityDkimAttributes+ , IdentityDkimAttributes+ , identityDkimAttributes+ , idaDkimTokens+ , idaDkimEnabled+ , idaDkimVerificationStatus+ -- * IdentityNotificationAttributes , IdentityNotificationAttributes , identityNotificationAttributes@@ -84,610 +63,79 @@ , inaDeliveryTopic , inaForwardingEnabled - -- * RawMessage- , RawMessage- , rawMessage- , rmData-- -- * NotificationType- , NotificationType (..)-- -- * VerificationStatus- , VerificationStatus (..)+ -- * IdentityVerificationAttributes+ , IdentityVerificationAttributes+ , identityVerificationAttributes+ , ivaVerificationToken+ , ivaVerificationStatus -- * Message , Message , message- , mBody , mSubject+ , mBody++ -- * RawMessage+ , RawMessage+ , rawMessage+ , rmData++ -- * SendDataPoint+ , SendDataPoint+ , sendDataPoint+ , sdpRejects+ , sdpComplaints+ , sdpDeliveryAttempts+ , sdpBounces+ , sdpTimestamp ) where -import Network.AWS.Prelude-import Network.AWS.Signing-import qualified GHC.Exts+import Network.AWS.Prelude+import Network.AWS.SES.Types.Product+import Network.AWS.SES.Types.Sum+import Network.AWS.Sign.V4 --- | Version @2010-12-01@ of the Amazon Simple Email Service service.+-- | Version @2010-12-01@ of the Amazon Simple Email Service SDK. data SES instance AWSService SES where type Sg SES = V4- type Er SES = RESTError-- service = service'+ service = const svc where- service' :: Service SES- service' = Service- { _svcAbbrev = "SES"- , _svcPrefix = "email"- , _svcVersion = "2010-12-01"- , _svcTargetPrefix = Nothing- , _svcJSONVersion = Nothing- , _svcHandle = handle- , _svcRetry = retry+ svc =+ Service+ { _svcAbbrev = "SES"+ , _svcPrefix = "email"+ , _svcVersion = "2010-12-01"+ , _svcEndpoint = defaultEndpoint svc+ , _svcTimeout = Just 70+ , _svcStatus = statusSuccess+ , _svcError = parseXMLError+ , _svcRetry = retry }-- handle :: Status- -> Maybe (LazyByteString -> ServiceError RESTError)- handle = restError statusSuccess service'-- retry :: Retry SES- retry = Exponential- { _retryBase = 0.05- , _retryGrowth = 2+ retry =+ Exponential+ { _retryBase = 5.0e-2+ , _retryGrowth = 2 , _retryAttempts = 5- , _retryCheck = check+ , _retryCheck = check }-- check :: Status- -> RESTError- -> Bool- check (statusCode -> s) (awsErrorCode -> e)- | s == 400 && (Just "Throttling") == e = True -- Throttling- | s == 500 = True -- General Server Error- | s == 509 = True -- Limit Exceeded- | s == 503 = True -- Service Unavailable- | otherwise = False--ns :: Text-ns = "http://ses.amazonaws.com/doc/2010-12-01/"-{-# INLINE ns #-}--data Destination = Destination- { _dBccAddresses :: List "member" Text- , _dCcAddresses :: List "member" Text- , _dToAddresses :: List "member" Text- } deriving (Eq, Ord, Read, Show)---- | 'Destination' constructor.------ The fields accessible through corresponding lenses are:------ * 'dBccAddresses' @::@ ['Text']------ * 'dCcAddresses' @::@ ['Text']------ * 'dToAddresses' @::@ ['Text']----destination :: Destination-destination = Destination- { _dToAddresses = mempty- , _dCcAddresses = mempty- , _dBccAddresses = mempty- }---- | The BCC: field(s) of the message.-dBccAddresses :: Lens' Destination [Text]-dBccAddresses = lens _dBccAddresses (\s a -> s { _dBccAddresses = a }) . _List---- | The CC: field(s) of the message.-dCcAddresses :: Lens' Destination [Text]-dCcAddresses = lens _dCcAddresses (\s a -> s { _dCcAddresses = a }) . _List---- | The To: field(s) of the message.-dToAddresses :: Lens' Destination [Text]-dToAddresses = lens _dToAddresses (\s a -> s { _dToAddresses = a }) . _List--instance FromXML Destination where- parseXML x = Destination- <$> x .@? "BccAddresses" .!@ mempty- <*> x .@? "CcAddresses" .!@ mempty- <*> x .@? "ToAddresses" .!@ mempty--instance ToQuery Destination where- toQuery Destination{..} = mconcat- [ "BccAddresses" =? _dBccAddresses- , "CcAddresses" =? _dCcAddresses- , "ToAddresses" =? _dToAddresses- ]--data IdentityDkimAttributes = IdentityDkimAttributes- { _idaDkimEnabled :: Bool- , _idaDkimTokens :: List "member" Text- , _idaDkimVerificationStatus :: VerificationStatus- } deriving (Eq, Read, Show)---- | 'IdentityDkimAttributes' constructor.------ The fields accessible through corresponding lenses are:------ * 'idaDkimEnabled' @::@ 'Bool'------ * 'idaDkimTokens' @::@ ['Text']------ * 'idaDkimVerificationStatus' @::@ 'VerificationStatus'----identityDkimAttributes :: Bool -- ^ 'idaDkimEnabled'- -> VerificationStatus -- ^ 'idaDkimVerificationStatus'- -> IdentityDkimAttributes-identityDkimAttributes p1 p2 = IdentityDkimAttributes- { _idaDkimEnabled = p1- , _idaDkimVerificationStatus = p2- , _idaDkimTokens = mempty- }---- | True if DKIM signing is enabled for email sent from the identity; false--- otherwise.-idaDkimEnabled :: Lens' IdentityDkimAttributes Bool-idaDkimEnabled = lens _idaDkimEnabled (\s a -> s { _idaDkimEnabled = a })---- | A set of character strings that represent the domain's identity. Using these--- tokens, you will need to create DNS CNAME records that point to DKIM public--- keys hosted by Amazon SES. Amazon Web Services will eventually detect that--- you have updated your DNS records; this detection process may take up to 72--- hours. Upon successful detection, Amazon SES will be able to DKIM-sign email--- originating from that domain. (This only applies to domain identities, not--- email address identities.)------ For more information about creating DNS records using DKIM tokens, go to the <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim-dns-records.html Amazon SES Developer Guide>.-idaDkimTokens :: Lens' IdentityDkimAttributes [Text]-idaDkimTokens = lens _idaDkimTokens (\s a -> s { _idaDkimTokens = a }) . _List---- | Describes whether Amazon SES has successfully verified the DKIM DNS records--- (tokens) published in the domain name's DNS. (This only applies to domain--- identities, not email address identities.)-idaDkimVerificationStatus :: Lens' IdentityDkimAttributes VerificationStatus-idaDkimVerificationStatus =- lens _idaDkimVerificationStatus- (\s a -> s { _idaDkimVerificationStatus = a })--instance FromXML IdentityDkimAttributes where- parseXML x = IdentityDkimAttributes- <$> x .@ "DkimEnabled"- <*> x .@? "DkimTokens" .!@ mempty- <*> x .@ "DkimVerificationStatus"--instance ToQuery IdentityDkimAttributes where- toQuery IdentityDkimAttributes{..} = mconcat- [ "DkimEnabled" =? _idaDkimEnabled- , "DkimTokens" =? _idaDkimTokens- , "DkimVerificationStatus" =? _idaDkimVerificationStatus- ]--data Body = Body- { _bHtml :: Maybe Content- , _bText :: Maybe Content- } deriving (Eq, Read, Show)---- | 'Body' constructor.------ The fields accessible through corresponding lenses are:------ * 'bHtml' @::@ 'Maybe' 'Content'------ * 'bText' @::@ 'Maybe' 'Content'----body :: Body-body = Body- { _bText = Nothing- , _bHtml = Nothing- }---- | The content of the message, in HTML format. Use this for email clients that--- can process HTML. You can include clickable links, formatted text, and much--- more in an HTML message.-bHtml :: Lens' Body (Maybe Content)-bHtml = lens _bHtml (\s a -> s { _bHtml = a })---- | The content of the message, in text format. Use this for text-based email--- clients, or clients on high-latency networks (such as mobile devices).-bText :: Lens' Body (Maybe Content)-bText = lens _bText (\s a -> s { _bText = a })--instance FromXML Body where- parseXML x = Body- <$> x .@? "Html"- <*> x .@? "Text"--instance ToQuery Body where- toQuery Body{..} = mconcat- [ "Html" =? _bHtml- , "Text" =? _bText- ]--data IdentityVerificationAttributes = IdentityVerificationAttributes- { _ivaVerificationStatus :: VerificationStatus- , _ivaVerificationToken :: Maybe Text- } deriving (Eq, Read, Show)---- | 'IdentityVerificationAttributes' constructor.------ The fields accessible through corresponding lenses are:------ * 'ivaVerificationStatus' @::@ 'VerificationStatus'------ * 'ivaVerificationToken' @::@ 'Maybe' 'Text'----identityVerificationAttributes :: VerificationStatus -- ^ 'ivaVerificationStatus'- -> IdentityVerificationAttributes-identityVerificationAttributes p1 = IdentityVerificationAttributes- { _ivaVerificationStatus = p1- , _ivaVerificationToken = Nothing- }---- | The verification status of the identity: "Pending", "Success", "Failed", or--- "TemporaryFailure".-ivaVerificationStatus :: Lens' IdentityVerificationAttributes VerificationStatus-ivaVerificationStatus =- lens _ivaVerificationStatus (\s a -> s { _ivaVerificationStatus = a })---- | The verification token for a domain identity. Null for email address--- identities.-ivaVerificationToken :: Lens' IdentityVerificationAttributes (Maybe Text)-ivaVerificationToken =- lens _ivaVerificationToken (\s a -> s { _ivaVerificationToken = a })--instance FromXML IdentityVerificationAttributes where- parseXML x = IdentityVerificationAttributes- <$> x .@ "VerificationStatus"- <*> x .@? "VerificationToken"--instance ToQuery IdentityVerificationAttributes where- toQuery IdentityVerificationAttributes{..} = mconcat- [ "VerificationStatus" =? _ivaVerificationStatus- , "VerificationToken" =? _ivaVerificationToken- ]--data SendDataPoint = SendDataPoint- { _sdpBounces :: Maybe Integer- , _sdpComplaints :: Maybe Integer- , _sdpDeliveryAttempts :: Maybe Integer- , _sdpRejects :: Maybe Integer- , _sdpTimestamp :: Maybe ISO8601- } deriving (Eq, Ord, Read, Show)---- | 'SendDataPoint' constructor.------ The fields accessible through corresponding lenses are:------ * 'sdpBounces' @::@ 'Maybe' 'Integer'------ * 'sdpComplaints' @::@ 'Maybe' 'Integer'------ * 'sdpDeliveryAttempts' @::@ 'Maybe' 'Integer'------ * 'sdpRejects' @::@ 'Maybe' 'Integer'------ * 'sdpTimestamp' @::@ 'Maybe' 'UTCTime'----sendDataPoint :: SendDataPoint-sendDataPoint = SendDataPoint- { _sdpTimestamp = Nothing- , _sdpDeliveryAttempts = Nothing- , _sdpBounces = Nothing- , _sdpComplaints = Nothing- , _sdpRejects = Nothing- }---- | Number of emails that have bounced.-sdpBounces :: Lens' SendDataPoint (Maybe Integer)-sdpBounces = lens _sdpBounces (\s a -> s { _sdpBounces = a })---- | Number of unwanted emails that were rejected by recipients.-sdpComplaints :: Lens' SendDataPoint (Maybe Integer)-sdpComplaints = lens _sdpComplaints (\s a -> s { _sdpComplaints = a })---- | Number of emails that have been enqueued for sending.-sdpDeliveryAttempts :: Lens' SendDataPoint (Maybe Integer)-sdpDeliveryAttempts =- lens _sdpDeliveryAttempts (\s a -> s { _sdpDeliveryAttempts = a })---- | Number of emails rejected by Amazon SES.-sdpRejects :: Lens' SendDataPoint (Maybe Integer)-sdpRejects = lens _sdpRejects (\s a -> s { _sdpRejects = a })---- | Time of the data point.-sdpTimestamp :: Lens' SendDataPoint (Maybe UTCTime)-sdpTimestamp = lens _sdpTimestamp (\s a -> s { _sdpTimestamp = a }) . mapping _Time--instance FromXML SendDataPoint where- parseXML x = SendDataPoint- <$> x .@? "Bounces"- <*> x .@? "Complaints"- <*> x .@? "DeliveryAttempts"- <*> x .@? "Rejects"- <*> x .@? "Timestamp"--instance ToQuery SendDataPoint where- toQuery SendDataPoint{..} = mconcat- [ "Bounces" =? _sdpBounces- , "Complaints" =? _sdpComplaints- , "DeliveryAttempts" =? _sdpDeliveryAttempts- , "Rejects" =? _sdpRejects- , "Timestamp" =? _sdpTimestamp- ]--data IdentityType- = ITDomain -- ^ Domain- | ITEmailAddress -- ^ EmailAddress- deriving (Eq, Ord, Read, Show, Generic, Enum)--instance Hashable IdentityType--instance FromText IdentityType where- parser = takeLowerText >>= \case- "domain" -> pure ITDomain- "emailaddress" -> pure ITEmailAddress- e -> fail $- "Failure parsing IdentityType from " ++ show e--instance ToText IdentityType where- toText = \case- ITDomain -> "Domain"- ITEmailAddress -> "EmailAddress"--instance ToByteString IdentityType-instance ToHeader IdentityType-instance ToQuery IdentityType--instance FromXML IdentityType where- parseXML = parseXMLText "IdentityType"--data Content = Content- { _cCharset :: Maybe Text- , _cData :: Text- } deriving (Eq, Ord, Read, Show)---- | 'Content' constructor.------ The fields accessible through corresponding lenses are:------ * 'cCharset' @::@ 'Maybe' 'Text'------ * 'cData' @::@ 'Text'----content :: Text -- ^ 'cData'- -> Content-content p1 = Content- { _cData = p1- , _cCharset = Nothing- }---- | The character set of the content.-cCharset :: Lens' Content (Maybe Text)-cCharset = lens _cCharset (\s a -> s { _cCharset = a })---- | The textual data of the content.-cData :: Lens' Content Text-cData = lens _cData (\s a -> s { _cData = a })--instance FromXML Content where- parseXML x = Content- <$> x .@? "Charset"- <*> x .@ "Data"--instance ToQuery Content where- toQuery Content{..} = mconcat- [ "Charset" =? _cCharset- , "Data" =? _cData- ]--data IdentityNotificationAttributes = IdentityNotificationAttributes- { _inaBounceTopic :: Text- , _inaComplaintTopic :: Text- , _inaDeliveryTopic :: Text- , _inaForwardingEnabled :: Bool- } deriving (Eq, Ord, Read, Show)---- | 'IdentityNotificationAttributes' constructor.------ The fields accessible through corresponding lenses are:------ * 'inaBounceTopic' @::@ 'Text'------ * 'inaComplaintTopic' @::@ 'Text'------ * 'inaDeliveryTopic' @::@ 'Text'------ * 'inaForwardingEnabled' @::@ 'Bool'----identityNotificationAttributes :: Text -- ^ 'inaBounceTopic'- -> Text -- ^ 'inaComplaintTopic'- -> Text -- ^ 'inaDeliveryTopic'- -> Bool -- ^ 'inaForwardingEnabled'- -> IdentityNotificationAttributes-identityNotificationAttributes p1 p2 p3 p4 = IdentityNotificationAttributes- { _inaBounceTopic = p1- , _inaComplaintTopic = p2- , _inaDeliveryTopic = p3- , _inaForwardingEnabled = p4- }---- | The Amazon Resource Name (ARN) of the Amazon SNS topic where Amazon SES will--- publish bounce notifications.-inaBounceTopic :: Lens' IdentityNotificationAttributes Text-inaBounceTopic = lens _inaBounceTopic (\s a -> s { _inaBounceTopic = a })---- | The Amazon Resource Name (ARN) of the Amazon SNS topic where Amazon SES will--- publish complaint notifications.-inaComplaintTopic :: Lens' IdentityNotificationAttributes Text-inaComplaintTopic =- lens _inaComplaintTopic (\s a -> s { _inaComplaintTopic = a })---- | The Amazon Resource Name (ARN) of the Amazon SNS topic where Amazon SES will--- publish delivery notifications.-inaDeliveryTopic :: Lens' IdentityNotificationAttributes Text-inaDeliveryTopic = lens _inaDeliveryTopic (\s a -> s { _inaDeliveryTopic = a })---- | Describes whether Amazon SES will forward bounce and complaint notifications--- as email. 'true' indicates that Amazon SES will forward bounce and complaint--- notifications as email, while 'false' indicates that bounce and complaint--- notifications will be published only to the specified bounce and complaint--- Amazon SNS topics.-inaForwardingEnabled :: Lens' IdentityNotificationAttributes Bool-inaForwardingEnabled =- lens _inaForwardingEnabled (\s a -> s { _inaForwardingEnabled = a })--instance FromXML IdentityNotificationAttributes where- parseXML x = IdentityNotificationAttributes- <$> x .@ "BounceTopic"- <*> x .@ "ComplaintTopic"- <*> x .@ "DeliveryTopic"- <*> x .@ "ForwardingEnabled"--instance ToQuery IdentityNotificationAttributes where- toQuery IdentityNotificationAttributes{..} = mconcat- [ "BounceTopic" =? _inaBounceTopic- , "ComplaintTopic" =? _inaComplaintTopic- , "DeliveryTopic" =? _inaDeliveryTopic- , "ForwardingEnabled" =? _inaForwardingEnabled- ]--newtype RawMessage = RawMessage- { _rmData :: Base64- } deriving (Eq, Read, Show)---- | 'RawMessage' constructor.------ The fields accessible through corresponding lenses are:------ * 'rmData' @::@ 'Base64'----rawMessage :: Base64 -- ^ 'rmData'- -> RawMessage-rawMessage p1 = RawMessage- { _rmData = p1- }---- | The raw data of the message. The client must ensure that the message format--- complies with Internet email standards regarding email header fields, MIME--- types, MIME encoding, and base64 encoding (if necessary).------ The To:, CC:, and BCC: headers in the raw message can contain a group list.------ For more information, go to the <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-raw.html Amazon SES Developer Guide>.-rmData :: Lens' RawMessage Base64-rmData = lens _rmData (\s a -> s { _rmData = a })--instance FromXML RawMessage where- parseXML x = RawMessage- <$> x .@ "Data"--instance ToQuery RawMessage where- toQuery RawMessage{..} = mconcat- [ "Data" =? _rmData- ]--data NotificationType- = Bounce -- ^ Bounce- | Complaint -- ^ Complaint- | Delivery -- ^ Delivery- deriving (Eq, Ord, Read, Show, Generic, Enum)--instance Hashable NotificationType--instance FromText NotificationType where- parser = takeLowerText >>= \case- "bounce" -> pure Bounce- "complaint" -> pure Complaint- "delivery" -> pure Delivery- e -> fail $- "Failure parsing NotificationType from " ++ show e--instance ToText NotificationType where- toText = \case- Bounce -> "Bounce"- Complaint -> "Complaint"- Delivery -> "Delivery"--instance ToByteString NotificationType-instance ToHeader NotificationType-instance ToQuery NotificationType--instance FromXML NotificationType where- parseXML = parseXMLText "NotificationType"--data VerificationStatus- = Failed -- ^ Failed- | NotStarted -- ^ NotStarted- | Pending -- ^ Pending- | Success -- ^ Success- | TemporaryFailure -- ^ TemporaryFailure- deriving (Eq, Ord, Read, Show, Generic, Enum)--instance Hashable VerificationStatus--instance FromText VerificationStatus where- parser = takeLowerText >>= \case- "failed" -> pure Failed- "notstarted" -> pure NotStarted- "pending" -> pure Pending- "success" -> pure Success- "temporaryfailure" -> pure TemporaryFailure- e -> fail $- "Failure parsing VerificationStatus from " ++ show e--instance ToText VerificationStatus where- toText = \case- Failed -> "Failed"- NotStarted -> "NotStarted"- Pending -> "Pending"- Success -> "Success"- TemporaryFailure -> "TemporaryFailure"--instance ToByteString VerificationStatus-instance ToHeader VerificationStatus-instance ToQuery VerificationStatus--instance FromXML VerificationStatus where- parseXML = parseXMLText "VerificationStatus"--data Message = Message- { _mBody :: Body- , _mSubject :: Content- } deriving (Eq, Read, Show)---- | 'Message' constructor.------ The fields accessible through corresponding lenses are:------ * 'mBody' @::@ 'Body'------ * 'mSubject' @::@ 'Content'----message :: Content -- ^ 'mSubject'- -> Body -- ^ 'mBody'- -> Message-message p1 p2 = Message- { _mSubject = p1- , _mBody = p2- }---- | The message body.-mBody :: Lens' Message Body-mBody = lens _mBody (\s a -> s { _mBody = a })---- | The subject of the message: A short summary of the content, which will appear--- in the recipient's inbox.-mSubject :: Lens' Message Content-mSubject = lens _mSubject (\s a -> s { _mSubject = a })+ check e+ | has (hasCode "ThrottlingException" . hasStatus 400) e =+ Just "throttling_exception"+ | has (hasCode "Throttling" . hasStatus 400) e = Just "throttling"+ | has (hasStatus 503) e = Just "service_unavailable"+ | has (hasStatus 500) e = Just "general_server_error"+ | has (hasStatus 509) e = Just "limit_exceeded"+ | otherwise = Nothing -instance FromXML Message where- parseXML x = Message- <$> x .@ "Body"- <*> x .@ "Subject"+-- | Indicates that the action failed, and the message could not be sent.+-- Check the error stack for more information about what caused the error.+_MessageRejected :: AsError a => Getting (First ServiceError) a ServiceError+_MessageRejected = _ServiceError . hasStatus 400 . hasCode "MessageRejected" -instance ToQuery Message where- toQuery Message{..} = mconcat- [ "Body" =? _mBody- , "Subject" =? _mSubject- ]+-- | Indicates that the provided policy is invalid. Check the error stack for+-- more information about what caused the error.+_InvalidPolicyException :: AsError a => Getting (First ServiceError) a ServiceError+_InvalidPolicyException =+ _ServiceError . hasStatus 400 . hasCode "InvalidPolicy"
+ gen/Network/AWS/SES/Types/Product.hs view
@@ -0,0 +1,475 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.SES.Types.Product+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Network.AWS.SES.Types.Product where++import Network.AWS.Prelude+import Network.AWS.SES.Types.Sum++-- | Represents the body of the message. You can specify text, HTML, or both.+-- If you use both, then the message should display correctly in the widest+-- variety of email clients.+--+-- /See:/ 'body' smart constructor.+data Body = Body'+ { _bText :: !(Maybe Content)+ , _bHTML :: !(Maybe Content)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Body' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'bText'+--+-- * 'bHTML'+body+ :: Body+body =+ Body'+ { _bText = Nothing+ , _bHTML = Nothing+ }++-- | The content of the message, in text format. Use this for text-based+-- email clients, or clients on high-latency networks (such as mobile+-- devices).+bText :: Lens' Body (Maybe Content)+bText = lens _bText (\ s a -> s{_bText = a});++-- | The content of the message, in HTML format. Use this for email clients+-- that can process HTML. You can include clickable links, formatted text,+-- and much more in an HTML message.+bHTML :: Lens' Body (Maybe Content)+bHTML = lens _bHTML (\ s a -> s{_bHTML = a});++instance ToQuery Body where+ toQuery Body'{..}+ = mconcat ["Text" =: _bText, "Html" =: _bHTML]++-- | Represents textual data, plus an optional character set specification.+--+-- By default, the text must be 7-bit ASCII, due to the constraints of the+-- SMTP protocol. If the text must contain any other characters, then you+-- must also specify a character set. Examples include UTF-8, ISO-8859-1,+-- and Shift_JIS.+--+-- /See:/ 'content' smart constructor.+data Content = Content'+ { _cCharset :: !(Maybe Text)+ , _cData :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Content' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cCharset'+--+-- * 'cData'+content+ :: Text -- ^ 'cData'+ -> Content+content pData_ =+ Content'+ { _cCharset = Nothing+ , _cData = pData_+ }++-- | The character set of the content.+cCharset :: Lens' Content (Maybe Text)+cCharset = lens _cCharset (\ s a -> s{_cCharset = a});++-- | The textual data of the content.+cData :: Lens' Content Text+cData = lens _cData (\ s a -> s{_cData = a});++instance ToQuery Content where+ toQuery Content'{..}+ = mconcat ["Charset" =: _cCharset, "Data" =: _cData]++-- | Represents the destination of the message, consisting of To:, CC:, and+-- BCC: fields.+--+-- By default, the string must be 7-bit ASCII. If the text must contain any+-- other characters, then you must use MIME encoded-word syntax (RFC 2047)+-- instead of a literal string. MIME encoded-word syntax uses the following+-- form: '=?charset?encoding?encoded-text?='. For more information, see+-- <http://tools.ietf.org/html/rfc2047 RFC 2047>.+--+-- /See:/ 'destination' smart constructor.+data Destination = Destination'+ { _dBCCAddresses :: !(Maybe [Text])+ , _dCCAddresses :: !(Maybe [Text])+ , _dToAddresses :: !(Maybe [Text])+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Destination' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dBCCAddresses'+--+-- * 'dCCAddresses'+--+-- * 'dToAddresses'+destination+ :: Destination+destination =+ Destination'+ { _dBCCAddresses = Nothing+ , _dCCAddresses = Nothing+ , _dToAddresses = Nothing+ }++-- | The BCC: field(s) of the message.+dBCCAddresses :: Lens' Destination [Text]+dBCCAddresses = lens _dBCCAddresses (\ s a -> s{_dBCCAddresses = a}) . _Default . _Coerce;++-- | The CC: field(s) of the message.+dCCAddresses :: Lens' Destination [Text]+dCCAddresses = lens _dCCAddresses (\ s a -> s{_dCCAddresses = a}) . _Default . _Coerce;++-- | The To: field(s) of the message.+dToAddresses :: Lens' Destination [Text]+dToAddresses = lens _dToAddresses (\ s a -> s{_dToAddresses = a}) . _Default . _Coerce;++instance ToQuery Destination where+ toQuery Destination'{..}+ = mconcat+ ["BccAddresses" =:+ toQuery (toQueryList "member" <$> _dBCCAddresses),+ "CcAddresses" =:+ toQuery (toQueryList "member" <$> _dCCAddresses),+ "ToAddresses" =:+ toQuery (toQueryList "member" <$> _dToAddresses)]++-- | Represents the DKIM attributes of a verified email address or a domain.+--+-- /See:/ 'identityDkimAttributes' smart constructor.+data IdentityDkimAttributes = IdentityDkimAttributes'+ { _idaDkimTokens :: !(Maybe [Text])+ , _idaDkimEnabled :: !Bool+ , _idaDkimVerificationStatus :: !VerificationStatus+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'IdentityDkimAttributes' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'idaDkimTokens'+--+-- * 'idaDkimEnabled'+--+-- * 'idaDkimVerificationStatus'+identityDkimAttributes+ :: Bool -- ^ 'idaDkimEnabled'+ -> VerificationStatus -- ^ 'idaDkimVerificationStatus'+ -> IdentityDkimAttributes+identityDkimAttributes pDkimEnabled_ pDkimVerificationStatus_ =+ IdentityDkimAttributes'+ { _idaDkimTokens = Nothing+ , _idaDkimEnabled = pDkimEnabled_+ , _idaDkimVerificationStatus = pDkimVerificationStatus_+ }++-- | A set of character strings that represent the domain\'s identity. Using+-- these tokens, you will need to create DNS CNAME records that point to+-- DKIM public keys hosted by Amazon SES. Amazon Web Services will+-- eventually detect that you have updated your DNS records; this detection+-- process may take up to 72 hours. Upon successful detection, Amazon SES+-- will be able to DKIM-sign email originating from that domain. (This only+-- applies to domain identities, not email address identities.)+--+-- For more information about creating DNS records using DKIM tokens, go to+-- the+-- <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim-dns-records.html Amazon SES Developer Guide>.+idaDkimTokens :: Lens' IdentityDkimAttributes [Text]+idaDkimTokens = lens _idaDkimTokens (\ s a -> s{_idaDkimTokens = a}) . _Default . _Coerce;++-- | True if DKIM signing is enabled for email sent from the identity; false+-- otherwise.+idaDkimEnabled :: Lens' IdentityDkimAttributes Bool+idaDkimEnabled = lens _idaDkimEnabled (\ s a -> s{_idaDkimEnabled = a});++-- | Describes whether Amazon SES has successfully verified the DKIM DNS+-- records (tokens) published in the domain name\'s DNS. (This only applies+-- to domain identities, not email address identities.)+idaDkimVerificationStatus :: Lens' IdentityDkimAttributes VerificationStatus+idaDkimVerificationStatus = lens _idaDkimVerificationStatus (\ s a -> s{_idaDkimVerificationStatus = a});++instance FromXML IdentityDkimAttributes where+ parseXML x+ = IdentityDkimAttributes' <$>+ (x .@? "DkimTokens" .!@ mempty >>=+ may (parseXMLList "member"))+ <*> (x .@ "DkimEnabled")+ <*> (x .@ "DkimVerificationStatus")++-- | Represents the notification attributes of an identity, including whether+-- an identity has Amazon Simple Notification Service (Amazon SNS) topics+-- set for bounce, complaint, and\/or delivery notifications, and whether+-- feedback forwarding is enabled for bounce and complaint notifications.+--+-- /See:/ 'identityNotificationAttributes' smart constructor.+data IdentityNotificationAttributes = IdentityNotificationAttributes'+ { _inaBounceTopic :: !Text+ , _inaComplaintTopic :: !Text+ , _inaDeliveryTopic :: !Text+ , _inaForwardingEnabled :: !Bool+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'IdentityNotificationAttributes' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'inaBounceTopic'+--+-- * 'inaComplaintTopic'+--+-- * 'inaDeliveryTopic'+--+-- * 'inaForwardingEnabled'+identityNotificationAttributes+ :: Text -- ^ 'inaBounceTopic'+ -> Text -- ^ 'inaComplaintTopic'+ -> Text -- ^ 'inaDeliveryTopic'+ -> Bool -- ^ 'inaForwardingEnabled'+ -> IdentityNotificationAttributes+identityNotificationAttributes pBounceTopic_ pComplaintTopic_ pDeliveryTopic_ pForwardingEnabled_ =+ IdentityNotificationAttributes'+ { _inaBounceTopic = pBounceTopic_+ , _inaComplaintTopic = pComplaintTopic_+ , _inaDeliveryTopic = pDeliveryTopic_+ , _inaForwardingEnabled = pForwardingEnabled_+ }++-- | The Amazon Resource Name (ARN) of the Amazon SNS topic where Amazon SES+-- will publish bounce notifications.+inaBounceTopic :: Lens' IdentityNotificationAttributes Text+inaBounceTopic = lens _inaBounceTopic (\ s a -> s{_inaBounceTopic = a});++-- | The Amazon Resource Name (ARN) of the Amazon SNS topic where Amazon SES+-- will publish complaint notifications.+inaComplaintTopic :: Lens' IdentityNotificationAttributes Text+inaComplaintTopic = lens _inaComplaintTopic (\ s a -> s{_inaComplaintTopic = a});++-- | The Amazon Resource Name (ARN) of the Amazon SNS topic where Amazon SES+-- will publish delivery notifications.+inaDeliveryTopic :: Lens' IdentityNotificationAttributes Text+inaDeliveryTopic = lens _inaDeliveryTopic (\ s a -> s{_inaDeliveryTopic = a});++-- | Describes whether Amazon SES will forward bounce and complaint+-- notifications as email. 'true' indicates that Amazon SES will forward+-- bounce and complaint notifications as email, while 'false' indicates+-- that bounce and complaint notifications will be published only to the+-- specified bounce and complaint Amazon SNS topics.+inaForwardingEnabled :: Lens' IdentityNotificationAttributes Bool+inaForwardingEnabled = lens _inaForwardingEnabled (\ s a -> s{_inaForwardingEnabled = a});++instance FromXML IdentityNotificationAttributes where+ parseXML x+ = IdentityNotificationAttributes' <$>+ (x .@ "BounceTopic") <*> (x .@ "ComplaintTopic") <*>+ (x .@ "DeliveryTopic")+ <*> (x .@ "ForwardingEnabled")++-- | Represents the verification attributes of a single identity.+--+-- /See:/ 'identityVerificationAttributes' smart constructor.+data IdentityVerificationAttributes = IdentityVerificationAttributes'+ { _ivaVerificationToken :: !(Maybe Text)+ , _ivaVerificationStatus :: !VerificationStatus+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'IdentityVerificationAttributes' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ivaVerificationToken'+--+-- * 'ivaVerificationStatus'+identityVerificationAttributes+ :: VerificationStatus -- ^ 'ivaVerificationStatus'+ -> IdentityVerificationAttributes+identityVerificationAttributes pVerificationStatus_ =+ IdentityVerificationAttributes'+ { _ivaVerificationToken = Nothing+ , _ivaVerificationStatus = pVerificationStatus_+ }++-- | The verification token for a domain identity. Null for email address+-- identities.+ivaVerificationToken :: Lens' IdentityVerificationAttributes (Maybe Text)+ivaVerificationToken = lens _ivaVerificationToken (\ s a -> s{_ivaVerificationToken = a});++-- | The verification status of the identity: \"Pending\", \"Success\",+-- \"Failed\", or \"TemporaryFailure\".+ivaVerificationStatus :: Lens' IdentityVerificationAttributes VerificationStatus+ivaVerificationStatus = lens _ivaVerificationStatus (\ s a -> s{_ivaVerificationStatus = a});++instance FromXML IdentityVerificationAttributes where+ parseXML x+ = IdentityVerificationAttributes' <$>+ (x .@? "VerificationToken") <*>+ (x .@ "VerificationStatus")++-- | Represents the message to be sent, composed of a subject and a body.+--+-- /See:/ 'message' smart constructor.+data Message = Message'+ { _mSubject :: !Content+ , _mBody :: !Body+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'Message' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mSubject'+--+-- * 'mBody'+message+ :: Content -- ^ 'mSubject'+ -> Body -- ^ 'mBody'+ -> Message+message pSubject_ pBody_ =+ Message'+ { _mSubject = pSubject_+ , _mBody = pBody_+ }++-- | The subject of the message: A short summary of the content, which will+-- appear in the recipient\'s inbox.+mSubject :: Lens' Message Content+mSubject = lens _mSubject (\ s a -> s{_mSubject = a});++-- | The message body.+mBody :: Lens' Message Body+mBody = lens _mBody (\ s a -> s{_mBody = a});++instance ToQuery Message where+ toQuery Message'{..}+ = mconcat ["Subject" =: _mSubject, "Body" =: _mBody]++-- | Represents the raw data of the message.+--+-- /See:/ 'rawMessage' smart constructor.+newtype RawMessage = RawMessage'+ { _rmData :: Base64+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'RawMessage' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rmData'+rawMessage+ :: ByteString -- ^ 'rmData'+ -> RawMessage+rawMessage pData_ =+ RawMessage'+ { _rmData = _Base64 # pData_+ }++-- | The raw data of the message. The client must ensure that the message+-- format complies with Internet email standards regarding email header+-- fields, MIME types, MIME encoding, and base64 encoding (if necessary).+--+-- The To:, CC:, and BCC: headers in the raw message can contain a group+-- list.+--+-- If you are using 'SendRawEmail' with sending authorization, you can+-- include X-headers in the raw message to specify the \"Source,\"+-- \"From,\" and \"Return-Path\" addresses. For more information, see the+-- documentation for 'SendRawEmail'.+--+-- Do not include these X-headers in the DKIM signature, because they are+-- removed by Amazon SES before sending the email.+--+-- For more information, go to the+-- <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-raw.html Amazon SES Developer Guide>.+rmData :: Lens' RawMessage ByteString+rmData = lens _rmData (\ s a -> s{_rmData = a}) . _Base64;++instance ToQuery RawMessage where+ toQuery RawMessage'{..} = mconcat ["Data" =: _rmData]++-- | Represents sending statistics data. Each 'SendDataPoint' contains+-- statistics for a 15-minute period of sending activity.+--+-- /See:/ 'sendDataPoint' smart constructor.+data SendDataPoint = SendDataPoint'+ { _sdpRejects :: !(Maybe Integer)+ , _sdpComplaints :: !(Maybe Integer)+ , _sdpDeliveryAttempts :: !(Maybe Integer)+ , _sdpBounces :: !(Maybe Integer)+ , _sdpTimestamp :: !(Maybe ISO8601)+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'SendDataPoint' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sdpRejects'+--+-- * 'sdpComplaints'+--+-- * 'sdpDeliveryAttempts'+--+-- * 'sdpBounces'+--+-- * 'sdpTimestamp'+sendDataPoint+ :: SendDataPoint+sendDataPoint =+ SendDataPoint'+ { _sdpRejects = Nothing+ , _sdpComplaints = Nothing+ , _sdpDeliveryAttempts = Nothing+ , _sdpBounces = Nothing+ , _sdpTimestamp = Nothing+ }++-- | Number of emails rejected by Amazon SES.+sdpRejects :: Lens' SendDataPoint (Maybe Integer)+sdpRejects = lens _sdpRejects (\ s a -> s{_sdpRejects = a});++-- | Number of unwanted emails that were rejected by recipients.+sdpComplaints :: Lens' SendDataPoint (Maybe Integer)+sdpComplaints = lens _sdpComplaints (\ s a -> s{_sdpComplaints = a});++-- | Number of emails that have been enqueued for sending.+sdpDeliveryAttempts :: Lens' SendDataPoint (Maybe Integer)+sdpDeliveryAttempts = lens _sdpDeliveryAttempts (\ s a -> s{_sdpDeliveryAttempts = a});++-- | Number of emails that have bounced.+sdpBounces :: Lens' SendDataPoint (Maybe Integer)+sdpBounces = lens _sdpBounces (\ s a -> s{_sdpBounces = a});++-- | Time of the data point.+sdpTimestamp :: Lens' SendDataPoint (Maybe UTCTime)+sdpTimestamp = lens _sdpTimestamp (\ s a -> s{_sdpTimestamp = a}) . mapping _Time;++instance FromXML SendDataPoint where+ parseXML x+ = SendDataPoint' <$>+ (x .@? "Rejects") <*> (x .@? "Complaints") <*>+ (x .@? "DeliveryAttempts")+ <*> (x .@? "Bounces")+ <*> (x .@? "Timestamp")
+ gen/Network/AWS/SES/Types/Sum.hs view
@@ -0,0 +1,101 @@+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE LambdaCase #-}+{-# LANGUAGE OverloadedStrings #-}++{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Network.AWS.SES.Types.Sum+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Network.AWS.SES.Types.Sum where++import Network.AWS.Prelude++data IdentityType+ = Domain+ | EmailAddress+ deriving (Eq,Ord,Read,Show,Enum,Data,Typeable,Generic)++instance FromText IdentityType where+ parser = takeLowerText >>= \case+ "domain" -> pure Domain+ "emailaddress" -> pure EmailAddress+ e -> fromTextError $ "Failure parsing IdentityType from value: '" <> e+ <> "'. Accepted values: domain, emailaddress"++instance ToText IdentityType where+ toText = \case+ Domain -> "domain"+ EmailAddress -> "emailaddress"++instance Hashable IdentityType+instance ToByteString IdentityType+instance ToQuery IdentityType+instance ToHeader IdentityType++data NotificationType+ = Bounce+ | Complaint+ | Delivery+ deriving (Eq,Ord,Read,Show,Enum,Data,Typeable,Generic)++instance FromText NotificationType where+ parser = takeLowerText >>= \case+ "bounce" -> pure Bounce+ "complaint" -> pure Complaint+ "delivery" -> pure Delivery+ e -> fromTextError $ "Failure parsing NotificationType from value: '" <> e+ <> "'. Accepted values: bounce, complaint, delivery"++instance ToText NotificationType where+ toText = \case+ Bounce -> "bounce"+ Complaint -> "complaint"+ Delivery -> "delivery"++instance Hashable NotificationType+instance ToByteString NotificationType+instance ToQuery NotificationType+instance ToHeader NotificationType++data VerificationStatus+ = Failed+ | NotStarted+ | Pending+ | Success+ | TemporaryFailure+ deriving (Eq,Ord,Read,Show,Enum,Data,Typeable,Generic)++instance FromText VerificationStatus where+ parser = takeLowerText >>= \case+ "failed" -> pure Failed+ "notstarted" -> pure NotStarted+ "pending" -> pure Pending+ "success" -> pure Success+ "temporaryfailure" -> pure TemporaryFailure+ e -> fromTextError $ "Failure parsing VerificationStatus from value: '" <> e+ <> "'. Accepted values: failed, notstarted, pending, success, temporaryfailure"++instance ToText VerificationStatus where+ toText = \case+ Failed -> "failed"+ NotStarted -> "notstarted"+ Pending -> "pending"+ Success -> "success"+ TemporaryFailure -> "temporaryfailure"++instance Hashable VerificationStatus+instance ToByteString VerificationStatus+instance ToQuery VerificationStatus+instance ToHeader VerificationStatus++instance FromXML VerificationStatus where+ parseXML = parseXMLText "VerificationStatus"
gen/Network/AWS/SES/VerifyDomainDkim.hs view
@@ -1,135 +1,154 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# 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.VerifyDomainDkim--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- 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/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Returns a set of DKIM tokens for a domain. DKIM /tokens/ are character strings--- that represent your domain's identity. Using these tokens, you will need to--- create DNS CNAME records that point to DKIM public keys hosted by Amazon SES.--- Amazon Web Services will eventually detect that you have updated your DNS--- records; this detection process may take up to 72 hours. Upon successful--- detection, Amazon SES will be able to DKIM-sign email originating from that--- domain.+-- Returns a set of DKIM tokens for a domain. DKIM /tokens/ are character+-- strings that represent your domain\'s identity. Using these tokens, you+-- will need to create DNS CNAME records that point to DKIM public keys+-- hosted by Amazon SES. Amazon Web Services will eventually detect that+-- you have updated your DNS records; this detection process may take up to+-- 72 hours. Upon successful detection, Amazon SES will be able to+-- DKIM-sign email originating from that domain. -- -- This action is throttled at one request per second. ----- To enable or disable Easy DKIM signing for a domain, use the 'SetIdentityDkimEnabled' action.+-- To enable or disable Easy DKIM signing for a domain, use the+-- 'SetIdentityDkimEnabled' action. ----- For more information about creating DNS records using DKIM tokens, go to the <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim-dns-records.html Amazon SES Developer Guide>.+-- For more information about creating DNS records using DKIM tokens, go to+-- the+-- <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim-dns-records.html Amazon SES Developer Guide>. ----- <http://docs.aws.amazon.com/ses/latest/APIReference/API_VerifyDomainDkim.html>+-- /See:/ <http://docs.aws.amazon.com/ses/latest/APIReference/API_VerifyDomainDkim.html AWS API Reference> for VerifyDomainDkim. module Network.AWS.SES.VerifyDomainDkim (- -- * Request- VerifyDomainDkim- -- ** Request constructor- , verifyDomainDkim- -- ** Request lenses+ -- * Creating a Request+ verifyDomainDkim+ , VerifyDomainDkim+ -- * Request Lenses , vddDomain - -- * Response- , VerifyDomainDkimResponse- -- ** Response constructor+ -- * Destructuring the Response , verifyDomainDkimResponse- -- ** Response lenses- , vddrDkimTokens+ , VerifyDomainDkimResponse+ -- * Response Lenses+ , vddrsStatus+ , vddrsDkimTokens ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SES.Types-import qualified GHC.Exts+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SES.Types+import Network.AWS.SES.Types.Product -newtype VerifyDomainDkim = VerifyDomainDkim+-- | Represents a request instructing the service to begin DKIM verification+-- for a domain.+--+-- /See:/ 'verifyDomainDkim' smart constructor.+newtype VerifyDomainDkim = VerifyDomainDkim' { _vddDomain :: Text- } deriving (Eq, Ord, Read, Show, Monoid, IsString)+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'VerifyDomainDkim' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'VerifyDomainDkim' with the minimum fields required to make a request. ----- * 'vddDomain' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ---verifyDomainDkim :: Text -- ^ 'vddDomain'- -> VerifyDomainDkim-verifyDomainDkim p1 = VerifyDomainDkim- { _vddDomain = p1+-- * 'vddDomain'+verifyDomainDkim+ :: Text -- ^ 'vddDomain'+ -> VerifyDomainDkim+verifyDomainDkim pDomain_ =+ VerifyDomainDkim'+ { _vddDomain = pDomain_ } -- | The name of the domain to be verified for Easy DKIM signing. vddDomain :: Lens' VerifyDomainDkim Text-vddDomain = lens _vddDomain (\s a -> s { _vddDomain = a })+vddDomain = lens _vddDomain (\ s a -> s{_vddDomain = a}); -newtype VerifyDomainDkimResponse = VerifyDomainDkimResponse- { _vddrDkimTokens :: List "member" Text- } deriving (Eq, Ord, Read, Show, Monoid, Semigroup)+instance AWSRequest VerifyDomainDkim where+ type Sv VerifyDomainDkim = SES+ type Rs VerifyDomainDkim = VerifyDomainDkimResponse+ request = postQuery+ response+ = receiveXMLWrapper "VerifyDomainDkimResult"+ (\ s h x ->+ VerifyDomainDkimResponse' <$>+ (pure (fromEnum s)) <*>+ (x .@? "DkimTokens" .!@ mempty >>=+ parseXMLList "member")) -instance GHC.Exts.IsList VerifyDomainDkimResponse where- type Item VerifyDomainDkimResponse = Text+instance ToHeaders VerifyDomainDkim where+ toHeaders = const mempty - fromList = VerifyDomainDkimResponse . GHC.Exts.fromList- toList = GHC.Exts.toList . _vddrDkimTokens+instance ToPath VerifyDomainDkim where+ toPath = const "/" --- | 'VerifyDomainDkimResponse' constructor.+instance ToQuery VerifyDomainDkim where+ toQuery VerifyDomainDkim'{..}+ = mconcat+ ["Action" =: ("VerifyDomainDkim" :: ByteString),+ "Version" =: ("2010-12-01" :: ByteString),+ "Domain" =: _vddDomain]++-- | Represents the DNS records that must be published in the domain name\'s+-- DNS to complete DKIM setup. ----- The fields accessible through corresponding lenses are:+-- /See:/ 'verifyDomainDkimResponse' smart constructor.+data VerifyDomainDkimResponse = VerifyDomainDkimResponse'+ { _vddrsStatus :: !Int+ , _vddrsDkimTokens :: ![Text]+ } deriving (Eq,Read,Show,Data,Typeable,Generic)++-- | Creates a value of 'VerifyDomainDkimResponse' with the minimum fields required to make a request. ----- * 'vddrDkimTokens' @::@ ['Text']+-- Use one of the following lenses to modify other fields as desired: ---verifyDomainDkimResponse :: VerifyDomainDkimResponse-verifyDomainDkimResponse = VerifyDomainDkimResponse- { _vddrDkimTokens = mempty+-- * 'vddrsStatus'+--+-- * 'vddrsDkimTokens'+verifyDomainDkimResponse+ :: Int -- ^ 'vddrsStatus'+ -> VerifyDomainDkimResponse+verifyDomainDkimResponse pStatus_ =+ VerifyDomainDkimResponse'+ { _vddrsStatus = pStatus_+ , _vddrsDkimTokens = mempty } --- | A set of character strings that represent the domain's identity. If the--- identity is an email address, the tokens represent the domain of that address.+-- | The response status code.+vddrsStatus :: Lens' VerifyDomainDkimResponse Int+vddrsStatus = lens _vddrsStatus (\ s a -> s{_vddrsStatus = a});++-- | A set of character strings that represent the domain\'s identity. If the+-- identity is an email address, the tokens represent the domain of that+-- address. ----- Using these tokens, you will need to create DNS CNAME records that point to--- DKIM public keys hosted by Amazon SES. Amazon Web Services will eventually--- detect that you have updated your DNS records; this detection process may--- take up to 72 hours. Upon successful detection, Amazon SES will be able to--- DKIM-sign emails originating from that domain.+-- Using these tokens, you will need to create DNS CNAME records that point+-- to DKIM public keys hosted by Amazon SES. Amazon Web Services will+-- eventually detect that you have updated your DNS records; this detection+-- process may take up to 72 hours. Upon successful detection, Amazon SES+-- will be able to DKIM-sign emails originating from that domain. ----- For more information about creating DNS records using DKIM tokens, go to the <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim-dns-records.html Amazon SES Developer Guide>.-vddrDkimTokens :: Lens' VerifyDomainDkimResponse [Text]-vddrDkimTokens = lens _vddrDkimTokens (\s a -> s { _vddrDkimTokens = a }) . _List--instance ToPath VerifyDomainDkim where- toPath = const "/"--instance ToQuery VerifyDomainDkim where- toQuery VerifyDomainDkim{..} = mconcat- [ "Domain" =? _vddDomain- ]--instance ToHeaders VerifyDomainDkim--instance AWSRequest VerifyDomainDkim where- type Sv VerifyDomainDkim = SES- type Rs VerifyDomainDkim = VerifyDomainDkimResponse-- request = post "VerifyDomainDkim"- response = xmlResponse--instance FromXML VerifyDomainDkimResponse where- parseXML = withElement "VerifyDomainDkimResult" $ \x -> VerifyDomainDkimResponse- <$> x .@? "DkimTokens" .!@ mempty+-- For more information about creating DNS records using DKIM tokens, go to+-- the+-- <http://docs.aws.amazon.com/ses/latest/DeveloperGuide/easy-dkim-dns-records.html Amazon SES Developer Guide>.+vddrsDkimTokens :: Lens' VerifyDomainDkimResponse [Text]+vddrsDkimTokens = lens _vddrsDkimTokens (\ s a -> s{_vddrsDkimTokens = a}) . _Coerce;
gen/Network/AWS/SES/VerifyDomainIdentity.hs view
@@ -1,113 +1,129 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# 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.VerifyDomainIdentity--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- 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/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Verifies a domain.+-- Verifies a domain. -- -- This action is throttled at one request per second. ----- <http://docs.aws.amazon.com/ses/latest/APIReference/API_VerifyDomainIdentity.html>+-- /See:/ <http://docs.aws.amazon.com/ses/latest/APIReference/API_VerifyDomainIdentity.html AWS API Reference> for VerifyDomainIdentity. module Network.AWS.SES.VerifyDomainIdentity (- -- * Request- VerifyDomainIdentity- -- ** Request constructor- , verifyDomainIdentity- -- ** Request lenses+ -- * Creating a Request+ verifyDomainIdentity+ , VerifyDomainIdentity+ -- * Request Lenses , vdiDomain - -- * Response- , VerifyDomainIdentityResponse- -- ** Response constructor+ -- * Destructuring the Response , verifyDomainIdentityResponse- -- ** Response lenses- , vdirVerificationToken+ , VerifyDomainIdentityResponse+ -- * Response Lenses+ , vdirsStatus+ , vdirsVerificationToken ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SES.Types-import qualified GHC.Exts+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SES.Types+import Network.AWS.SES.Types.Product -newtype VerifyDomainIdentity = VerifyDomainIdentity+-- | Represents a request instructing the service to begin domain+-- verification.+--+-- /See:/ 'verifyDomainIdentity' smart constructor.+newtype VerifyDomainIdentity = VerifyDomainIdentity' { _vdiDomain :: Text- } deriving (Eq, Ord, Read, Show, Monoid, IsString)+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'VerifyDomainIdentity' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'VerifyDomainIdentity' with the minimum fields required to make a request. ----- * 'vdiDomain' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ---verifyDomainIdentity :: Text -- ^ 'vdiDomain'- -> VerifyDomainIdentity-verifyDomainIdentity p1 = VerifyDomainIdentity- { _vdiDomain = p1+-- * 'vdiDomain'+verifyDomainIdentity+ :: Text -- ^ 'vdiDomain'+ -> VerifyDomainIdentity+verifyDomainIdentity pDomain_ =+ VerifyDomainIdentity'+ { _vdiDomain = pDomain_ } -- | The domain to be verified. vdiDomain :: Lens' VerifyDomainIdentity Text-vdiDomain = lens _vdiDomain (\s a -> s { _vdiDomain = a })--newtype VerifyDomainIdentityResponse = VerifyDomainIdentityResponse- { _vdirVerificationToken :: Text- } deriving (Eq, Ord, Read, Show, Monoid, IsString)+vdiDomain = lens _vdiDomain (\ s a -> s{_vdiDomain = a}); --- | 'VerifyDomainIdentityResponse' constructor.------ The fields accessible through corresponding lenses are:------ * 'vdirVerificationToken' @::@ 'Text'----verifyDomainIdentityResponse :: Text -- ^ 'vdirVerificationToken'- -> VerifyDomainIdentityResponse-verifyDomainIdentityResponse p1 = VerifyDomainIdentityResponse- { _vdirVerificationToken = p1- }+instance AWSRequest VerifyDomainIdentity where+ type Sv VerifyDomainIdentity = SES+ type Rs VerifyDomainIdentity =+ VerifyDomainIdentityResponse+ request = postQuery+ response+ = receiveXMLWrapper "VerifyDomainIdentityResult"+ (\ s h x ->+ VerifyDomainIdentityResponse' <$>+ (pure (fromEnum s)) <*> (x .@ "VerificationToken")) --- | A TXT record that must be placed in the DNS settings for the domain, in order--- to complete domain verification.-vdirVerificationToken :: Lens' VerifyDomainIdentityResponse Text-vdirVerificationToken =- lens _vdirVerificationToken (\s a -> s { _vdirVerificationToken = a })+instance ToHeaders VerifyDomainIdentity where+ toHeaders = const mempty instance ToPath VerifyDomainIdentity where- toPath = const "/"+ toPath = const "/" instance ToQuery VerifyDomainIdentity where- toQuery VerifyDomainIdentity{..} = mconcat- [ "Domain" =? _vdiDomain- ]+ toQuery VerifyDomainIdentity'{..}+ = mconcat+ ["Action" =: ("VerifyDomainIdentity" :: ByteString),+ "Version" =: ("2010-12-01" :: ByteString),+ "Domain" =: _vdiDomain] -instance ToHeaders VerifyDomainIdentity+-- | Represents a token used for domain ownership verification.+--+-- /See:/ 'verifyDomainIdentityResponse' smart constructor.+data VerifyDomainIdentityResponse = VerifyDomainIdentityResponse'+ { _vdirsStatus :: !Int+ , _vdirsVerificationToken :: !Text+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest VerifyDomainIdentity where- type Sv VerifyDomainIdentity = SES- type Rs VerifyDomainIdentity = VerifyDomainIdentityResponse+-- | Creates a value of 'VerifyDomainIdentityResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'vdirsStatus'+--+-- * 'vdirsVerificationToken'+verifyDomainIdentityResponse+ :: Int -- ^ 'vdirsStatus'+ -> Text -- ^ 'vdirsVerificationToken'+ -> VerifyDomainIdentityResponse+verifyDomainIdentityResponse pStatus_ pVerificationToken_ =+ VerifyDomainIdentityResponse'+ { _vdirsStatus = pStatus_+ , _vdirsVerificationToken = pVerificationToken_+ } - request = post "VerifyDomainIdentity"- response = xmlResponse+-- | The response status code.+vdirsStatus :: Lens' VerifyDomainIdentityResponse Int+vdirsStatus = lens _vdirsStatus (\ s a -> s{_vdirsStatus = a}); -instance FromXML VerifyDomainIdentityResponse where- parseXML = withElement "VerifyDomainIdentityResult" $ \x -> VerifyDomainIdentityResponse- <$> x .@ "VerificationToken"+-- | A TXT record that must be placed in the DNS settings for the domain, in+-- order to complete domain verification.+vdirsVerificationToken :: Lens' VerifyDomainIdentityResponse Text+vdirsVerificationToken = lens _vdirsVerificationToken (\ s a -> s{_vdirsVerificationToken = a});
gen/Network/AWS/SES/VerifyEmailAddress.hs view
@@ -1,95 +1,104 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# 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.VerifyEmailAddress--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- 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/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Verifies an email address. This action causes a confirmation email message to--- be sent to the specified address.+-- Verifies an email address. This action causes a confirmation email+-- message to be sent to the specified address. ----- The VerifyEmailAddress action is deprecated as of the May 15, 2012 release--- of Domain Verification. The VerifyEmailIdentity action is now preferred. This--- action is throttled at one request per second.+-- The VerifyEmailAddress action is deprecated as of the May 15, 2012+-- release of Domain Verification. The VerifyEmailIdentity action is now+-- preferred. ----- <http://docs.aws.amazon.com/ses/latest/APIReference/API_VerifyEmailAddress.html>+-- This action is throttled at one request per second.+--+-- /See:/ <http://docs.aws.amazon.com/ses/latest/APIReference/API_VerifyEmailAddress.html AWS API Reference> for VerifyEmailAddress. module Network.AWS.SES.VerifyEmailAddress (- -- * Request- VerifyEmailAddress- -- ** Request constructor- , verifyEmailAddress- -- ** Request lenses+ -- * Creating a Request+ verifyEmailAddress+ , VerifyEmailAddress+ -- * Request Lenses , veaEmailAddress - -- * Response- , VerifyEmailAddressResponse- -- ** Response constructor+ -- * Destructuring the Response , verifyEmailAddressResponse+ , VerifyEmailAddressResponse ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SES.Types-import qualified GHC.Exts+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SES.Types+import Network.AWS.SES.Types.Product -newtype VerifyEmailAddress = VerifyEmailAddress+-- | Represents a request instructing the service to begin email address+-- verification.+--+-- /See:/ 'verifyEmailAddress' smart constructor.+newtype VerifyEmailAddress = VerifyEmailAddress' { _veaEmailAddress :: Text- } deriving (Eq, Ord, Read, Show, Monoid, IsString)+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'VerifyEmailAddress' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'VerifyEmailAddress' with the minimum fields required to make a request. ----- * 'veaEmailAddress' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ---verifyEmailAddress :: Text -- ^ 'veaEmailAddress'- -> VerifyEmailAddress-verifyEmailAddress p1 = VerifyEmailAddress- { _veaEmailAddress = p1+-- * 'veaEmailAddress'+verifyEmailAddress+ :: Text -- ^ 'veaEmailAddress'+ -> VerifyEmailAddress+verifyEmailAddress pEmailAddress_ =+ VerifyEmailAddress'+ { _veaEmailAddress = pEmailAddress_ } -- | The email address to be verified. veaEmailAddress :: Lens' VerifyEmailAddress Text-veaEmailAddress = lens _veaEmailAddress (\s a -> s { _veaEmailAddress = a })+veaEmailAddress = lens _veaEmailAddress (\ s a -> s{_veaEmailAddress = a}); -data VerifyEmailAddressResponse = VerifyEmailAddressResponse- deriving (Eq, Ord, Read, Show, Generic)+instance AWSRequest VerifyEmailAddress where+ type Sv VerifyEmailAddress = SES+ type Rs VerifyEmailAddress =+ VerifyEmailAddressResponse+ request = postQuery+ response = receiveNull VerifyEmailAddressResponse' --- | 'VerifyEmailAddressResponse' constructor.-verifyEmailAddressResponse :: VerifyEmailAddressResponse-verifyEmailAddressResponse = VerifyEmailAddressResponse+instance ToHeaders VerifyEmailAddress where+ toHeaders = const mempty instance ToPath VerifyEmailAddress where- toPath = const "/"+ toPath = const "/" instance ToQuery VerifyEmailAddress where- toQuery VerifyEmailAddress{..} = mconcat- [ "EmailAddress" =? _veaEmailAddress- ]--instance ToHeaders VerifyEmailAddress+ toQuery VerifyEmailAddress'{..}+ = mconcat+ ["Action" =: ("VerifyEmailAddress" :: ByteString),+ "Version" =: ("2010-12-01" :: ByteString),+ "EmailAddress" =: _veaEmailAddress] -instance AWSRequest VerifyEmailAddress where- type Sv VerifyEmailAddress = SES- type Rs VerifyEmailAddress = VerifyEmailAddressResponse+-- | /See:/ 'verifyEmailAddressResponse' smart constructor.+data VerifyEmailAddressResponse =+ VerifyEmailAddressResponse'+ deriving (Eq,Read,Show,Data,Typeable,Generic) - request = post "VerifyEmailAddress"- response = nullResponse VerifyEmailAddressResponse+-- | Creates a value of 'VerifyEmailAddressResponse' with the minimum fields required to make a request.+--+verifyEmailAddressResponse+ :: VerifyEmailAddressResponse+verifyEmailAddressResponse = VerifyEmailAddressResponse'
gen/Network/AWS/SES/VerifyEmailIdentity.hs view
@@ -1,93 +1,119 @@-{-# LANGUAGE DataKinds #-}-{-# LANGUAGE DeriveGeneric #-}-{-# LANGUAGE FlexibleInstances #-}-{-# LANGUAGE GeneralizedNewtypeDeriving #-}-{-# LANGUAGE LambdaCase #-}-{-# LANGUAGE NoImplicitPrelude #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE RecordWildCards #-}-{-# LANGUAGE TypeFamilies #-}+{-# 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.VerifyEmailIdentity--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- 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/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.---- | Verifies an email address. This action causes a confirmation email message to--- be sent to the specified address.+-- Verifies an email address. This action causes a confirmation email+-- message to be sent to the specified address. -- -- This action is throttled at one request per second. ----- <http://docs.aws.amazon.com/ses/latest/APIReference/API_VerifyEmailIdentity.html>+-- /See:/ <http://docs.aws.amazon.com/ses/latest/APIReference/API_VerifyEmailIdentity.html AWS API Reference> for VerifyEmailIdentity. module Network.AWS.SES.VerifyEmailIdentity (- -- * Request- VerifyEmailIdentity- -- ** Request constructor- , verifyEmailIdentity- -- ** Request lenses+ -- * Creating a Request+ verifyEmailIdentity+ , VerifyEmailIdentity+ -- * Request Lenses , veiEmailAddress - -- * Response- , VerifyEmailIdentityResponse- -- ** Response constructor+ -- * Destructuring the Response , verifyEmailIdentityResponse+ , VerifyEmailIdentityResponse+ -- * Response Lenses+ , veirsStatus ) where -import Network.AWS.Prelude-import Network.AWS.Request.Query-import Network.AWS.SES.Types-import qualified GHC.Exts+import Network.AWS.Prelude+import Network.AWS.Request+import Network.AWS.Response+import Network.AWS.SES.Types+import Network.AWS.SES.Types.Product -newtype VerifyEmailIdentity = VerifyEmailIdentity+-- | Represents a request instructing the service to begin email address+-- verification.+--+-- /See:/ 'verifyEmailIdentity' smart constructor.+newtype VerifyEmailIdentity = VerifyEmailIdentity' { _veiEmailAddress :: Text- } deriving (Eq, Ord, Read, Show, Monoid, IsString)+ } deriving (Eq,Read,Show,Data,Typeable,Generic) --- | 'VerifyEmailIdentity' constructor.------ The fields accessible through corresponding lenses are:+-- | Creates a value of 'VerifyEmailIdentity' with the minimum fields required to make a request. ----- * 'veiEmailAddress' @::@ 'Text'+-- Use one of the following lenses to modify other fields as desired: ---verifyEmailIdentity :: Text -- ^ 'veiEmailAddress'- -> VerifyEmailIdentity-verifyEmailIdentity p1 = VerifyEmailIdentity- { _veiEmailAddress = p1+-- * 'veiEmailAddress'+verifyEmailIdentity+ :: Text -- ^ 'veiEmailAddress'+ -> VerifyEmailIdentity+verifyEmailIdentity pEmailAddress_ =+ VerifyEmailIdentity'+ { _veiEmailAddress = pEmailAddress_ } -- | The email address to be verified. veiEmailAddress :: Lens' VerifyEmailIdentity Text-veiEmailAddress = lens _veiEmailAddress (\s a -> s { _veiEmailAddress = a })+veiEmailAddress = lens _veiEmailAddress (\ s a -> s{_veiEmailAddress = a}); -data VerifyEmailIdentityResponse = VerifyEmailIdentityResponse- deriving (Eq, Ord, Read, Show, Generic)+instance AWSRequest VerifyEmailIdentity where+ type Sv VerifyEmailIdentity = SES+ type Rs VerifyEmailIdentity =+ VerifyEmailIdentityResponse+ request = postQuery+ response+ = receiveXMLWrapper "VerifyEmailIdentityResult"+ (\ s h x ->+ VerifyEmailIdentityResponse' <$> (pure (fromEnum s))) --- | 'VerifyEmailIdentityResponse' constructor.-verifyEmailIdentityResponse :: VerifyEmailIdentityResponse-verifyEmailIdentityResponse = VerifyEmailIdentityResponse+instance ToHeaders VerifyEmailIdentity where+ toHeaders = const mempty instance ToPath VerifyEmailIdentity where- toPath = const "/"+ toPath = const "/" instance ToQuery VerifyEmailIdentity where- toQuery VerifyEmailIdentity{..} = mconcat- [ "EmailAddress" =? _veiEmailAddress- ]+ toQuery VerifyEmailIdentity'{..}+ = mconcat+ ["Action" =: ("VerifyEmailIdentity" :: ByteString),+ "Version" =: ("2010-12-01" :: ByteString),+ "EmailAddress" =: _veiEmailAddress] -instance ToHeaders VerifyEmailIdentity+-- | An empty element. Receiving this element indicates that the request+-- completed successfully.+--+-- /See:/ 'verifyEmailIdentityResponse' smart constructor.+newtype VerifyEmailIdentityResponse = VerifyEmailIdentityResponse'+ { _veirsStatus :: Int+ } deriving (Eq,Read,Show,Data,Typeable,Generic) -instance AWSRequest VerifyEmailIdentity where- type Sv VerifyEmailIdentity = SES- type Rs VerifyEmailIdentity = VerifyEmailIdentityResponse+-- | Creates a value of 'VerifyEmailIdentityResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'veirsStatus'+verifyEmailIdentityResponse+ :: Int -- ^ 'veirsStatus'+ -> VerifyEmailIdentityResponse+verifyEmailIdentityResponse pStatus_ =+ VerifyEmailIdentityResponse'+ { _veirsStatus = pStatus_+ } - request = post "VerifyEmailIdentity"- response = nullResponse VerifyEmailIdentityResponse+-- | The response status code.+veirsStatus :: Lens' VerifyEmailIdentityResponse Int+veirsStatus = lens _veirsStatus (\ s a -> s{_veirsStatus = a});
gen/Network/AWS/SES/Waiters.hs view
@@ -1,31 +1,20 @@ {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE TypeFamilies #-} +{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- | -- Module : Network.AWS.SES.Waiters--- Copyright : (c) 2013-2014 Brendan Hay <brendan.g.hay@gmail.com>--- 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/.+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0. -- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>--- Stability : experimental+-- Stability : auto-generated -- Portability : non-portable (GHC extensions) ----- Derived from AWS service descriptions, licensed under Apache 2.0.- module Network.AWS.SES.Waiters where -import Network.AWS.SES.GetIdentityVerificationAttributes-import Network.AWS.SES.Types-import Network.AWS.Waiters--identityExists :: Wait GetIdentityVerificationAttributes-identityExists = Wait- { _waitName = "IdentityExists"- , _waitAttempts = 20- , _waitDelay = 3- , _waitAcceptors =- [ matchAll Success AcceptSuccess- (givarVerificationAttributes . traverse . ivaVerificationStatus)- ]- }+import Network.AWS.Prelude+import Network.AWS.SES.Types+import Network.AWS.Waiter
+ test/Main.hs view
@@ -0,0 +1,21 @@+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Main+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Main (main) where++import Test.Tasty+import Test.AWS.SES+import Test.AWS.SES.Internal++main :: IO ()+main = defaultMain $ testGroup "SES"+ [ testGroup "tests" tests+ , testGroup "fixtures" fixtures+ ]
+ test/Test/AWS/Gen/SES.hs view
@@ -0,0 +1,413 @@+{-# OPTIONS_GHC -fno-warn-unused-imports #-}+{-# OPTIONS_GHC -fno-warn-orphans #-}++-- Derived from AWS service descriptions, licensed under Apache 2.0.++-- |+-- Module : Test.AWS.Gen.SES+-- Copyright : (c) 2013-2015 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+module Test.AWS.Gen.SES where++import Data.Proxy+import Test.AWS.Fixture+import Test.AWS.Prelude+import Test.Tasty+import Network.AWS.SES+import Test.AWS.SES.Internal++-- Auto-generated: the actual test selection needs to be manually placed into+-- the top-level so that real test data can be incrementally added.+--+-- This commented snippet is what the entire set should look like:++-- fixtures :: TestTree+-- fixtures =+-- [ testGroup "request"+-- [ testGetSendQuota $+-- getSendQuota+--+-- , testDeleteIdentityPolicy $+-- deleteIdentityPolicy+--+-- , testPutIdentityPolicy $+-- putIdentityPolicy+--+-- , testSetIdentityDkimEnabled $+-- setIdentityDkimEnabled+--+-- , testGetIdentityNotificationAttributes $+-- getIdentityNotificationAttributes+--+-- , testListIdentityPolicies $+-- listIdentityPolicies+--+-- , testSetIdentityFeedbackForwardingEnabled $+-- setIdentityFeedbackForwardingEnabled+--+-- , testGetIdentityVerificationAttributes $+-- getIdentityVerificationAttributes+--+-- , testGetIdentityPolicies $+-- getIdentityPolicies+--+-- , testVerifyDomainIdentity $+-- verifyDomainIdentity+--+-- , testVerifyDomainDkim $+-- verifyDomainDkim+--+-- , testSendRawEmail $+-- sendRawEmail+--+-- , testGetIdentityDkimAttributes $+-- getIdentityDkimAttributes+--+-- , testDeleteIdentity $+-- deleteIdentity+--+-- , testGetSendStatistics $+-- getSendStatistics+--+-- , testListIdentities $+-- listIdentities+--+-- , testDeleteVerifiedEmailAddress $+-- deleteVerifiedEmailAddress+--+-- , testVerifyEmailAddress $+-- verifyEmailAddress+--+-- , testVerifyEmailIdentity $+-- verifyEmailIdentity+--+-- , testSendEmail $+-- sendEmail+--+-- , testListVerifiedEmailAddresses $+-- listVerifiedEmailAddresses+--+-- , testSetIdentityNotificationTopic $+-- setIdentityNotificationTopic+--+-- ]++-- , testGroup "response"+-- [ testGetSendQuotaResponse $+-- getSendQuotaResponse+--+-- , testDeleteIdentityPolicyResponse $+-- deleteIdentityPolicyResponse+--+-- , testPutIdentityPolicyResponse $+-- putIdentityPolicyResponse+--+-- , testSetIdentityDkimEnabledResponse $+-- setIdentityDkimEnabledResponse+--+-- , testGetIdentityNotificationAttributesResponse $+-- getIdentityNotificationAttributesResponse+--+-- , testListIdentityPoliciesResponse $+-- listIdentityPoliciesResponse+--+-- , testSetIdentityFeedbackForwardingEnabledResponse $+-- setIdentityFeedbackForwardingEnabledResponse+--+-- , testGetIdentityVerificationAttributesResponse $+-- getIdentityVerificationAttributesResponse+--+-- , testGetIdentityPoliciesResponse $+-- getIdentityPoliciesResponse+--+-- , testVerifyDomainIdentityResponse $+-- verifyDomainIdentityResponse+--+-- , testVerifyDomainDkimResponse $+-- verifyDomainDkimResponse+--+-- , testSendRawEmailResponse $+-- sendRawEmailResponse+--+-- , testGetIdentityDkimAttributesResponse $+-- getIdentityDkimAttributesResponse+--+-- , testDeleteIdentityResponse $+-- deleteIdentityResponse+--+-- , testGetSendStatisticsResponse $+-- getSendStatisticsResponse+--+-- , testListIdentitiesResponse $+-- listIdentitiesResponse+--+-- , testDeleteVerifiedEmailAddressResponse $+-- deleteVerifiedEmailAddressResponse+--+-- , testVerifyEmailAddressResponse $+-- verifyEmailAddressResponse+--+-- , testVerifyEmailIdentityResponse $+-- verifyEmailIdentityResponse+--+-- , testSendEmailResponse $+-- sendEmailResponse+--+-- , testListVerifiedEmailAddressesResponse $+-- listVerifiedEmailAddressesResponse+--+-- , testSetIdentityNotificationTopicResponse $+-- setIdentityNotificationTopicResponse+--+-- ]+-- ]++-- Requests++testGetSendQuota :: GetSendQuota -> TestTree+testGetSendQuota = req+ "GetSendQuota"+ "fixture/GetSendQuota"++testDeleteIdentityPolicy :: DeleteIdentityPolicy -> TestTree+testDeleteIdentityPolicy = req+ "DeleteIdentityPolicy"+ "fixture/DeleteIdentityPolicy"++testPutIdentityPolicy :: PutIdentityPolicy -> TestTree+testPutIdentityPolicy = req+ "PutIdentityPolicy"+ "fixture/PutIdentityPolicy"++testSetIdentityDkimEnabled :: SetIdentityDkimEnabled -> TestTree+testSetIdentityDkimEnabled = req+ "SetIdentityDkimEnabled"+ "fixture/SetIdentityDkimEnabled"++testGetIdentityNotificationAttributes :: GetIdentityNotificationAttributes -> TestTree+testGetIdentityNotificationAttributes = req+ "GetIdentityNotificationAttributes"+ "fixture/GetIdentityNotificationAttributes"++testListIdentityPolicies :: ListIdentityPolicies -> TestTree+testListIdentityPolicies = req+ "ListIdentityPolicies"+ "fixture/ListIdentityPolicies"++testSetIdentityFeedbackForwardingEnabled :: SetIdentityFeedbackForwardingEnabled -> TestTree+testSetIdentityFeedbackForwardingEnabled = req+ "SetIdentityFeedbackForwardingEnabled"+ "fixture/SetIdentityFeedbackForwardingEnabled"++testGetIdentityVerificationAttributes :: GetIdentityVerificationAttributes -> TestTree+testGetIdentityVerificationAttributes = req+ "GetIdentityVerificationAttributes"+ "fixture/GetIdentityVerificationAttributes"++testGetIdentityPolicies :: GetIdentityPolicies -> TestTree+testGetIdentityPolicies = req+ "GetIdentityPolicies"+ "fixture/GetIdentityPolicies"++testVerifyDomainIdentity :: VerifyDomainIdentity -> TestTree+testVerifyDomainIdentity = req+ "VerifyDomainIdentity"+ "fixture/VerifyDomainIdentity"++testVerifyDomainDkim :: VerifyDomainDkim -> TestTree+testVerifyDomainDkim = req+ "VerifyDomainDkim"+ "fixture/VerifyDomainDkim"++testSendRawEmail :: SendRawEmail -> TestTree+testSendRawEmail = req+ "SendRawEmail"+ "fixture/SendRawEmail"++testGetIdentityDkimAttributes :: GetIdentityDkimAttributes -> TestTree+testGetIdentityDkimAttributes = req+ "GetIdentityDkimAttributes"+ "fixture/GetIdentityDkimAttributes"++testDeleteIdentity :: DeleteIdentity -> TestTree+testDeleteIdentity = req+ "DeleteIdentity"+ "fixture/DeleteIdentity"++testGetSendStatistics :: GetSendStatistics -> TestTree+testGetSendStatistics = req+ "GetSendStatistics"+ "fixture/GetSendStatistics"++testListIdentities :: ListIdentities -> TestTree+testListIdentities = req+ "ListIdentities"+ "fixture/ListIdentities"++testDeleteVerifiedEmailAddress :: DeleteVerifiedEmailAddress -> TestTree+testDeleteVerifiedEmailAddress = req+ "DeleteVerifiedEmailAddress"+ "fixture/DeleteVerifiedEmailAddress"++testVerifyEmailAddress :: VerifyEmailAddress -> TestTree+testVerifyEmailAddress = req+ "VerifyEmailAddress"+ "fixture/VerifyEmailAddress"++testVerifyEmailIdentity :: VerifyEmailIdentity -> TestTree+testVerifyEmailIdentity = req+ "VerifyEmailIdentity"+ "fixture/VerifyEmailIdentity"++testSendEmail :: SendEmail -> TestTree+testSendEmail = req+ "SendEmail"+ "fixture/SendEmail"++testListVerifiedEmailAddresses :: ListVerifiedEmailAddresses -> TestTree+testListVerifiedEmailAddresses = req+ "ListVerifiedEmailAddresses"+ "fixture/ListVerifiedEmailAddresses"++testSetIdentityNotificationTopic :: SetIdentityNotificationTopic -> TestTree+testSetIdentityNotificationTopic = req+ "SetIdentityNotificationTopic"+ "fixture/SetIdentityNotificationTopic"++-- Responses++testGetSendQuotaResponse :: GetSendQuotaResponse -> TestTree+testGetSendQuotaResponse = res+ "GetSendQuotaResponse"+ "fixture/GetSendQuotaResponse"+ (Proxy :: Proxy GetSendQuota)++testDeleteIdentityPolicyResponse :: DeleteIdentityPolicyResponse -> TestTree+testDeleteIdentityPolicyResponse = res+ "DeleteIdentityPolicyResponse"+ "fixture/DeleteIdentityPolicyResponse"+ (Proxy :: Proxy DeleteIdentityPolicy)++testPutIdentityPolicyResponse :: PutIdentityPolicyResponse -> TestTree+testPutIdentityPolicyResponse = res+ "PutIdentityPolicyResponse"+ "fixture/PutIdentityPolicyResponse"+ (Proxy :: Proxy PutIdentityPolicy)++testSetIdentityDkimEnabledResponse :: SetIdentityDkimEnabledResponse -> TestTree+testSetIdentityDkimEnabledResponse = res+ "SetIdentityDkimEnabledResponse"+ "fixture/SetIdentityDkimEnabledResponse"+ (Proxy :: Proxy SetIdentityDkimEnabled)++testGetIdentityNotificationAttributesResponse :: GetIdentityNotificationAttributesResponse -> TestTree+testGetIdentityNotificationAttributesResponse = res+ "GetIdentityNotificationAttributesResponse"+ "fixture/GetIdentityNotificationAttributesResponse"+ (Proxy :: Proxy GetIdentityNotificationAttributes)++testListIdentityPoliciesResponse :: ListIdentityPoliciesResponse -> TestTree+testListIdentityPoliciesResponse = res+ "ListIdentityPoliciesResponse"+ "fixture/ListIdentityPoliciesResponse"+ (Proxy :: Proxy ListIdentityPolicies)++testSetIdentityFeedbackForwardingEnabledResponse :: SetIdentityFeedbackForwardingEnabledResponse -> TestTree+testSetIdentityFeedbackForwardingEnabledResponse = res+ "SetIdentityFeedbackForwardingEnabledResponse"+ "fixture/SetIdentityFeedbackForwardingEnabledResponse"+ (Proxy :: Proxy SetIdentityFeedbackForwardingEnabled)++testGetIdentityVerificationAttributesResponse :: GetIdentityVerificationAttributesResponse -> TestTree+testGetIdentityVerificationAttributesResponse = res+ "GetIdentityVerificationAttributesResponse"+ "fixture/GetIdentityVerificationAttributesResponse"+ (Proxy :: Proxy GetIdentityVerificationAttributes)++testGetIdentityPoliciesResponse :: GetIdentityPoliciesResponse -> TestTree+testGetIdentityPoliciesResponse = res+ "GetIdentityPoliciesResponse"+ "fixture/GetIdentityPoliciesResponse"+ (Proxy :: Proxy GetIdentityPolicies)++testVerifyDomainIdentityResponse :: VerifyDomainIdentityResponse -> TestTree+testVerifyDomainIdentityResponse = res+ "VerifyDomainIdentityResponse"+ "fixture/VerifyDomainIdentityResponse"+ (Proxy :: Proxy VerifyDomainIdentity)++testVerifyDomainDkimResponse :: VerifyDomainDkimResponse -> TestTree+testVerifyDomainDkimResponse = res+ "VerifyDomainDkimResponse"+ "fixture/VerifyDomainDkimResponse"+ (Proxy :: Proxy VerifyDomainDkim)++testSendRawEmailResponse :: SendRawEmailResponse -> TestTree+testSendRawEmailResponse = res+ "SendRawEmailResponse"+ "fixture/SendRawEmailResponse"+ (Proxy :: Proxy SendRawEmail)++testGetIdentityDkimAttributesResponse :: GetIdentityDkimAttributesResponse -> TestTree+testGetIdentityDkimAttributesResponse = res+ "GetIdentityDkimAttributesResponse"+ "fixture/GetIdentityDkimAttributesResponse"+ (Proxy :: Proxy GetIdentityDkimAttributes)++testDeleteIdentityResponse :: DeleteIdentityResponse -> TestTree+testDeleteIdentityResponse = res+ "DeleteIdentityResponse"+ "fixture/DeleteIdentityResponse"+ (Proxy :: Proxy DeleteIdentity)++testGetSendStatisticsResponse :: GetSendStatisticsResponse -> TestTree+testGetSendStatisticsResponse = res+ "GetSendStatisticsResponse"+ "fixture/GetSendStatisticsResponse"+ (Proxy :: Proxy GetSendStatistics)++testListIdentitiesResponse :: ListIdentitiesResponse -> TestTree+testListIdentitiesResponse = res+ "ListIdentitiesResponse"+ "fixture/ListIdentitiesResponse"+ (Proxy :: Proxy ListIdentities)++testDeleteVerifiedEmailAddressResponse :: DeleteVerifiedEmailAddressResponse -> TestTree+testDeleteVerifiedEmailAddressResponse = res+ "DeleteVerifiedEmailAddressResponse"+ "fixture/DeleteVerifiedEmailAddressResponse"+ (Proxy :: Proxy DeleteVerifiedEmailAddress)++testVerifyEmailAddressResponse :: VerifyEmailAddressResponse -> TestTree+testVerifyEmailAddressResponse = res+ "VerifyEmailAddressResponse"+ "fixture/VerifyEmailAddressResponse"+ (Proxy :: Proxy VerifyEmailAddress)++testVerifyEmailIdentityResponse :: VerifyEmailIdentityResponse -> TestTree+testVerifyEmailIdentityResponse = res+ "VerifyEmailIdentityResponse"+ "fixture/VerifyEmailIdentityResponse"+ (Proxy :: Proxy VerifyEmailIdentity)++testSendEmailResponse :: SendEmailResponse -> TestTree+testSendEmailResponse = res+ "SendEmailResponse"+ "fixture/SendEmailResponse"+ (Proxy :: Proxy SendEmail)++testListVerifiedEmailAddressesResponse :: ListVerifiedEmailAddressesResponse -> TestTree+testListVerifiedEmailAddressesResponse = res+ "ListVerifiedEmailAddressesResponse"+ "fixture/ListVerifiedEmailAddressesResponse"+ (Proxy :: Proxy ListVerifiedEmailAddresses)++testSetIdentityNotificationTopicResponse :: SetIdentityNotificationTopicResponse -> TestTree+testSetIdentityNotificationTopicResponse = res+ "SetIdentityNotificationTopicResponse"+ "fixture/SetIdentityNotificationTopicResponse"+ (Proxy :: Proxy SetIdentityNotificationTopic)
+ test/Test/AWS/SES.hs view
@@ -0,0 +1,26 @@+{-# LANGUAGE OverloadedStrings #-}++-- Module : Test.AWS.SES+-- Copyright : (c) 2013-2015 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 <brendan.g.hay@gmail.com>+-- Stability : experimental+-- Portability : non-portable (GHC extensions)++module Test.AWS.SES+ ( tests+ , fixtures+ ) where++import Network.AWS.SES+import Test.AWS.Gen.SES+import Test.Tasty++tests :: [TestTree]+tests = []++fixtures :: [TestTree]+fixtures = []
+ test/Test/AWS/SES/Internal.hs view
@@ -0,0 +1,16 @@+{-# LANGUAGE OverloadedStrings #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- Module : Test.AWS.SES.Internal+-- Copyright : (c) 2013-2015 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 <brendan.g.hay@gmail.com>+-- Stability : experimental+-- Portability : non-portable (GHC extensions)++module Test.AWS.SES.Internal where++import Test.AWS.Prelude