package ez_api

  1. Overview
  2. Docs
module Arg : sig ... end
module Url : sig ... end
module Security : sig ... end
module Param : sig ... end
module Err : sig ... end
module Meth : sig ... end
module Service : sig ... end
module Mime : sig ... end
module Path : sig ... end
module Doc : sig ... end
module Error_codes : sig ... end
module Req : sig ... end
module IO = Service.IO
module TYPES : sig ... end
include module type of struct include TYPES end
include module type of struct include Url.TYPES end
type base_url = Url.TYPES.base_url =
  1. | BASE of string
type url = Url.TYPES.url =
  1. | URL of string
type param_value = TYPES.param_value =
  1. | I of int
  2. | S of string
  3. | B of bool
  4. | LS of string list
type ip_info = TYPES.ip_info = {
  1. ip_ip : string;
  2. mutable ip_last : float;
  3. mutable ip_nb : int;
  4. ip_country : string * string;
}
type no_security = Security.none
type 'b io = 'b IO.io =
  1. | Empty : unit io
  2. | Json : 'a Json_encoding.encoding -> 'a io
  3. | Raw : Mime.t list -> string io
type ('args, 'input, 'output, 'error, 'security) service = {
  1. s : ('args, 'input, 'output, 'error, 'security) Service.t;
  2. doc : Doc.t;
}
type ('output, 'error, 'security) service0 = (Req.t, unit, 'output, 'error, 'security) service
type ('arg, 'output, 'error, 'security) service1 = (Req.t * 'arg, unit, 'output, 'error, 'security) service
type ('arg1, 'arg2, 'output, 'error, 'security) service2 = ((Req.t * 'arg1) * 'arg2, unit, 'output, 'error, 'security) service
type ('input, 'output, 'error, 'security) post_service0 = (Req.t, 'input, 'output, 'error, 'security) service
type ('arg, 'input, 'output, 'error, 'security) post_service1 = (Req.t * 'arg, 'input, 'output, 'error, 'security) service
type ('arg1, 'arg2, 'input, 'output, 'error, 'security) post_service2 = ((Req.t * 'arg1) * 'arg2, 'input, 'output, 'error, 'security) service
type ('input, 'output, 'error, 'security) ws_service0 = (Req.t, 'input, 'output, 'error, 'security) service
type ('arg, 'input, 'output, 'error, 'security) ws_service1 = (Req.t * 'arg, 'input, 'output, 'error, 'security) service
type ('arg1, 'arg2, 'input, 'output, 'error, 'security) ws_service2 = ((Req.t * 'arg1) * 'arg2, 'input, 'output, 'error, 'security) service
val warning : string -> unit
val warnings : (string -> unit) -> unit
val encode_params : ('a, 'b, 'c, 'd, [< Security.scheme ]) Service.t -> (Param.t * param_value) list -> string
val forge : Url.base_url -> ('a, 'b, 'c, 'd, [< Security.scheme ]) service -> 'a -> (Param.t * param_value) list -> Url.url
val forge0 : Url.base_url -> (Req.t, 'a, 'b, 'c, [< Security.scheme ]) service -> (Param.t * param_value) list -> Url.url
val forge1 : Url.base_url -> (Req.t * 'a, 'b, 'c, 'd, [< Security.scheme ]) service -> 'a -> (Param.t * param_value) list -> Url.url
val forge2 : Url.base_url -> ((Req.t * 'a) * 'b, 'c, 'd, 'e, [< Security.scheme ]) service -> 'a -> 'b -> (Param.t * param_value) list -> Url.url
val raw_service : 'i. ?section:Doc.section -> ?name:string -> ?descr:string -> ?meth:Meth.t -> input:'i io -> output:'o io -> ?errors:'e Err.case list -> ?params:Param.t list -> ?security:[< Security.scheme ] as 'b list -> ?access_control:(string * string) list -> ?register:bool -> ?input_example:'i -> ?output_example:'o -> (Req.t, 'a) Path.t -> ('a, 'i, 'o, 'e, 'b) service
val post_service : ?section:Doc.section -> ?name:string -> ?descr:string -> ?meth:Meth.t -> input:'a Json_encoding.encoding -> output:'b Json_encoding.encoding -> ?errors:'c Err.case list -> ?params:Param.t list -> ?security:[< Security.scheme ] as 'd list -> ?register:bool -> ?access_control:(string * string) list -> ?input_example:'a -> ?output_example:'b -> (Req.t, 'e) Path.t -> ('e, 'a, 'b, 'c, 'd) service
val service : ?section:Doc.section -> ?name:string -> ?descr:string -> ?meth:Meth.t -> output:'a Json_encoding.encoding -> ?errors:'b Err.case list -> ?params:Param.t list -> ?security:[< Security.scheme ] as 'c list -> ?access_control:(string * string) list -> ?register:bool -> ?output_example:'a -> (Req.t, 'd) Path.t -> ('d, unit, 'a, 'b, 'c) service
val ws_service : ?section:Doc.section -> ?name:string -> ?descr:string -> input:'a io -> output:'b io -> ?errors:'c Err.case list -> ?params:Param.t list -> ?security:[< Security.scheme ] as 'd list -> ?access_control:(string * string) list -> ?register:bool -> ?output_example:'b -> (Req.t, 'e) Path.t -> ('e, 'a, 'b, 'c, 'd) service
val register : ('a, 'b, 'c, 'd, [< Security.scheme ] as 'e) service -> ('a, 'b, 'c, 'd, 'e) Service.t
val id : ('a, 'b, 'c, 'd, [< Security.scheme ]) service -> int
module Legacy : sig ... end
OCaml

Innovation. Community. Security.