-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Bindings for the MailChimp API -- -- Haskell bindings for the MailChimp API. @package mailchimp @version 0.2.0 module Web.MailChimp.Key -- | A MailChimp data center. type DataCenter = ByteString -- | A MailChimp API key. type Key = ByteString parseDataCenter :: Key -> Either String DataCenter module Web.MailChimp.Extra -- | Create a manager. makeManager :: IO Manager module Web.MailChimp.Common -- | An ID. type Id = Text module Web.MailChimp.List type ListApi = Get '[JSON] [String] -- | A client for a list. data ListClient ListClient :: ClientM [String] -> ListClient [getLists] :: ListClient -> ClientM [String] -- | A list ID. type ListId = Id instance GHC.Generics.Generic Web.MailChimp.List.ListClient instance Generics.SOP.Universe.Generic Web.MailChimp.List.ListClient instance Servant.Client.Client Web.MailChimp.List.ListApi ~ client => Servant.Client.Generic.ClientLike client Web.MailChimp.List.ListClient module Web.MailChimp.List.Member type ListMemberApi = (ReqBody '[JSON] ListMemberRequest :> Post '[JSON] ListMemberResponse) :<|> (Get '[JSON] [ListMemberResponse] :<|> ((Capture "subscriber_hash" ListMemberId :> Get '[JSON] ListMemberResponse) :<|> ((Capture "subscriber_hash" ListMemberId :> (ReqBody '[JSON] ListMemberRequest :> Patch '[JSON] ListMemberResponse)) :<|> ((Capture "subscriber_hash" ListMemberId :> (ReqBody '[JSON] ListMemberRequest :> Put '[JSON] ListMemberResponse)) :<|> (Capture "subscriber_hash" ListMemberId :> Delete '[JSON] String))))) data ListMemberClient ListMemberClient :: (ListMemberRequest -> ClientM ListMemberResponse) -> ClientM [ListMemberResponse] -> (ListMemberId -> ClientM ListMemberResponse) -> (ListMemberId -> ListMemberRequest -> ClientM ListMemberResponse) -> (ListMemberId -> ListMemberRequest -> ClientM ListMemberResponse) -> (ListMemberId -> ClientM String) -> ListMemberClient -- | Add a new list member. [addListMember] :: ListMemberClient -> ListMemberRequest -> ClientM ListMemberResponse -- | Get information about members in a list. [getListMembers] :: ListMemberClient -> ClientM [ListMemberResponse] -- | Get information about a specific list member. [getListMember] :: ListMemberClient -> ListMemberId -> ClientM ListMemberResponse -- | Update a list member. [updateListMember] :: ListMemberClient -> ListMemberId -> ListMemberRequest -> ClientM ListMemberResponse -- | Add or update a list member. [addOrUpdateListMember] :: ListMemberClient -> ListMemberId -> ListMemberRequest -> ClientM ListMemberResponse -- | Remove a list member. [deleteListMember] :: ListMemberClient -> ListMemberId -> ClientM String data ListMemberRequest ListMemberRequest :: Text -> [(Text, Text)] -> ListMemberStatus -> [(Text, Value)] -> ListMemberRequest [listMemberEmailAddress] :: ListMemberRequest -> Text [listMemberMergeFields] :: ListMemberRequest -> [(Text, Text)] [listMemberStatus] :: ListMemberRequest -> ListMemberStatus [listMemberExtra] :: ListMemberRequest -> [(Text, Value)] -- | Create a list member request. makeListMemberRequest :: Text -> ListMemberStatus -> ListMemberRequest data ListMemberResponse ListMemberResponse :: ListMemberId -> ListMemberResponse [listMemberId] :: ListMemberResponse -> ListMemberId type ListMemberId = Id data ListMemberStatus Cleaned :: ListMemberStatus Pending :: ListMemberStatus Subscribed :: ListMemberStatus Unsubscribed :: ListMemberStatus instance GHC.Generics.Generic Web.MailChimp.List.Member.ListMemberClient instance GHC.Show.Show Web.MailChimp.List.Member.ListMemberRequest instance GHC.Show.Show Web.MailChimp.List.Member.ListMemberStatus instance GHC.Show.Show Web.MailChimp.List.Member.ListMemberResponse instance Generics.SOP.Universe.Generic Web.MailChimp.List.Member.ListMemberClient instance Servant.Client.Client Web.MailChimp.List.Member.ListMemberApi ~ client => Servant.Client.Generic.ClientLike client Web.MailChimp.List.Member.ListMemberClient instance Data.Aeson.Types.ToJSON.ToJSON Web.MailChimp.List.Member.ListMemberRequest instance Data.Aeson.Types.FromJSON.FromJSON Web.MailChimp.List.Member.ListMemberResponse instance Data.Aeson.Types.ToJSON.ToJSON Web.MailChimp.List.Member.ListMemberStatus module Web.MailChimp newtype MainClient MainClient :: (BasicAuthData -> AuthClient) -> MainClient [makeAuthClient] :: MainClient -> BasicAuthData -> AuthClient makeMainClient :: MainClient -- | A client for MailChimp. data AuthClient AuthClient :: ClientM Object -> ListClient -> (ListId -> ListMemberClient) -> AuthClient [getLinks] :: AuthClient -> ClientM Object -- | Create a client for lists. [makeListClient] :: AuthClient -> ListClient -- | Create a client for list members. [makeListMemberClient] :: AuthClient -> ListId -> ListMemberClient makeAuthClientWithKey :: Key -> AuthClient run :: MonadIO m => Manager -> Key -> ClientM a -> m (Either ServantError a) makeBaseUrl :: Key -> Maybe BaseUrl version :: Version instance GHC.Generics.Generic Web.MailChimp.MainClient instance GHC.Generics.Generic Web.MailChimp.AuthClient instance Generics.SOP.Universe.Generic Web.MailChimp.MainClient instance Servant.Client.Client Web.MailChimp.MainApi ~ client => Servant.Client.Generic.ClientLike client Web.MailChimp.MainClient instance Generics.SOP.Universe.Generic Web.MailChimp.AuthClient instance Servant.Client.Client Web.MailChimp.AuthApi ~ client => Servant.Client.Generic.ClientLike client Web.MailChimp.AuthClient module Web.MailChimp.Tutorial example :: IO ()