diff --git a/model_server/base/roiset.py b/model_server/base/roiset.py
index 1ddcf4bf8063d3870138526ca9ad46f899b8a0c4..9a18a135c0c8fd91e892bb5ae0487548a673db77 100644
--- a/model_server/base/roiset.py
+++ b/model_server/base/roiset.py
@@ -118,6 +118,8 @@ def filter_df(df: pd.DataFrame, filters: RoiFilter = None) -> pd.DataFrame:
     if filters is not None:  # parse filters
         for k, val in filters.dict(exclude_unset=True).items():
             assert k in ('area', 'diag', 'min_hw')
+            if val is None:
+                continue
             vmin = val['min']
             vmax = val['max']
             assert vmin >= 0