From 2398f1bd40235ce4ff031dccbde4d04b32395292 Mon Sep 17 00:00:00 2001 From: William Carroll Date: Tue, 28 Jul 2020 10:57:15 +0100 Subject: Distinguish b/w Account and User Additionally: supporting more CRUDL methods for the Accounts and Trips tables. --- src/API.hs | 29 ++++++++++++++++++++--------- 1 file changed, 20 insertions(+), 9 deletions(-) (limited to 'src/API.hs') diff --git a/src/API.hs b/src/API.hs index 545aa25be777..95b9f14a399c 100644 --- a/src/API.hs +++ b/src/API.hs @@ -9,20 +9,31 @@ import Servant.API import qualified Types as T -------------------------------------------------------------------------------- -type API = "user" +type API = + -- accounts: Create + "accounts" :> ReqBody '[JSON] T.Account :> Post '[JSON] (Maybe T.Session) - :<|> "user" - :> Capture "name" Text - :> Get '[JSON] (Maybe T.Account) - -- Create + -- accounts: Read + -- accounts: Update + -- accounts: Delete + :<|> "accounts" + :> QueryParam' '[Required] "username" Text + :> Delete '[JSON] NoContent + -- accounts: List + :<|> "accounts" + :> Get '[JSON] [T.User] + + -- trips: Create :<|> "trips" :> ReqBody '[JSON] T.Trip :> Post '[JSON] NoContent - -- Read - :<|> "trips" - :> Get '[JSON] [T.Trip] - -- Delete + -- trips: Read + -- trips: Update + -- trips: Delete :<|> "trips" :> ReqBody '[JSON] T.TripPK :> Delete '[JSON] NoContent + -- trips: List + :<|> "trips" + :> Get '[JSON] [T.Trip] -- cgit 1.4.1