The documentation refers to JSON RPC "result" member as object, "JSON parameter names in request and responses...", "either result or error object...". Please remove this because it is misleading . "result" member is JSON value (boolean, string, array, object, null, …). In many cases an object is not needed:
"result":{"devicetype":"IpStb"} ----> "result":"IpStb"