diff --git a/src/main/java/org/hbp/mip/controllers/MiningApi.java b/src/main/java/org/hbp/mip/controllers/MiningApi.java
index 6a75c5f19f651715a86c4699d7810661a2c8ac5d..2fc2882d7ee1a9e401c02b879dcb598a1dcb9407 100644
--- a/src/main/java/org/hbp/mip/controllers/MiningApi.java
+++ b/src/main/java/org/hbp/mip/controllers/MiningApi.java
@@ -72,7 +72,7 @@ public class MiningApi {
     @RequestMapping(path = "/exareme/query/{algo}", method = RequestMethod.POST)
     public ResponseEntity<String> postExaremeQuery(
             @ApiParam(value = "algo", required = true) @PathVariable("algo") String algo,
-            @RequestBody @ApiParam(value = "Query for the data mining", required = true) String query
+            @RequestBody(required = false) @ApiParam(value = "Query for the data mining") String query
     ) throws Exception {
         try {
 
@@ -134,14 +134,17 @@ public class MiningApi {
 
         if(!httpVerb.equals("GET")) {
             con.setRequestMethod(httpVerb);
-            con.addRequestProperty("Content-Type", "application/json");
-            con.setRequestProperty("Content-Length", Integer.toString(query.length()));
-
-            con.setDoOutput(true);
-            DataOutputStream wr = new DataOutputStream(con.getOutputStream());
-            wr.write(query.getBytes("UTF8"));
-            wr.flush();
-            wr.close();
+            if(query != null && query.length() > 0)
+            {
+                con.addRequestProperty("Content-Type", "application/json");
+                con.setRequestProperty("Content-Length", Integer.toString(query.length()));
+
+                con.setDoOutput(true);
+                DataOutputStream wr = new DataOutputStream(con.getOutputStream());
+                wr.write(query.getBytes("UTF8"));
+                wr.flush();
+                wr.close();
+            }
         }
 
         int respCode = con.getResponseCode();