diff --git a/src/armet/query.py b/src/armet/query.py
index <HASH>..<HASH> 100644
--- a/src/armet/query.py
+++ b/src/armet/query.py
@@ -215,4 +215,4 @@ def parse(querystring):
     # Break up partitions in the querystring
     segments = querystring.split(PARAM_SEP)
 
-    return [parse_segment(x) for x in segments]
+    return QueryList(parse_segment(x) for x in segments)
diff --git a/src/armet/resources/base.py b/src/armet/resources/base.py
index <HASH>..<HASH> 100644
--- a/src/armet/resources/base.py
+++ b/src/armet/resources/base.py
@@ -357,6 +357,9 @@ class BaseResource(object):
         # Set some defaults so we can reference this later
         self.encoder = None
 
+        #! A list of query.Query objects representing the query parameters
+        self.query = query.parse(self.request.META['QUERY_STRING'])
+
         #! This is the form instance that is constructed during the clean
         #! and validation cycle.
         self._form = None
Add the query list to the resource on construction