cachix-api-0.4.0: Servant HTTP API specification for https://cachix.org

Safe HaskellNone
LanguageHaskell2010

Cachix.Api

Synopsis

Documentation

data CachixAPI route Source #

Constructors

CachixAPI 

Fields

Instances
Generic (CachixAPI route) Source # 
Instance details

Defined in Cachix.Api

Associated Types

type Rep (CachixAPI route) :: Type -> Type #

Methods

from :: CachixAPI route -> Rep (CachixAPI route) x #

to :: Rep (CachixAPI route) x -> CachixAPI route #

type Rep (CachixAPI route) Source # 
Instance details

Defined in Cachix.Api

type Rep (CachixAPI route) = D1 (MetaData "CachixAPI" "Cachix.Api" "cachix-api-0.4.0-Gej4ySw6FTjlxKKMYcegu" False) (C1 (MetaCons "CachixAPI" PrefixI True) (((S1 (MetaSel (Just "logout") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (route :- ("logout" :> (CachixAuth :> Post302 (JSON ': ([] :: [Type])) (Header "Set-Cookie" SetCookie ': (Header "Set-Cookie" SetCookie ': ([] :: [Type]))))))) :*: S1 (MetaSel (Just "login") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (route :- ("login" :> Get302 (JSON ': ([] :: [Type])) ([] :: [Type]))))) :*: (S1 (MetaSel (Just "loginCallback") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (route :- ("login" :> ("callback" :> (QueryParam "code" Text :> (QueryParam "state" Text :> Get302 (JSON ': ([] :: [Type])) (Header "Set-Cookie" SetCookie ': (Header "Set-Cookie" SetCookie ': ([] :: [Type]))))))))) :*: S1 (MetaSel (Just "user") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (route :- (CachixAuth :> ("user" :> Get (JSON ': ([] :: [Type])) User)))))) :*: ((S1 (MetaSel (Just "createToken") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (route :- (CachixAuth :> ("token" :> (ReqBody (JSON ': ([] :: [Type])) CreateToken :> Post (JSON ': ([] :: [Type])) Text))))) :*: S1 (MetaSel (Just "caches") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (route :- (CachixAuth :> ("cache" :> Get (JSON ': ([] :: [Type])) [BinaryCacheAuthenticated]))))) :*: (S1 (MetaSel (Just "cache") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (route :- ("cache" :> (Capture "name" Text :> ToServantApi BinaryCacheAPI)))) :*: (S1 (MetaSel (Just "install") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (route :- ("install" :> ToServantApi InstallAPI))) :*: S1 (MetaSel (Just "github") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (route :- ("github" :> ToServantApi GitHubAPI))))))))

data InstallAPI route Source #

Constructors

InstallAPI 

Fields

Instances
Generic (InstallAPI route) Source # 
Instance details

Defined in Cachix.Api

Associated Types

type Rep (InstallAPI route) :: Type -> Type #

Methods

from :: InstallAPI route -> Rep (InstallAPI route) x #

to :: Rep (InstallAPI route) x -> InstallAPI route #

type Rep (InstallAPI route) Source # 
Instance details

Defined in Cachix.Api

type Rep (InstallAPI route) = D1 (MetaData "InstallAPI" "Cachix.Api" "cachix-api-0.4.0-Gej4ySw6FTjlxKKMYcegu" False) (C1 (MetaCons "InstallAPI" PrefixI True) (S1 (MetaSel (Just "installGetLatest") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (route :- (Summary "Redirects to a tarball containing nix expression to build the latest version of cachix cli" :> Get302 (JSON ': ([] :: [Type])) ([] :: [Type])))) :*: S1 (MetaSel (Just "installGetVersion") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (route :- (Summary "Redirects to a tarball containing nix expression to build given version of cachix cli" :> (Capture "version" Text :> Get302 (JSON ': ([] :: [Type])) ([] :: [Type])))))))

data GitHubAPI route Source #

Constructors

GitHubAPI 

Fields

Instances
Generic (GitHubAPI route) Source # 
Instance details

Defined in Cachix.Api

Associated Types

type Rep (GitHubAPI route) :: Type -> Type #

Methods

from :: GitHubAPI route -> Rep (GitHubAPI route) x #

to :: Rep (GitHubAPI route) x -> GitHubAPI route #

type Rep (GitHubAPI route) Source # 
Instance details

Defined in Cachix.Api

type Rep (GitHubAPI route) = D1 (MetaData "GitHubAPI" "Cachix.Api" "cachix-api-0.4.0-Gej4ySw6FTjlxKKMYcegu" False) (C1 (MetaCons "GitHubAPI" PrefixI True) (S1 (MetaSel (Just "githubOrganizations") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (route :- (CachixAuth :> ("orgs" :> Get (JSON ': ([] :: [Type])) [Text])))) :*: S1 (MetaSel (Just "githubTeams") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (route :- (CachixAuth :> ("orgs" :> (Capture "org" Text :> ("teams" :> Get (JSON ': ([] :: [Type])) [GitHubTeam]))))))))

data BinaryCacheAPI route Source #

Constructors

BinaryCacheAPI 

Fields

Instances
Generic (BinaryCacheAPI route) Source # 
Instance details

Defined in Cachix.Api

Associated Types

type Rep (BinaryCacheAPI route) :: Type -> Type #

Methods

from :: BinaryCacheAPI route -> Rep (BinaryCacheAPI route) x #

to :: Rep (BinaryCacheAPI route) x -> BinaryCacheAPI route #

type Rep (BinaryCacheAPI route) Source # 
Instance details

Defined in Cachix.Api

type Rep (BinaryCacheAPI route) = D1 (MetaData "BinaryCacheAPI" "Cachix.Api" "cachix-api-0.4.0-Gej4ySw6FTjlxKKMYcegu" False) (C1 (MetaCons "BinaryCacheAPI" PrefixI True) (((S1 (MetaSel (Just "get") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (route :- (CachixAuth :> Get (JSON ': ([] :: [Type])) BinaryCache))) :*: S1 (MetaSel (Just "create") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (route :- (CachixAuth :> (ReqBody (JSON ': ([] :: [Type])) BinaryCacheCreate :> Post (JSON ': ([] :: [Type])) NoContent))))) :*: (S1 (MetaSel (Just "delete") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (route :- (CachixAuth :> Delete (JSON ': ([] :: [Type])) NoContent))) :*: S1 (MetaSel (Just "nixCacheInfo") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (route :- (CachixAuth :> ("nix-cache-info" :> Get (XNixCacheInfo ': (JSON ': ([] :: [Type]))) NixCacheInfo)))))) :*: ((S1 (MetaSel (Just "narinfo") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (route :- (CachixAuth :> (Capture "narinfo" NarInfoC :> Get (XNixNarInfo ': (JSON ': ([] :: [Type]))) NarInfo)))) :*: S1 (MetaSel (Just "narinfoHead") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (route :- (CachixAuth :> (Capture "narinfo" NarInfoC :> Head))))) :*: (S1 (MetaSel (Just "narinfoBulk") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (route :- (CachixAuth :> ("narinfo" :> (Summary "Given a list of store hashes, return a list of those that are missing" :> (ReqBody (JSON ': ([] :: [Type])) [Text] :> Post (JSON ': ([] :: [Type])) [Text])))))) :*: (S1 (MetaSel (Just "createNarinfo") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (route :- (Capture "narinfo" NarInfoC :> (ReqBody (JSON ': ([] :: [Type])) NarInfoCreate :> Post (JSON ': ([] :: [Type])) NoContent)))) :*: S1 (MetaSel (Just "createKey") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (route :- (CachixAuth :> ("key" :> (ReqBody (JSON ': ([] :: [Type])) SigningKeyCreate :> Post (JSON ': ([] :: [Type])) NoContent))))))))))

data BinaryCacheStreamingAPI route Source #

Streaming endpoints

Constructors

BinaryCacheStreamingAPI 

Fields

Instances
Generic (BinaryCacheStreamingAPI route) Source # 
Instance details

Defined in Cachix.Api

Associated Types

type Rep (BinaryCacheStreamingAPI route) :: Type -> Type #

type Rep (BinaryCacheStreamingAPI route) Source # 
Instance details

Defined in Cachix.Api

type Rep (BinaryCacheStreamingAPI route) = D1 (MetaData "BinaryCacheStreamingAPI" "Cachix.Api" "cachix-api-0.4.0-Gej4ySw6FTjlxKKMYcegu" False) (C1 (MetaCons "BinaryCacheStreamingAPI" PrefixI True) (S1 (MetaSel (Just "nar") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (route :- (CachixAuth :> ("nar" :> (Capture "nar" NarFileName :> StreamGet NoFraming OctetStream (ConduitT () ByteString (ResourceT IO) ())))))) :*: (S1 (MetaSel (Just "createNar") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (route :- ("nar" :> (StreamBody NoFraming XNixNar (ConduitT () ByteString (ResourceT IO) ()) :> Post (JSON ': ([] :: [Type])) NoContent)))) :*: S1 (MetaSel (Just "serveNarContent") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (route :- (CachixAuth :> ("serve" :> (Capture "storehash" Text :> (CaptureAll "filepath" Text :> (Summary "Serve a file from a given store path" :> Get (OctetStream ': ([] :: [Type])) (Headers (Header "X-Content-Type-Options" Text ': ([] :: [Type])) ByteString)))))))))))