wikimusic-api-spec-1.2.1.3
Safe HaskellSafe-Inferred
LanguageGHC2021

WikiMusic.Servant.ApiSpec

Documentation

type PublicAPI = ("login" :> (ReqBody '[JSON] LoginRequest :> LoginRespondWithAuth)) :<|> (("reset-password" :> (("email" :> (Capture "email" Text :> Post '[JSON] MakeResetPasswordLinkResponse)) :<|> ("do" :> (ReqBody '[JSON] DoPasswordResetRequest :> Verb 'POST 204 '[JSON] ())))) :<|> ("system-information" :> Get '[JSON] SystemInformationResponse)) Source #

type AuthAPI = ("me" :> (WithAuth :> Get '[JSON] GetMeQueryResponse)) :<|> ("users" :> (("invite" :> (WithAuth :> (ReqBody '[JSON] InviteUsersRequest :> Post '[JSON] MakeResetPasswordLinkResponse))) :<|> ("delete" :> (WithAuth :> (ReqBody '[JSON] DeleteUsersRequest :> Post '[JSON] ()))))) Source #

type WithBaseEntityRoutes = (WithAuth :> (WithIdentifier :> Delete '[JSON] ())) :<|> (("comments" :> (WithAuth :> (WithIdentifier :> Delete '[JSON] ()))) :<|> (("opinions" :> (WithAuth :> (WithIdentifier :> Delete '[JSON] ()))) :<|> ("artworks" :> (WithAuth :> (WithIdentifier :> Delete '[JSON] ()))))) Source #

type WithComments a b = "comments" :> (WithAuth :> (ReqBody '[JSON] a :> Post '[JSON] b)) Source #

type WithOpinions a b = "opinions" :> (WithAuth :> (ReqBody '[JSON] a :> Post '[JSON] b)) Source #

type WithArtworks a b = "artworks" :> (WithAuth :> (ReqBody '[JSON] a :> Post '[JSON] b)) Source #

type WithArtworkOrders a = "artworks" :> ("order" :> (WithAuth :> (ReqBody '[JSON] a :> Patch '[JSON] ()))) Source #

type WithSearch = Capture "searchInput" Text Source #

type WithIdentifier = Capture "identifier" UUID Source #