{-# LANGUAGE OverloadedStrings #-} module Prosper.Internal.CSV ( csvGet , csvGetStream ) where import Network.Http.Client import System.IO.Streams (InputStream) import Data.ByteString (ByteString) import Prosper.Money import Prosper.User import Prosper.Internal.Request -- | Make a GET request to Prosper's CSV api, return the raw CSV data csvGet :: User -- ^ The user name and password for the prosper user -> ByteString -- ^ The name of the API service, relative to the API url -> IO ByteString -- ^ Raw CSV response csvGet userInfo url = issueRequest userInfo url GET "text/csv" concatHandler [] -- | Make a GET request to Prosper's CSV api, return the raw CSV data csvGetStream :: User -- ^ The user name and password for the prosper user -> ByteString -- ^ The name of the API service, relative to the API url -> (InputStream ByteString -> IO a) -> IO a -- ^ Raw CSV response csvGetStream userInfo url handler = issueRequest userInfo url GET "text/csv" (\_ is -> handler is) []