diff --git a/src/main/java/eu/hbp/mip/controllers/ExperimentApi.java b/src/main/java/eu/hbp/mip/controllers/ExperimentApi.java
index ef0155c7d4c955dac8b49c8911aa944278cbad0b..eef1bfe88cb4af066d9dde9d316879a4ad3feeea 100644
--- a/src/main/java/eu/hbp/mip/controllers/ExperimentApi.java
+++ b/src/main/java/eu/hbp/mip/controllers/ExperimentApi.java
@@ -73,28 +73,24 @@ public class ExperimentApi {
 
     @ApiOperation(value = "Send a request to the workflow to run an experiment", response = Experiment.class)
     @RequestMapping(method = RequestMethod.POST)
-    public ResponseEntity<String> runExperiment(@RequestBody ExperimentQuery incomingQueryObj) {
+    public ResponseEntity<String> runExperiment(@RequestBody ExperimentQuery expQuery) {
         LOGGER.info("Run an experiment");
 
-        String incomingQueryString = gson.toJson(incomingQueryObj);
-
-        JsonObject incomingQuery = gsonOnlyExposed.fromJson(incomingQueryString, JsonObject.class);
-
         Experiment experiment = new Experiment();
         experiment.setUuid(UUID.randomUUID());
         User user = securityConfiguration.getUser();
 
-        experiment.setAlgorithms(incomingQuery.get("algorithms").toString());
-        experiment.setValidations(incomingQuery.get("validations").toString());
-        experiment.setName(incomingQuery.get("name").getAsString());
+        experiment.setAlgorithms(gson.toJson(expQuery.getAlgorithms()));
+        experiment.setValidations(gson.toJson(expQuery.getValidations()));
+        experiment.setName(expQuery.getName());
         experiment.setCreatedBy(user);
-        experiment.setModel(modelRepository.findOne(incomingQuery.get("model").getAsString()));
+        experiment.setModel(modelRepository.findOne(expQuery.getModel()));
         experimentRepository.save(experiment);
 
         LOGGER.info("Experiment saved");
 
         try {
-            if(isExaremeAlgo(experiment))
+            if(isExaremeAlgo(expQuery))
             {
                 sendExaremeExperiment(experiment);
             }
@@ -349,10 +345,10 @@ public class ExperimentApi {
         experiment.setResult(e.getMessage());
     }
 
-    private static boolean isExaremeAlgo(Experiment experiment)  {
-        JsonArray algorithms = new JsonParser().parse(experiment.getAlgorithms()).getAsJsonArray();
-        String algoCode = algorithms.get(0).getAsJsonObject().get("code").getAsString();
-        return "glm_exareme".equals(algoCode);
+    private static boolean isExaremeAlgo(ExperimentQuery expQuery)  {
+        if (expQuery.getAlgorithms().size() < 1)
+            return false;
+        return "glm_exareme".equals(expQuery.getAlgorithms().get(0).getCode());
     }
 
 }