Module Mavryk_openapi.Openapi

OpenAPI specifications.

This is not a general library, in particular it does not support content-types other than application/json. It only supports what we actually use.

module Schema : sig ... end

OpenAPI Schema Objects.

module Response : sig ... end
module Parameter : sig ... end
module Service : sig ... end
module Path : sig ... end
module Endpoint : sig ... end

API endpoints, i.e. paths associated with one or more HTTP methods.

module Server : sig ... end
type t = {
  1. title : string;
  2. description : string option;
  3. version : string;
  4. servers : Server.t list;
  5. definitions : (string * Schema.t) list;
  6. endpoints : Endpoint.t list;
}
val make : title:string -> ?description:string -> version:string -> ?servers:Server.t list -> ?definitions:(string * Schema.t) list -> Endpoint.t list -> t
val to_json : t -> Json.u
val of_json : Json.t -> t