diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/api/v1/PutDataSetService.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/api/v1/PutDataSetService.java
index 383fb6a688fed48b7f976eb4e402e9687f07490c..343b8263e34787c57265cd33829f2e1a2825822f 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/api/v1/PutDataSetService.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/api/v1/PutDataSetService.java
@@ -142,13 +142,19 @@ public class PutDataSetService
             List<DataSetInformation> infos =
                     new PutDataSetExecutor(this, thePlugin, sessionToken, newDataSet, inputStream)
                             .execute();
-            if (infos.isEmpty())
+            StringBuilder sb = new StringBuilder();
+            for (DataSetInformation info : infos)
             {
-                return "";
-            } else
+                sb.append(info.getDataSetCode());
+                sb.append(",");
+            }
+
+            // Remove the trailing comma
+            if (sb.length() > 0)
             {
-                return infos.get(0).getDataSetCode();
+                sb.deleteCharAt(sb.length() - 1);
             }
+            return sb.toString();
         } catch (UserFailureException e)
         {
             throw new IllegalArgumentException(e);