diff --git a/pwm/pwm.py b/pwm/pwm.py
index 248efca8c5aa1537845d72fb9ff5c3438e60095f..0e3606577ce0e72400940bc3bdb31e1beca4e868 100755
--- a/pwm/pwm.py
+++ b/pwm/pwm.py
@@ -101,6 +101,17 @@ class Gitlab:
             else:
                 print("Group " + group_id + " successfully deleted")
 
+    def get_user_id(self, user: User) -> str | None:
+        headers = {"PRIVATE-TOKEN": self.token}
+        res = requests.get(
+            BASE_API_URL + "/users", params={"search": user.id}, headers=headers
+        )
+        if res.status_code != 200:
+            print(f"Error searching user {user.id}")
+            print(res.text)
+        else:
+            return res.json()[0]["id"]
+
     def create_repository(
         self,
         group_id: str,
@@ -119,6 +130,7 @@ class Gitlab:
         params = {"name": name, "namespace_id": group_id, "visibility": "private"}
         if import_url:
             params["import_url"] = import_url
+
         project = requests.post(
             BASE_API_URL + "/projects", params=params, headers=headers
         ).json()
@@ -144,18 +156,21 @@ class Gitlab:
 
         # Add each student as maintainer (level 40)
         for user in users:
-            print(user)
-            params = {"user_id": user.id, "access_level": access_level}
+            user_id = self.get_user_id(user)
+            if user_id is None:
+                print(f"ERROR: User {user.id} will not be added to project: {name}")
+            params = {"user_id": user_id, "access_level": access_level}
             if expires_at:
                 params["expires_at"] = expires_at
-            new_user = requests.post(
+            res = requests.post(
                 BASE_API_URL + "/projects/" + str(project["id"]) + "/members",
                 params=params,
                 headers=headers,
-            ).json()
-            if "message" in new_user:
-                print("Error in adding user: %s" % new_user)
+            )
+            if res.status_code != 201:
+                print(res.text)
             else:
+                new_user = res.json()
                 out = (
                     "Adding '"
                     + new_user["name"]