diff --git a/vas/rest/ws/vitis/Modes.class.inc b/vas/rest/ws/vitis/Modes.class.inc
index c838ebe1c37627b79b3783a89d8f601904e94653..4aaac5746263a46829e127c76899a297e0e522eb 100644
--- a/vas/rest/ws/vitis/Modes.class.inc
+++ b/vas/rest/ws/vitis/Modes.class.inc
@@ -9,7 +9,7 @@
  * 	\brief This file contains the Modes php class
  *
  * This class defines Rest Api to Vitis modes
- * 
+ *
  */
 require_once 'Vitis.class.inc';
 require_once __DIR__ . '/../../class/vitis_lib/Connection.class.inc';
@@ -132,8 +132,8 @@ class Modes extends Vitis {
     function GET() {
         if ($this->oConnection->oError == null) {
             if (!empty($this->aProperties["public_token"]) && $this->aProperties["allow_public_connection"] === true){
-                if($this->aProperties["public_token"] === $this->aValues['token']){
-                    $this->aValues["filter"] = '{"relation": "AND","operators":[{"column": "mode_id","compare_operator": "<>","value": "user"}]}';
+                if($this->aProperties["public_token"] === $this->aValues['token']) {
+                    $this->aValues["filter"] = $this->getPublicUserFilter();
                 }
             }
             if (isset($this->aValues['action']) && !empty($this->aValues['action'])) {
@@ -170,6 +170,34 @@ class Modes extends Vitis {
         return $sMessage;
     }
 
+    /**
+     * Get the public user JSON filter
+     *
+     * @return {type}  string
+     */
+    function getPublicUserFilter(){
+
+        $aFilter = array(
+            'relation' => 'AND',
+            'operators' => array()
+        );
+
+        // Filtre passé dans l'URL
+        if (!empty($this->aValues["filter"])) {
+            $aRequestFilter = json_decode($this->aValues["filter"]);
+            array_push($aFilter['operators'], $aRequestFilter);
+        }
+
+        // Filtre public_user
+        array_push($aFilter['operators'], array(
+            'column' => 'mode_id',
+            'compare_operator' => '<>',
+            'value' => 'user'
+        ));
+
+        return json_encode($aFilter);
+    }
+
     /**
      * @SWG\Put(path="/modes/sorting",
      *   tags={"Modes"},
@@ -235,4 +263,4 @@ class Modes extends Vitis {
 
 }
 
-?>
\ No newline at end of file
+?>