diff --git a/src/main/java/no/bioforsk/vips/coremanager/service/ManagerResource.java b/src/main/java/no/bioforsk/vips/coremanager/service/ManagerResource.java
index c6023d6d47ffab4fe49e4b20c8edd4b515d22af8..647f683d0401858bd3733058f3da8dbc58a6556f 100644
--- a/src/main/java/no/bioforsk/vips/coremanager/service/ManagerResource.java
+++ b/src/main/java/no/bioforsk/vips/coremanager/service/ManagerResource.java
@@ -7,10 +7,11 @@ import javax.ws.rs.Path;
 import javax.ws.rs.PathParam;
 import javax.ws.rs.Produces;
 import javax.ws.rs.core.Response;
+import no.bioforsk.vips.entity.ModelRunRequest;
 
 /**
  * Interface for the ManagerResource. Implemented by ManagerResourceImpl
- * in VIPSCoreManager and also as client in VIPSBatch
+ * in VIPSCoreManager and also as client in VIPSLogic
  * @copyright 2013 <a href="http://www.bioforsk.no/">Bioforsk</a>
  * @author Tor-Einar Skog <tor-einar.skog@bioforsk.no>
  */
@@ -36,7 +37,7 @@ public interface ManagerResource {
     @Path("models/{modelId}/run")
     @Consumes("application/json")
     @Produces("application/json")
-    public Response runModel(@PathParam("modelId") String modelId, Map<String,Object> input);
+    public Response runModel(@PathParam("modelId") String modelId, ModelRunRequest request);
     
     
 }
diff --git a/src/main/java/no/bioforsk/vips/entity/ModelConfiguration.java b/src/main/java/no/bioforsk/vips/entity/ModelConfiguration.java
index f833f722eb216c0b885c745a9c7b118377e283e2..5a0f55c8a85688e84f2f3763c25c43cafd4c25c6 100644
--- a/src/main/java/no/bioforsk/vips/entity/ModelConfiguration.java
+++ b/src/main/java/no/bioforsk/vips/entity/ModelConfiguration.java
@@ -14,7 +14,7 @@ import java.util.Map;
 public class ModelConfiguration {
     private String modelId;
     private Map<String, Object> configParameters;
-    
+        
     public ModelConfiguration()
     {
     }
@@ -71,5 +71,5 @@ public class ModelConfiguration {
         this.configParameters = configParameters;
     }
     
-   
+       
 }
diff --git a/src/main/java/no/bioforsk/vips/entity/ModelRunRequest.java b/src/main/java/no/bioforsk/vips/entity/ModelRunRequest.java
new file mode 100644
index 0000000000000000000000000000000000000000..ba4ce50ddb76c215c3445ba7761788b0aa0c77ea
--- /dev/null
+++ b/src/main/java/no/bioforsk/vips/entity/ModelRunRequest.java
@@ -0,0 +1,82 @@
+package no.bioforsk.vips.entity;
+
+import java.util.Map;
+
+/**
+ * @copyright 2013 <a href="http://www.bioforsk.no/">Bioforsk</a>
+ * @author Tor-Einar Skog <tor-einar.skog@bioforsk.no>
+ */
+public class ModelRunRequest {
+    private Map<String, Object> configParameters;
+    private Map<String,String> loginInfo;
+    private String modelId;
+    private Integer batchSystemClientId;
+
+    /**
+     * Dummy constructor for Jackson
+     */
+    public ModelRunRequest(){
+        
+    }
+    
+    public ModelRunRequest(ModelConfiguration config)
+    {
+        this.configParameters = config.getConfigParameters();
+        this.modelId = config.getModelId();
+    }
+    /**
+     * @return the credentials
+     */
+    public Map<String,String> getLoginInfo() {
+        return this.loginInfo;
+    }
+
+    /**
+     * @param credentials the credentials to set
+     */
+    public void setLoginInfo(Map<String,String> loginInfo) {
+        this.loginInfo = loginInfo;
+    }
+
+    /**
+     * @return the batchSystemClientId
+     */
+    public Integer getBatchSystemClientId() {
+        return batchSystemClientId;
+    }
+
+    /**
+     * @param batchSystemClientId the batchSystemClientId to set
+     */
+    public void setBatchSystemClientId(Integer batchSystemClientId) {
+        this.batchSystemClientId = batchSystemClientId;
+    }
+
+    /**
+     * @return the modelId
+     */
+    public String getModelId() {
+        return modelId;
+    }
+
+    /**
+     * @param modelId the modelId to set
+     */
+    public void setModelId(String modelId) {
+        this.modelId = modelId;
+    }
+
+    /**
+     * @return the configParameters
+     */
+    public Map<String, Object> getConfigParameters() {
+        return configParameters;
+    }
+
+    /**
+     * @param configParameters the configParameters to set
+     */
+    public void setConfigParameters(Map<String, Object> configParameters) {
+        this.configParameters = configParameters;
+    }
+}
diff --git a/src/main/java/no/bioforsk/vips/entity/Result.java b/src/main/java/no/bioforsk/vips/entity/Result.java
index 5f9a3daa68d74cfca0d6f6323900bcd634a9f503..4d28dfa1d42363764729acc24589a1ea3eac08ed 100644
--- a/src/main/java/no/bioforsk/vips/entity/Result.java
+++ b/src/main/java/no/bioforsk/vips/entity/Result.java
@@ -3,12 +3,14 @@ package no.bioforsk.vips.entity;
 import java.util.Date;
 import java.util.Map;
 import java.util.Set;
+import org.codehaus.jackson.map.annotate.JsonDeserialize;
 
 /**
  * Represents a result from a model run
  * @copyright 2013 {@link http://www.bioforsk.no Bioforsk}
  * @author Tor-Einar Skog <tor-einar.skog@hyper.no>
  */
+@JsonDeserialize(as=ResultImpl.class)
 public interface Result extends Comparable{
     
     public final static Integer WARNING_STATUS_NO_WARNING = 0;
@@ -28,6 +30,7 @@ public interface Result extends Comparable{
     /* Setting and getting values */
     public void setValue(String key, String value);
     public String getValue(String key);
+    public void setAllValues(Map<String,String> values);
     public Map<String,String> getAllValues();
     
     public void setWarningStatus(Integer warningStatus);
diff --git a/src/main/java/no/bioforsk/vips/entity/ResultImpl.java b/src/main/java/no/bioforsk/vips/entity/ResultImpl.java
index 970ab96acaa1ae4fec325c2e24df98442270f9f8..bf392f6719b5323e13acfa8d9c8843e76e29fbbd 100644
--- a/src/main/java/no/bioforsk/vips/entity/ResultImpl.java
+++ b/src/main/java/no/bioforsk/vips/entity/ResultImpl.java
@@ -13,7 +13,7 @@ import java.util.Set;
 public class ResultImpl implements Result{
     private Date resultValidTime;
     private Set<String> keys;
-    private HashMap<String, String> values;
+    private Map<String, String> values;
     private Integer warningStatus;
 
     @Override
@@ -52,6 +52,11 @@ public class ResultImpl implements Result{
     public Map<String, String> getAllValues() {
         return this.values;
     }
+    
+    @Override
+    public void setAllValues(Map<String, String> values){
+        this.values = values;
+    }
 
     /**
      * Sorting by timestamp