public async Task <QueryResult <WebHook> > QueryAsync(WebHookQuery query)
        {
            var response = await Client.PostAsJson("api/webhook/query", query);

            QueryResult <RestWebHook> result = await response.Content.ParseJsonAsync <QueryResult <RestWebHook> >();

            IList <WebHook> items = result.Items.Select(x => x.ToModel()).ToList();

            return(new QueryResult <WebHook>()
            {
                Items = items
            });
        }
        public async Task <QueryResult <WebHook> > QueryAsync(WebHookQuery query)
        {
            IQueryable <MongoWebHook> q = WebHooks.AsQueryable();

            if (query.Event != null)
            {
                q = q.Where(x => x.EventName == query.Event);
            }

            var items = q.ToList().Select(x => x.ToModel()).ToList();

            return(new QueryResult <WebHook>()
            {
                Items = items
            });
        }