{- httpstan No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator) OpenAPI Version: 3.0.1 httpstan API version: 4.10.0 Generated by OpenAPI Generator (https://openapi-generator.tech) -} {-| Module : Httpstan.API.ApiDefault -} {-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE MonoLocalBinds #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE OverloadedStrings #-} {-# OPTIONS_GHC -fno-warn-name-shadowing -fno-warn-unused-binds -fno-warn-unused-imports #-} module Httpstan.API.ApiDefault where import Httpstan.Core import Httpstan.MimeTypes import Httpstan.Model as M import qualified Data.Aeson as A import qualified Data.ByteString as B import qualified Data.ByteString.Lazy as BL import qualified Data.Data as P (Typeable, TypeRep, typeOf, typeRep) import qualified Data.Foldable as P import qualified Data.Map as Map import qualified Data.Maybe as P import qualified Data.Proxy as P (Proxy(..)) import qualified Data.Set as Set import qualified Data.String as P import qualified Data.Text as T import qualified Data.Text.Encoding as T import qualified Data.Text.Lazy as TL import qualified Data.Text.Lazy.Encoding as TL import qualified Data.Time as TI import qualified Network.HTTP.Client.MultipartFormData as NH import qualified Network.HTTP.Media as ME import qualified Network.HTTP.Types as NH import qualified Web.FormUrlEncoded as WH import qualified Web.HttpApiData as WH import Data.Text (Text) import GHC.Base ((<|>)) import Prelude ((==),(/=),($), (.),(<$>),(<*>),(>>=),Maybe(..),Bool(..),Char,Double,FilePath,Float,Int,Integer,String,fmap,undefined,mempty,maybe,pure,Monad,Applicative,Functor) import qualified Prelude as P -- * Operations -- ** Default -- *** v1HealthGet -- | @GET \/v1\/health@ -- -- Check if service is running. -- v1HealthGet :: HttpstanRequest V1HealthGet MimeNoContent NoContent MimeNoContent v1HealthGet = _mkRequest "GET" ["/v1/health"] data V1HealthGet instance Produces V1HealthGet MimeNoContent -- *** v1ModelsGet -- | @GET \/v1\/models@ -- -- List cached models. -- v1ModelsGet :: HttpstanRequest V1ModelsGet MimeNoContent V1ModelsGet200Response MimeJSON v1ModelsGet = _mkRequest "GET" ["/v1/models"] data V1ModelsGet -- | @application/json@ instance Produces V1ModelsGet MimeJSON -- *** v1ModelsModelIdDelete -- | @DELETE \/v1\/models\/{model_id}@ -- -- Delete a model and any associated fits. -- -- Delete a model which has been saved in the cache. -- v1ModelsModelIdDelete :: ModelId -- ^ "modelId" - ID of Stan model -> HttpstanRequest V1ModelsModelIdDelete MimeNoContent NoContent MimeNoContent v1ModelsModelIdDelete (ModelId modelId) = _mkRequest "DELETE" ["/v1/models/",toPath modelId] data V1ModelsModelIdDelete instance Produces V1ModelsModelIdDelete MimeNoContent -- *** v1ModelsModelIdFitsFitIdDelete -- | @DELETE \/v1\/models\/{model_id}\/fits\/{fit_id}@ -- -- Delete a fit. -- -- Delete a fit which has been saved in the cache. -- v1ModelsModelIdFitsFitIdDelete :: ModelId -- ^ "modelId" - ID of Stan model associated with the fit. -> FitId -- ^ "fitId" - ID of fit to be deleted. -> HttpstanRequest V1ModelsModelIdFitsFitIdDelete MimeNoContent NoContent MimeNoContent v1ModelsModelIdFitsFitIdDelete (ModelId modelId) (FitId fitId) = _mkRequest "DELETE" ["/v1/models/",toPath modelId,"/fits/",toPath fitId] data V1ModelsModelIdFitsFitIdDelete instance Produces V1ModelsModelIdFitsFitIdDelete MimeNoContent -- *** v1ModelsModelIdFitsFitIdGet -- | @GET \/v1\/models\/{model_id}\/fits\/{fit_id}@ -- -- Get results returned by a function. -- -- Result (draws, logger messages) from calling a function defined in stan::services. -- v1ModelsModelIdFitsFitIdGet :: ModelId -- ^ "modelId" - ID of Stan model associated with the result -> FitId -- ^ "fitId" - ID of Stan result (\"fit\") desired -> HttpstanRequest V1ModelsModelIdFitsFitIdGet MimeNoContent NoContent MimeNoContent v1ModelsModelIdFitsFitIdGet (ModelId modelId) (FitId fitId) = _mkRequest "GET" ["/v1/models/",toPath modelId,"/fits/",toPath fitId] data V1ModelsModelIdFitsFitIdGet instance Produces V1ModelsModelIdFitsFitIdGet MimeNoContent -- *** v1ModelsModelIdFitsPost -- | @POST \/v1\/models\/{model_id}\/fits@ -- -- Call function defined in stan::services. -- -- A request to this endpoint starts a long-running operation. Users can retrieve information about the status of the operation by making a GET request to the operations resource endpoint. When the operation is `done`, the \"fit\" may be downloaded. (A \"fit\" collects all logger and writer messages from Stan.) ``function`` indicates the name of the ``stan::services function`` which should be called given the Stan model associated with the id ``model_id``. For example, if sampling using ``stan::services::sample::hmc_nuts_diag_e_adapt`` then ``function`` is the full function name ``stan::services::sample::hmc_nuts_diag_e_adapt``. Sampler parameters which are not supplied will be given default values taken from CmdStan. For example, if ``stan::services::sample::hmc_nuts_diag_e_adapt`` is the function called and the parameter ``num_samples`` is not specified, the value 1000 will be used. For a full list of default values consult the CmdStan documentation. -- v1ModelsModelIdFitsPost :: (Consumes V1ModelsModelIdFitsPost MimeJSON, MimeRender MimeJSON CreateFitRequest) => CreateFitRequest -- ^ "body" - Full stan::services function name and associated arguments to call with Stan model. -> ModelId -- ^ "modelId" - ID of Stan model to use -> HttpstanRequest V1ModelsModelIdFitsPost MimeJSON Fit MimeJSON v1ModelsModelIdFitsPost body (ModelId modelId) = _mkRequest "POST" ["/v1/models/",toPath modelId,"/fits"] `setBodyParam` body data V1ModelsModelIdFitsPost -- | /Body Param/ "body" - Full stan::services function name and associated arguments to call with Stan model. instance HasBodyParam V1ModelsModelIdFitsPost CreateFitRequest -- | @application/json@ instance Consumes V1ModelsModelIdFitsPost MimeJSON -- | @application/json@ instance Produces V1ModelsModelIdFitsPost MimeJSON -- *** v1ModelsModelIdLogProbGradPost -- | @POST \/v1\/models\/{model_id}\/log_prob_grad@ -- -- Return the gradient of the log posterior evaluated at the unconstrained parameters. -- -- Returns the output of Stan C++ `stan::model::log_prob_grad`. -- v1ModelsModelIdLogProbGradPost :: (Consumes V1ModelsModelIdLogProbGradPost MimeJSON) => ModelId -- ^ "modelId" - ID of Stan model to use -> HttpstanRequest V1ModelsModelIdLogProbGradPost MimeJSON V1ModelsModelIdLogProbGradPost200Response MimeJSON v1ModelsModelIdLogProbGradPost (ModelId modelId) = _mkRequest "POST" ["/v1/models/",toPath modelId,"/log_prob_grad"] data V1ModelsModelIdLogProbGradPost -- | /Body Param/ "adjust_transform" - Boolean to control whether we apply a Jacobian adjust transform. instance HasBodyParam V1ModelsModelIdLogProbGradPost AdjustTransform -- | @application/json@ instance Consumes V1ModelsModelIdLogProbGradPost MimeJSON -- | @application/json@ instance Produces V1ModelsModelIdLogProbGradPost MimeJSON -- *** v1ModelsModelIdLogProbPost -- | @POST \/v1\/models\/{model_id}\/log_prob@ -- -- Return the log probability of the unconstrained parameters. -- -- Returns the output of Stan C++ ``log_prob`` model class method. -- v1ModelsModelIdLogProbPost :: (Consumes V1ModelsModelIdLogProbPost MimeJSON) => ModelId -- ^ "modelId" - ID of Stan model to use -> HttpstanRequest V1ModelsModelIdLogProbPost MimeJSON V1ModelsModelIdLogProbPost200Response MimeJSON v1ModelsModelIdLogProbPost (ModelId modelId) = _mkRequest "POST" ["/v1/models/",toPath modelId,"/log_prob"] data V1ModelsModelIdLogProbPost -- | /Body Param/ "adjust_transform" - Boolean to control whether we apply a Jacobian adjust transform. instance HasBodyParam V1ModelsModelIdLogProbPost AdjustTransform -- | @application/json@ instance Consumes V1ModelsModelIdLogProbPost MimeJSON -- | @application/json@ instance Produces V1ModelsModelIdLogProbPost MimeJSON -- *** v1ModelsModelIdParamsPost -- | @POST \/v1\/models\/{model_id}\/params@ -- -- Get parameter names and dimensions. -- -- Returns the output of Stan C++ model class methods: ``constrained_param_names``, ``get_param_names`` and ``get_dims``. -- v1ModelsModelIdParamsPost :: (Consumes V1ModelsModelIdParamsPost MimeJSON, MimeRender MimeJSON ParamData) => ParamData -- ^ "_data" - Data for Stan Model. Needed to calculate param names and dimensions. -> ModelId -- ^ "modelId" - ID of Stan model to use -> HttpstanRequest V1ModelsModelIdParamsPost MimeJSON V1ModelsModelIdParamsPost200Response MimeJSON v1ModelsModelIdParamsPost _data (ModelId modelId) = _mkRequest "POST" ["/v1/models/",toPath modelId,"/params"] `setBodyParam` _data data V1ModelsModelIdParamsPost -- | /Body Param/ "data" - Data for Stan Model. Needed to calculate param names and dimensions. instance HasBodyParam V1ModelsModelIdParamsPost ParamData -- | @application/json@ instance Consumes V1ModelsModelIdParamsPost MimeJSON -- | @application/json@ instance Produces V1ModelsModelIdParamsPost MimeJSON -- *** v1ModelsModelIdTransformInitsPost -- | @POST \/v1\/models\/{model_id}\/transform_inits@ -- -- Return a sequence of unconstrained parameters. -- -- Returns the output of Stan C++ ``transform_inits`` model class method. -- v1ModelsModelIdTransformInitsPost :: (Consumes V1ModelsModelIdTransformInitsPost MimeJSON, MimeRender MimeJSON ConstrainedParameters) => ConstrainedParameters -- ^ "constrainedParameters" - Constrained parameter values and their specified context -> ModelId -- ^ "modelId" - ID of Stan model to use -> HttpstanRequest V1ModelsModelIdTransformInitsPost MimeJSON V1ModelsModelIdTransformInitsPost200Response MimeJSON v1ModelsModelIdTransformInitsPost constrainedParameters (ModelId modelId) = _mkRequest "POST" ["/v1/models/",toPath modelId,"/transform_inits"] `setBodyParam` constrainedParameters data V1ModelsModelIdTransformInitsPost -- | /Body Param/ "constrained_parameters" - Constrained parameter values and their specified context instance HasBodyParam V1ModelsModelIdTransformInitsPost ConstrainedParameters -- | @application/json@ instance Consumes V1ModelsModelIdTransformInitsPost MimeJSON -- | @application/json@ instance Produces V1ModelsModelIdTransformInitsPost MimeJSON -- *** v1ModelsModelIdWriteArrayPost -- | @POST \/v1\/models\/{model_id}\/write_array@ -- -- Return a sequence of constrained parameters. -- -- Returns the output of Stan C++ ``write_array`` model class method. -- v1ModelsModelIdWriteArrayPost :: (Consumes V1ModelsModelIdWriteArrayPost MimeJSON, MimeRender MimeJSON IncludeGqs) => IncludeGqs -- ^ "includeGqs" - Boolean to control whether we include generated quantities. -> ModelId -- ^ "modelId" - ID of Stan model to use -> HttpstanRequest V1ModelsModelIdWriteArrayPost MimeJSON V1ModelsModelIdWriteArrayPost200Response MimeJSON v1ModelsModelIdWriteArrayPost includeGqs (ModelId modelId) = _mkRequest "POST" ["/v1/models/",toPath modelId,"/write_array"] `setBodyParam` includeGqs data V1ModelsModelIdWriteArrayPost -- | /Body Param/ "include_gqs" - Boolean to control whether we include generated quantities. instance HasBodyParam V1ModelsModelIdWriteArrayPost IncludeGqs -- | @application/json@ instance Consumes V1ModelsModelIdWriteArrayPost MimeJSON -- | @application/json@ instance Produces V1ModelsModelIdWriteArrayPost MimeJSON -- *** v1ModelsPost -- | @POST \/v1\/models@ -- -- Compile a Stan model -- v1ModelsPost :: (Consumes V1ModelsPost MimeJSON, MimeRender MimeJSON CreateModelRequest) => CreateModelRequest -- ^ "body" - Stan program code to compile -> HttpstanRequest V1ModelsPost MimeJSON Model MimeJSON v1ModelsPost body = _mkRequest "POST" ["/v1/models"] `setBodyParam` body data V1ModelsPost -- | /Body Param/ "body" - Stan program code to compile instance HasBodyParam V1ModelsPost CreateModelRequest -- | @application/json@ instance Consumes V1ModelsPost MimeJSON -- | @application/json@ instance Produces V1ModelsPost MimeJSON -- *** v1OperationsOperationIdGet -- | @GET \/v1\/operations\/{operation_id}@ -- -- Get Operation details. -- -- Return Operation details. Details about an Operation include whether or not the operation is `done` and information about the progress of sampling. -- v1OperationsOperationIdGet :: OperationId -- ^ "operationId" - ID of Operation -> HttpstanRequest V1OperationsOperationIdGet MimeNoContent Operation MimeJSON v1OperationsOperationIdGet (OperationId operationId) = _mkRequest "GET" ["/v1/operations/",toPath operationId] data V1OperationsOperationIdGet -- | @application/json@ instance Produces V1OperationsOperationIdGet MimeJSON