Below is the API for the OCaml standard library. It's directly copied over from the OCaml Manual, formatted to the Reason syntax and styled accordingly. The API docs are work-in-progress; we'll be polishing these gradually!
If you're targeting JavaScript, the API docs for BuckleScript includes all of below, plus JS-specific APIs.
sig type t external repr : 'a -> Obj.t = "%identity" external obj : Obj.t -> 'a = "%identity" external magic : 'a -> 'b = "%identity" external is_block : Obj.t -> bool = "caml_obj_is_block" external is_int : Obj.t -> bool = "%obj_is_int" external tag : Obj.t -> int = "caml_obj_tag" external set_tag : Obj.t -> int -> unit = "caml_obj_set_tag" external size : Obj.t -> int = "%obj_size" external field : Obj.t -> int -> Obj.t = "%obj_field" external set_field : Obj.t -> int -> Obj.t -> unit = "%obj_set_field" val double_field : Obj.t -> int -> float val set_double_field : Obj.t -> int -> float -> unit external new_block : int -> int -> Obj.t = "caml_obj_block" external dup : Obj.t -> Obj.t = "caml_obj_dup" external truncate : Obj.t -> int -> unit = "caml_obj_truncate" external add_offset : Obj.t -> Int32.t -> Obj.t = "caml_obj_add_offset" val first_non_constant_constructor_tag : int val last_non_constant_constructor_tag : int val lazy_tag : int val closure_tag : int val object_tag : int val infix_tag : int val forward_tag : int val no_scan_tag : int val abstract_tag : int val string_tag : int val double_tag : int val double_array_tag : int val custom_tag : int val final_tag : int val int_tag : int val out_of_heap_tag : int val unaligned_tag : int val extension_name : 'a -> string val extension_id : 'a -> int val extension_slot : 'a -> Obj.t val marshal : Obj.t -> bytes val unmarshal : bytes -> int -> Obj.t * int end