diff --git a/arkindex/documents/search.py b/arkindex/documents/search.py
index f10be10e4635ba9f62fa5e681b393a809400a838..5cdbcc2b97e6669bbe0ee7f23e1514d6229438ac 100644
--- a/arkindex/documents/search.py
+++ b/arkindex/documents/search.py
@@ -56,9 +56,13 @@ def search_acts_post(data):
         parents_ids=act_ids,
         prefetch=('zone__image__server',)
     )
+
+    all_parents = Element.objects.get_ascendings_paths(*act_ids)
+
     for act in acts:
         act.transcriptions = [transcriptions[tid] for tid in acts_tr_ids[act.id]]
         act.surfaces = [surf.zone for surf in all_surfaces.get(act.id, [])]
+        act.parents = all_parents.get(act.id, [])
 
     return sorted(acts, key=lambda a: act_scores[a.id], reverse=True)
 
diff --git a/arkindex/documents/serializers.py b/arkindex/documents/serializers.py
index 11af0df8ac27d74ec8b79bb43b19f356f54a00d4..4bbe15d134062cbec879ad5412ff00a9103ae766 100644
--- a/arkindex/documents/serializers.py
+++ b/arkindex/documents/serializers.py
@@ -216,6 +216,12 @@ class ActSearchResultSerializer(serializers.ModelSerializer):
     """
     transcriptions = TranscriptionSerializer(many=True)
     surfaces = ZoneSerializer(many=True)
+    parents = serializers.ListField(
+        child=serializers.ListField(
+            child=ElementLightSerializer()
+        ),
+        read_only=True,
+    )
     viewer_url = ViewerURLField('api:act-manifest')
 
     class Meta:
@@ -226,6 +232,7 @@ class ActSearchResultSerializer(serializers.ModelSerializer):
             'number',
             'transcriptions',
             'surfaces',
+            'parents',
             'viewer_url',
         )