diff --git a/atdb/requirements/base.txt b/atdb/requirements/base.txt
index c52d7065c7e389f671bdbd370b3da06d3a492a40..ac71b471c94cb22ea3a47e7a4ae72571378190e4 100644
--- a/atdb/requirements/base.txt
+++ b/atdb/requirements/base.txt
@@ -1,7 +1,7 @@
 Django==3.1.4
 djangorestframework==3.12.2
 django-filter==2.3.0
-psycopg2==2.8.6
+psycopg2-binary==2.9.3
 django-cors-headers==3.6.0
 django-extensions==3.1.0
 django-bootstrap-pagination==1.7.0
diff --git a/atdb/taskdatabase/urls.py b/atdb/taskdatabase/urls.py
index df6c25f048cace4621a808efa6e70adec0b989d5..e669d7290bd8d656d27c5489250ea1f09df315b4 100644
--- a/atdb/taskdatabase/urls.py
+++ b/atdb/taskdatabase/urls.py
@@ -61,6 +61,9 @@ urlpatterns = [
     path('tasks/get_size/', views.GetSizeView.as_view(), name='get-size-view'),
     # /atdb/get_min_start_and_max_end_time?sas_id=65005
     path('get_min_start_and_max_end_time/', views.GetMinMaxTimeView.as_view(), name='get-min-start-and-max-end-time-view'),
+    # /atdb/get_unique_values_for_key/<aggregation_key>
+    path('get_unique_values_for_key/<str:aggregation_key>', views.GetUniqueValuesForKey.as_view(),
+         name='get-unique-values-for-key-view'),
 
     # --- controller resources ---
     path('tasks/<int:pk>/setstatus/<new_status>/<page>', views.TaskSetStatus, name='task-setstatus-view'),
diff --git a/atdb/taskdatabase/views.py b/atdb/taskdatabase/views.py
index a3542fd6662d4a10495f919d8e2f5fa99c711be1..f71b1d0f09ec58ffeb4b91703fc5d7f1f445177e 100644
--- a/atdb/taskdatabase/views.py
+++ b/atdb/taskdatabase/views.py
@@ -777,6 +777,21 @@ class GetMinMaxTimeView(generics.ListAPIView):
                 'start_time': start_time,
                 'end_time': end_time,
             })
+        except Exception as error:
+            return Response({
+                'error': str(error)
+            })
+
+# /atdb/get_unique_values_for_key/{key}
+class GetUniqueValuesForKey(generics.ListAPIView):
+    queryset = Task.objects.all()
+
+    # override list and generate a custom response
+    def list(self, request, aggregation_key, **kwargs):
+        try:
+            print(aggregation_key)
+            return Response({'aggregation_key': aggregation_key
+            })
         except Exception as error:
             return Response({
                 'error': str(error)