JSON-RPC is a stateless, light-weight remote procedure call (RPC) protocol.
Primarily this specification defines several data structures and the rules
around their processing. It is transport agnostic in that the concepts can
be used within the same process, over sockets, over http, or in many various
message passing environments. It uses JSON (RFC 4627) as data format.