If it is not included it is assumed to be a notification. id An identifier established by the Client that MUST contain a String, Number, or NULL value if included. params A Structured value that holds the parameter values to be used during the invocation of the method. Method names that begin with the word rpc followed by a period character (U+002E or ASCII 46) are reserved for rpc-internal methods and extensions and MUST NOT be used for anything else. method A String containing the name of the method to be invoked. The Request object has the following members: jsonrpc A String specifying the version of the JSON-RPC protocol.
This specification does not address that layer of complexity.Ī rpc call is represented by sending a Request object to a Server. One implementation of this specification could easily fill both of those roles, even at the same time, to other different clients or the same client. The Server is defined as the origin of Response objects and the handler of Request objects. The Client is defined as the origin of Request objects and the handler of Response objects. The terms function, method, and procedure can be assumed to be interchangeable. True and False are also capitalized.Īll member names exchanged between the Client and the Server that are considered for matching of any kind should be considered to be case-sensitive.
Whenever this document refers to any JSON type, the first letter is always capitalized: Object, Array, String, Number, Boolean, Null. The term "Structured" references either of the structured JSON types. The term "Primitive" in this specification references any of those four primitive JSON types. JSON can represent four primitive types (Strings, Numbers, Booleans, and Null) and two structured types (Objects and Arrays). Since JSON-RPC utilizes JSON, it has the same type system (see or RFC 4627).
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119.