diff --git a/rest-api/src/main/java/lcsb/mapviewer/api/project/ProjectRestImpl.java b/rest-api/src/main/java/lcsb/mapviewer/api/project/ProjectRestImpl.java
index 6d2eaf034750cc5c5f9dc2116ec88646f3a53974..bd7c92feabfa2924c388e7f2b0f5b337a33d2093 100644
--- a/rest-api/src/main/java/lcsb/mapviewer/api/project/ProjectRestImpl.java
+++ b/rest-api/src/main/java/lcsb/mapviewer/api/project/ProjectRestImpl.java
@@ -62,6 +62,7 @@ import lcsb.mapviewer.model.map.reaction.Product;
 import lcsb.mapviewer.model.map.reaction.Reactant;
 import lcsb.mapviewer.model.map.reaction.Reaction;
 import lcsb.mapviewer.model.map.species.Element;
+import lcsb.mapviewer.model.map.species.Species;
 import lcsb.mapviewer.model.user.User;
 import lcsb.mapviewer.services.SecurityException;
 import lcsb.mapviewer.services.UserAccessException;
@@ -375,6 +376,16 @@ public class ProjectRestImpl {
 				value = element.getFullName();
 			} else if (column.equals("abbreviation")) {
 				value = element.getAbbreviation();
+			} else if (column.equals("compartmentid")) {
+				if (element.getCompartment() != null) {
+					value = element.getCompartment().getId();
+				}
+			} else if (column.equals("complexid")) {
+				if (element instanceof Species) {
+					if (((Species) element).getComplex() != null) {
+						value = ((Species) element).getComplex().getId();
+					}
+				}
 			} else if (column.equals("references")) {
 				value = annotationViewFactory.createList(element.getMiriamData());
 			} else if (column.equals("synonyms")) {
@@ -407,6 +418,8 @@ public class ProjectRestImpl {
 			columnsSet.add("description");
 			columnsSet.add("type");
 			columnsSet.add("symbol");
+			columnsSet.add("complexId");
+			columnsSet.add("compartmentId");
 			columnsSet.add("fullName");
 			columnsSet.add("abbreviation");
 			columnsSet.add("formula");