diff --git a/CHANGELOG.md b/CHANGELOG.md
index a410c02f49ba921aa3b856da02f63e93915b84fc..09aa1b2604d414a9b5c510d9292f539e48b98fcc 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -7,8 +7,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
 
 ## [Unreleased]
 
-This is an important security update.
-
 ### Added
 
 ### Changed
@@ -21,10 +19,10 @@ This is an important security update.
 
 * Wrong serialization of date time values in the GRPC-API (resulting in
   org.caosdb.server.datatime@12347abcd or similar).
+* Missing serialization of file descriptors in the GRPC-API during retrievals.
 
 ### Security
 
-
 ## [v0.7.1] - 2021-12-13
 (Timm Fitschen)
 
diff --git a/src/main/java/org/caosdb/server/grpc/CaosDBToGrpcConverters.java b/src/main/java/org/caosdb/server/grpc/CaosDBToGrpcConverters.java
index 168b90d81e2643e7742360a79b25eb5767cf618f..8b93acc9947d262ecdbae85ffd76883162b32c9e 100644
--- a/src/main/java/org/caosdb/server/grpc/CaosDBToGrpcConverters.java
+++ b/src/main/java/org/caosdb/server/grpc/CaosDBToGrpcConverters.java
@@ -35,6 +35,7 @@ import org.caosdb.api.entity.v1.EntityPermissionRule;
 import org.caosdb.api.entity.v1.EntityPermissionRuleCapability;
 import org.caosdb.api.entity.v1.EntityResponse;
 import org.caosdb.api.entity.v1.EntityRole;
+import org.caosdb.api.entity.v1.FileDescriptor;
 import org.caosdb.api.entity.v1.Importance;
 import org.caosdb.api.entity.v1.ListDataType;
 import org.caosdb.api.entity.v1.MessageCode;
@@ -61,6 +62,7 @@ import org.caosdb.server.datatype.ReferenceValue;
 import org.caosdb.server.datatype.TextDatatype;
 import org.caosdb.server.datatype.Value;
 import org.caosdb.server.entity.EntityInterface;
+import org.caosdb.server.entity.FileProperties;
 import org.caosdb.server.entity.MagicTypes;
 import org.caosdb.server.entity.Message;
 import org.caosdb.server.entity.Role;
@@ -131,6 +133,9 @@ public class CaosDBToGrpcConverters {
     if (from.hasParents()) {
       entityBuilder.addAllParents(convert(from.getParents()));
     }
+    if (from.hasFileProperties()) {
+      entityBuilder.setFileDescriptor(convert(from.getFileProperties()));
+    }
 
     final EntityResponse.Builder responseBuilder = EntityResponse.newBuilder();
     responseBuilder.setEntity(entityBuilder);
@@ -140,6 +145,13 @@ public class CaosDBToGrpcConverters {
     return responseBuilder;
   }
 
+  private FileDescriptor.Builder convert(FileProperties fileProperties) {
+    FileDescriptor.Builder result = FileDescriptor.newBuilder();
+    result.setPath(fileProperties.getPath());
+    result.setSize(fileProperties.getSize());
+    return result;
+  }
+
   private EntityRole convert(final Role role) {
     switch (role) {
       case RecordType:
diff --git a/src/main/java/org/caosdb/server/grpc/GrpcToCaosDBConverters.java b/src/main/java/org/caosdb/server/grpc/GrpcToCaosDBConverters.java
index 5420a8d8e809194ce2dbe894faaded794cc3a632..582edb2dbde739f55ecbf15aca0747a16dd87e13 100644
--- a/src/main/java/org/caosdb/server/grpc/GrpcToCaosDBConverters.java
+++ b/src/main/java/org/caosdb/server/grpc/GrpcToCaosDBConverters.java
@@ -125,7 +125,7 @@ public class GrpcToCaosDBConverters {
     if (from.getParentsCount() > 0) {
       entity.getParents().addAll(convertParents(from.getParentsList()));
     }
-    if (from.hasFileDescriptor()) {
+    if (entity.getRole() == Role.File && from.hasFileDescriptor()) {
       entity.setFileProperties(convert(from.getFileDescriptor()));
     }
     return entity;
diff --git a/src/test/java/org/caosdb/server/grpc/CaosDBToGrpcConvertersTest.java b/src/test/java/org/caosdb/server/grpc/CaosDBToGrpcConvertersTest.java
index 445ec01880b3468b7800ed332a45824f561b7a9c..6b21c9b1a5aa4afbe4b018029bf938ae2edd997e 100644
--- a/src/test/java/org/caosdb/server/grpc/CaosDBToGrpcConvertersTest.java
+++ b/src/test/java/org/caosdb/server/grpc/CaosDBToGrpcConvertersTest.java
@@ -6,6 +6,8 @@ import static org.junit.Assert.assertNull;
 import java.util.TimeZone;
 import org.caosdb.datetime.DateTimeFactory2;
 import org.caosdb.server.datatype.Value;
+import org.caosdb.server.entity.FileProperties;
+import org.caosdb.server.entity.RetrieveEntity;
 import org.junit.Test;
 
 public class CaosDBToGrpcConvertersTest {
@@ -40,4 +42,15 @@ public class CaosDBToGrpcConvertersTest {
         converters.convertScalarValue(value).toString(),
         "string_value: \"2022-12-24T16:15:00.999999+0000\"\n");
   }
+
+  @Test
+  public void testConvertEntity_FileDescriptor() {
+    RetrieveEntity entity = new RetrieveEntity(null);
+    CaosDBToGrpcConverters converters = new CaosDBToGrpcConverters(null);
+    assertEquals(converters.convert(entity).toString(), "entity {\n}\n");
+    entity.setFileProperties(new FileProperties("checksum1234", "the/path", 1024L));
+    assertEquals(
+        converters.convert(entity).toString(),
+        "entity {\n  file_descriptor {\n    path: \"the/path\"\n    size: 1024\n  }\n}\n");
+  }
 }