diff --git a/api/funkwhale_api/federation/serializers.py b/api/funkwhale_api/federation/serializers.py
index ec92a12e1527407e1144d2467ffc42bc665ddb89..942892a95c6e23e34b33fab3fb5db64096f4de9e 100644
--- a/api/funkwhale_api/federation/serializers.py
+++ b/api/funkwhale_api/federation/serializers.py
@@ -1170,6 +1170,10 @@ class UploadSerializer(jsonld.JsonLdSerializer):
                 },
             ],
             "track": TrackSerializer(track, context={"include_ap_context": False}).data,
+            "to": contexts.AS.Public
+            if instance.library.privacy_level == "everyone"
+            else "",
+            "attributedTo": instance.library.actor.fid,
         }
         if instance.modification_date:
             d["updated"] = instance.modification_date.isoformat()
diff --git a/api/tests/federation/test_serializers.py b/api/tests/federation/test_serializers.py
index 502faba164f99e2782c30d09f1efa461bcdd5ec6..60898c7765e3d647531118f605c780de052a669f 100644
--- a/api/tests/federation/test_serializers.py
+++ b/api/tests/federation/test_serializers.py
@@ -5,6 +5,7 @@ import uuid
 from django.core.paginator import Paginator
 from django.utils import timezone
 
+from funkwhale_api.federation import contexts
 from funkwhale_api.federation import keys
 from funkwhale_api.federation import jsonld
 from funkwhale_api.federation import models
@@ -932,7 +933,11 @@ def test_activity_pub_upload_serializer_validtes_library_actor(factories, mocker
 
 def test_activity_pub_audio_serializer_to_ap(factories):
     upload = factories["music.Upload"](
-        mimetype="audio/mp3", bitrate=42, duration=43, size=44
+        mimetype="audio/mp3",
+        bitrate=42,
+        duration=43,
+        size=44,
+        library__privacy_level="everyone",
     )
     expected = {
         "@context": jsonld.get_default_context(),
@@ -944,6 +949,8 @@ def test_activity_pub_audio_serializer_to_ap(factories):
         "duration": upload.duration,
         "bitrate": upload.bitrate,
         "size": upload.size,
+        "to": contexts.AS.Public,
+        "attributedTo": upload.library.actor.fid,
         "url": [
             {
                 "href": utils.full_url(upload.listen_url),