diff --git a/api/config/settings/common.py b/api/config/settings/common.py
index a4c53c01ad2a256449e8ce026daa60f86a4e4c33..e443007b5a58ba45dee55c33b28b5e4a21f11032 100644
--- a/api/config/settings/common.py
+++ b/api/config/settings/common.py
@@ -213,16 +213,19 @@ if PLUGINS:
 else:
     logger.info("Running with no plugins")
 
+ADDITIONAL_APPS = env.list("ADDITIONAL_APPS", default=[])
 INSTALLED_APPS = (
     DJANGO_APPS
     + THIRD_PARTY_APPS
     + LOCAL_APPS
     + tuple(["{}.apps.Plugin".format(p) for p in PLUGINS])
+    + tuple(ADDITIONAL_APPS)
 )
 
 # MIDDLEWARE CONFIGURATION
 # ------------------------------------------------------------------------------
-MIDDLEWARE = (
+ADDITIONAL_MIDDLEWARES_BEFORE = env.list("ADDITIONAL_MIDDLEWARES_BEFORE", default=[])
+MIDDLEWARE = tuple(ADDITIONAL_MIDDLEWARES_BEFORE) + (
     "django.middleware.security.SecurityMiddleware",
     "django.middleware.clickjacking.XFrameOptionsMiddleware",
     "corsheaders.middleware.CorsMiddleware",
diff --git a/api/config/urls.py b/api/config/urls.py
index 015047f67fd0834bbba477b98d7fca4f63acf81a..2cd4f466299231ebc5dc1e6d40b7afb49e9919c2 100644
--- a/api/config/urls.py
+++ b/api/config/urls.py
@@ -40,3 +40,8 @@ if settings.DEBUG:
         urlpatterns = [
             path("api/__debug__/", include(debug_toolbar.urls))
         ] + urlpatterns
+
+    if "silk" in settings.INSTALLED_APPS:
+        urlpatterns = [
+            url(r"^api/silk/", include("silk.urls", namespace="silk"))
+        ] + urlpatterns
diff --git a/api/funkwhale_api/federation/views.py b/api/funkwhale_api/federation/views.py
index 7aebc29718a56cc83d4669f90dc92f1cd41b3e19..671d2f83ad0e060309b5d3749842ac9984ea2b2e 100644
--- a/api/funkwhale_api/federation/views.py
+++ b/api/funkwhale_api/federation/views.py
@@ -164,7 +164,7 @@ class MusicLibraryViewSet(
     FederationMixin, mixins.RetrieveModelMixin, viewsets.GenericViewSet
 ):
     authentication_classes = [authentication.SignatureAuthentication]
-    # renderer_classes = renderers.get_ap_renderers()
+    renderer_classes = renderers.get_ap_renderers()
     serializer_class = serializers.LibrarySerializer
     queryset = music_models.Library.objects.all().select_related("actor")
     lookup_field = "uuid"
diff --git a/api/requirements/local.txt b/api/requirements/local.txt
index d60e07e7b28abb9b77eb42749d5427fe1c9ce219..dc39e4218bfcb2d31cef38499106834034c4f265 100644
--- a/api/requirements/local.txt
+++ b/api/requirements/local.txt
@@ -15,3 +15,4 @@ profiling
 asynctest==0.12.2
 aioresponses==0.6.0
 https://github.com/dmclain/django-debug-toolbar-line-profiler/archive/master.zip
+django-silk