module Network.GDAX.Explicit.Private where
import Control.Monad.Catch
import Control.Monad.IO.Class
import Data.Aeson
import Data.Text
import Network.GDAX.Core
placeOrder :: (MonadIO m, MonadThrow m) => Gdax -> m Value
placeOrder g = gdaxSignedPost g "/orders" body
where
body = object
[ "size" .= ("0.01" :: Text)
, "price" .= ("0.100" :: Text)
, "side" .= ("buy" :: Text)
, "product_id" .= ("BTC-USD" :: Text)
]
listAccounts :: (MonadIO m, MonadThrow m) => Gdax -> m Value
listAccounts g =
gdaxSignedGet g "/accounts"