async def METHOD_NAME(self, payload: dict, in_edge=None) -> Result:
    try:
        query = json.loads(self.config.query)
        dot = self._get_dot_accessor(payload)
        reshaper = DictTraverser(dot)
        query = reshaper.reshape(query)
        if 'size' not in query:
            query["size"] = 20
        if query["size"] > 50:
            self.console.warning("Fetching more then 50 records may impact the GUI performance.")
        if self.config.log:
            self.console.log(f"Executed query {query}")
        result = await raw_db.query_by_index(
            index=self.config.index,
            query=query
        )
        if self.config.log:
            self.console.log(f"Query result {result}")
    except Exception as e:
        self.console.error(str(e))
        return Result(port="error", value={
            "message": str(e)
        })
    return Result(port="result", value=result.dict())