diff --git a/scripts/surveys/groups.csv b/scripts/surveys/groups.csv
index 187bb10b4e3ef7fb58227f0da05d79e62f521727..5a2b524b19246be0dbd0e894aab6b6aeb1fdb59a 100644
--- a/scripts/surveys/groups.csv
+++ b/scripts/surveys/groups.csv
@@ -8,4 +8,4 @@ id,title,demo,options
 13,APVT-fr-0.1-27i-B1,false,1031,1032,1033,1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060
 14,APVT-fr-0.1-23i-B2,false,1061,1062,1063,1065,1066,1067,1068,1069,1071,1073,1076,1077,1078,1079,1080,1081,1083,1084,1085,1087,1088,1089,1090
 15,APVT-fr-0.1-15i-C1,false,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103,1104,1105
-1100,basic-survey-questions,false,
\ No newline at end of file
+1100,basic-survey-questions,false,
diff --git a/scripts/surveys/survey_maker.py b/scripts/surveys/survey_maker.py
index f229cc9173bab05e69eae515c3295aa8399daa8b..9cc6f13009533b1d5e1d30d5c2354170b013a3e5 100644
--- a/scripts/surveys/survey_maker.py
+++ b/scripts/surveys/survey_maker.py
@@ -3,6 +3,7 @@ import requests
 import os
 
 API_URL = input("APP (API) URL: ")
+API_PATH = "/tmp-api/v1"
 LOCAL_ITEMS_FOLDER = "../../frontend/static/surveys/items"
 REMOTE_ITEMS_FOLDER = "/surveys/items"
 
@@ -63,7 +64,7 @@ with open("groups.csv") as file:
         id_, title, demo_, *its = line.split(",")
         id_ = int(id_)
         demo_ = True if demo_.lower() == "true" else False
-        its = [int(x) for x in its]
+        its = [int(x) for x in its if x]
         groups.append({"id": id_, "title": title, "demo": demo_, "items_id": its})
 
 # PARSE SURVEYS
@@ -76,7 +77,7 @@ with open("surveys.csv") as file:
             continue
         id_, title, *gps = line.split(",")
         id_ = int(id_)
-        gps = [int(x) for x in gps]
+        gps = [int(x) for x in gps if x]
         surveys.append({"id": id_, "title": title, "groups_id": gps})
 
 # SESSION DATA
@@ -86,84 +87,99 @@ password = input("Password: ")
 
 session = requests.session()
 
+response_code = session.post(
+    f"{API_URL}{API_PATH}/auth/login", json={"email": username, "password": password}
+).status_code
+
 assert (
-    session.post(
-        API_URL + "/api/v1/auth/login", data={"email": username, "password": password}
-    ).status_code
-    == 200
-), "Wrong username or password"
+    response_code == 200
+), f"Probably wrong username or password. Status code: {response_code}"
 
 # CREATE ITEMS
 
+n_items = 0
+
 for item in items:
     assert session.delete(
-        f'{API_URL}/api/v1/surveys/items/{item["id"]}'
+        f'{API_URL}{API_PATH}/surveys/items/{item["id"]}'
     ).status_code in [404, 204], f'Failed to delete item {item["id"]}'
-    r = session.post(f"{API_URL}/api/v1/surveys/items", json=item)
+    r = session.post(f"{API_URL}{API_PATH}/surveys/items", json=item)
     if r.status_code not in [201]:
         print(f'Failed to create item {item["id"]}: {r.text}')
-        break
+        continue
+    else:
+        n_items += 1
 else:
-    print(f"Successfully created {len(items)} items")
+    print(f"Successfully created {n_items}/{len(items)} items")
 
 # CREATE GROUPS
 
+n_groups = 0
+
 for group in groups:
     group = group.copy()
     its = group.pop("items_id")
     assert session.delete(
-        f'{API_URL}/api/v1/surveys/groups/{group["id"]}'
+        f'{API_URL}{API_PATH}/surveys/groups/{group["id"]}'
     ).status_code in [404, 204], f'Failed to delete group {group["id"]}'
-    r = session.post(f"{API_URL}/api/v1/surveys/groups", json=group)
+    r = session.post(f"{API_URL}{API_PATH}/surveys/groups", json=group)
     if r.status_code not in [201]:
         print(f'Failed to create group {group["id"]}: {r.text}')
-        break
+        continue
+    else:
+        n_groups += 1
 
     for it in its:
         assert session.delete(
-            f'{API_URL}/api/v1/surveys/groups/{group["id"]}/items/{it}'
+            f'{API_URL}{API_PATH}/surveys/groups/{group["id"]}/items/{it}'
         ).status_code in [
             404,
             204,
         ], f'Failed to delete item {it} from group {group["id"]}'
         r = session.post(
-            f'{API_URL}/api/v1/surveys/groups/{group["id"]}/items',
+            f'{API_URL}{API_PATH}/surveys/groups/{group["id"]}/items',
             json={"question_id": it},
         )
         if r.status_code not in [201]:
             print(f'Failed to add item {it} to group {group["id"]}: {r.text}')
-            break
+            continue
 
 else:
-    print(f"Successfully created {len(groups)} groups")
+    print(f"Successfully created {n_groups}/{len(groups)} groups")
 
 # CREATE SURVEYS
 
+n_surveys = 0
+
 for survey in surveys:
     survey = survey.copy()
     gps = survey.pop("groups_id")
-    assert session.delete(f'{API_URL}/api/v1/surveys/{survey["id"]}').status_code in [
+    assert session.delete(
+        f'{API_URL}{API_PATH}/surveys/{survey["id"]}'
+    ).status_code in [
         404,
         204,
     ], f'Failed to delete survey {survey["id"]}'
-    r = session.post(f"{API_URL}/api/v1/surveys", json=survey)
+    r = session.post(f"{API_URL}{API_PATH}/surveys", json=survey)
     if r.status_code not in [201]:
         print(f'Failed to create suvey {survey["id"]}: {r.text}')
-        break
+        continue
+    else:
+        n_surveys += 1
 
     for gp in gps:
         assert session.delete(
-            f'{API_URL}/api/v1/surveys/{survey["id"]}/groups/{gp}'
+            f'{API_URL}{API_PATH}/surveys/{survey["id"]}/groups/{gp}'
         ).status_code in [
             404,
             204,
         ], f'Failed to delete gp {gp} from survey {survey["id"]}'
         r = session.post(
-            f'{API_URL}/api/v1/surveys/{survey["id"]}/groups', json={"group_id": gp}
+            f'{API_URL}{API_PATH}/surveys/{survey["id"]}/groups', json={"group_id": gp}
         )
         if r.status_code not in [201]:
             print(f'Failed to add group {gp} to survey {survey["id"]}: {r.text}')
             break
 
 else:
-    print(f"Successfully created {len(groups)} surveys")
+    print(f"Successfully created {n_surveys}/{len(surveys)} surveys")