type 'a t
val return : 'a -> 'a tval map : ('a -> 'b) -> 'a t -> 'b tval bind : ('a -> 'b t) -> 'a t -> 'b t
val fail : exn -> 'a tval catch : (unit -> 'a t) -> (exn -> 'a t) -> 'a t
val get : string -> string tget url returns the body of the response.
val post : string -> string -> string tpost url body returns the body of the response. The Content-Type header should be application/json.
val delete : string -> string tdelete url returns the body of the response.