code: def json(self, command, arguments, tags=None, id=None):
          
          result = self.sync(command, arguments, tags=tags, id=id)
          if result.level != 20:
              raise RuntimeError('invalid result level, expecting json(20) got (%d)' % result.level)
  
          return json.loads(result.data)
docs: Same as self.sync except it assumes the returned result is json, and loads the payload of the return object
          if the returned (data) is not of level (20) an error is raised.
          :Return: Data