diff --git a/src/main/java/org/hbp/mip/controllers/ArticlesApi.java b/src/main/java/org/hbp/mip/controllers/ArticlesApi.java
index 211ef661d8dfc29aab7f501c665aa3b2d2d8688f..1430e00ab85d633f266359d4ac223b62f9d722aa 100644
--- a/src/main/java/org/hbp/mip/controllers/ArticlesApi.java
+++ b/src/main/java/org/hbp/mip/controllers/ArticlesApi.java
@@ -9,6 +9,7 @@ import io.swagger.annotations.*;
 import org.hbp.mip.MIPApplication;
 import org.hbp.mip.model.Article;
 import org.hbp.mip.model.User;
+import org.hibernate.Query;
 import org.hibernate.Session;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.ResponseEntity;
@@ -37,9 +38,23 @@ public class ArticlesApi {
             @ApiParam(value = "Only ask results matching status") @RequestParam(value = "status", required = false) String status,
             @ApiParam(value = "Only ask articles from own team") @RequestParam(value = "team", required = false) Boolean team,
             @ApiParam(value = "Only ask valid articles") @RequestParam(value = "valid", required = false) Boolean valid) throws NotFoundException {
+
+        String queryString = "from Article";
+        if(status != null)
+        {
+            queryString += " where status= :status";
+        }
+
         Session session = HibernateUtil.getSessionFactory().getCurrentSession();
         session.beginTransaction();
-        List<Article> articles = session.createQuery("from Article").list();
+        Query query = session.createQuery(queryString);
+
+        if(status != null)
+        {
+            query.setString("status", status);
+        }
+
+        List<Article> articles = query.list();
         session.getTransaction().commit();
         return new ResponseEntity<List<Article>>(HttpStatus.OK).ok(articles);
     }