diff --git a/mastoapi.c b/mastoapi.c index 876e63c..c738841 100644 --- a/mastoapi.c +++ b/mastoapi.c @@ -1158,6 +1158,7 @@ int mastoapi_get_handler(const xs_dict *req, const char *q_path, xs *out = xs_list_new(); xs_list *p = l; xs_dict *v; + xs_list *excl = xs_dict_get(args, "exclude_types[]"); while (xs_list_iter(&p, &v)) { xs *noti = notify_get(&snac1, v); @@ -1194,6 +1195,10 @@ int mastoapi_get_handler(const xs_dict *req, const char *q_path, else continue; + /* excluded type? */ + if (!xs_is_null(excl) && xs_list_in(excl, type) != -1) + continue; + xs *mn = xs_dict_new(); mn = xs_dict_append(mn, "type", type);