diff --git a/program/views.py b/program/views.py
index 38c91b7a85e7ce48aedd40c4f3e81206b25c0f24..9d5304fddf4006d750f93499393382db686a3930 100644
--- a/program/views.py
+++ b/program/views.py
@@ -285,7 +285,9 @@ class APIUserViewSet(
         if not request.user.is_superuser:
             return Response(status=status.HTTP_401_UNAUTHORIZED)
 
-        serializer = UserSerializer(data=request.data)
+        serializer = UserSerializer(
+            context={"request": request},  # the serializer needs the request in the context
+            data=request.data)
 
         if serializer.is_valid():
             serializer.save()