diff --git a/api/funkwhale_api/common/filters.py b/api/funkwhale_api/common/filters.py
index df27a312aa6b48424814b30ab7cd2c031d2f30f9..dec4a89ab22b8ba7bcd8336f2a1406f1e08e0a83 100644
--- a/api/funkwhale_api/common/filters.py
+++ b/api/funkwhale_api/common/filters.py
@@ -202,6 +202,9 @@ class ActorScopeFilter(filters.CharFilter):
                 return queryset.none()
 
             return queryset.filter(**{self.actor_field: actor})
+        elif value.lower().startswith("domain:"):
+            domain = value.split("domain:", 1)[1]
+            return queryset.filter(**{"{}__domain_id".format(self.actor_field): domain})
         else:
             return queryset.none()
 
diff --git a/api/tests/common/test_filters.py b/api/tests/common/test_filters.py
index b45dcf1115063dafe3dc57f8427e9d8fe4763f03..6e8a7c354cc2199d25e711c90c9287c72a7f84e4 100644
--- a/api/tests/common/test_filters.py
+++ b/api/tests/common/test_filters.py
@@ -52,6 +52,7 @@ def test_mutation_filter_is_approved(value, expected, factories):
         ("noop", 2, []),
         ("actor:actor1@domain.test", 0, [0]),
         ("actor:actor2@domain.test", 0, [1]),
+        ("domain:domain.test", 0, [0, 1]),
     ],
 )
 def test_actor_scope_filter(