diff --git a/api/funkwhale_api/requests/filters.py b/api/funkwhale_api/requests/filters.py
new file mode 100644
index 0000000000000000000000000000000000000000..bf353e8ad075abb76f3a4fdc846d9d25b0a105f4
--- /dev/null
+++ b/api/funkwhale_api/requests/filters.py
@@ -0,0 +1,14 @@
+import django_filters
+
+from . import models
+
+
+class ImportRequestFilter(django_filters.FilterSet):
+
+    class Meta:
+        model = models.ImportRequest
+        fields = {
+            'artist_name': ['exact', 'iexact', 'startswith', 'icontains'],
+            'status': ['exact'],
+            'user__username': ['exact'],
+        }
diff --git a/api/funkwhale_api/requests/views.py b/api/funkwhale_api/requests/views.py
index 345ff6f3bbd6afb565b847bd0778e9056d00832d..395fac66cff33e3a01fdcc33a56adfcea0aa0c7e 100644
--- a/api/funkwhale_api/requests/views.py
+++ b/api/funkwhale_api/requests/views.py
@@ -5,6 +5,7 @@ from rest_framework.decorators import detail_route
 
 from funkwhale_api.music.views import SearchMixin
 
+from . import filters
 from . import models
 from . import serializers
 
@@ -17,8 +18,13 @@ class ImportRequestViewSet(
         viewsets.GenericViewSet):
 
     serializer_class = serializers.ImportRequestSerializer
-    queryset = models.ImportRequest.objects.all().select_related()
+    queryset = (
+        models.ImportRequest.objects.all()
+              .select_related()
+              .order_by('-creation_date'))
     search_fields = ['artist_name', 'album_name', 'comment']
+    filter_class = filters.ImportRequestFilter
+    ordering_fields = ('id', 'artist_name', 'creation_date', 'status')
 
     def perform_create(self, serializer):
         return serializer.save(user=self.request.user)