async def items(self, name=None, *, watch=None):
        """Lists the most recent events an agent has seen

        Parameters:
            name (str): Filter events by name.
            watch (Blocking): Do a blocking query
        Returns:
            CollectionMeta: where value is a list of events

        It returns a JSON body like this::

            [
                {
                    "ID": "b54fe110-7af5-cafc-d1fb-afc8ba432b1c",
                    "Name": "deploy",
                    "Payload": bytes("abcd"),
                    "NodeFilter": re.compile("node-\d+"),
                    "ServiceFilter": "",
                    "TagFilter": "",
                    "Version": 1,
                    "LTime": 19
                },
                ...
            ]
        """
        path = "/v1/event/list"
        params = {"name": name}
        response = await self._api.get(path, params=params, watch=watch)
        results = [format_event(data) for data in response.body]
        return consul(results, meta=extract_meta(response.headers))