packages feed

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 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