aeson-streams-0.1.0: An HTTP client library for JSON-based APIs

Safe HaskellNone
LanguageHaskell98

Network.Aeson.Client

Synopsis

Documentation

apiGet :: FromJSON a => Maybe (ByteString, ByteString) -> ByteString -> ByteString -> [(ByteString, Maybe ByteString)] -> IO (Maybe a) Source

Execute a GET agains the specified URI (e.g. `/v1`) using the supplied parameters.

apiPost :: FromJSON a => Maybe (ByteString, ByteString) -> ByteString -> ByteString -> [(ByteString, Maybe ByteString)] -> ByteString -> IO (Maybe a) Source

Execute a POST agains the specified URI (e.g. `/v1`) using the supplied parameters.

apiDelete :: FromJSON a => Maybe (ByteString, ByteString) -> ByteString -> ByteString -> [(ByteString, Maybe ByteString)] -> IO (Result a) Source

Execute a DELETE agains the specified URI (e.g. `/v1`) using the supplied parameters.

data Result a Source

Constructors

Ok

Success and empty result

Value a

Succes and non-empty result

JsonFailure

Can't turn JSON into a proper result

ParseFailure

Can't parse JSON

Instances

Show a => Show (Result a) 

apiPut :: Maybe (ByteString, ByteString) -> ByteString -> ByteString -> [(ByteString, Maybe ByteString)] -> ByteString -> IO () Source

Execute a PUT agains the specified URI using the supplied parameters.

apiPatch :: Maybe (ByteString, ByteString) -> ByteString -> ByteString -> [(ByteString, Maybe ByteString)] -> ByteString -> IO () Source

Execute a PATCH agains the specified URI using the supplied parameters.

debug :: Show a => a -> IO () Source