diff --git a/run.py b/run.py
index 9ed918fd038a911644475cb6f7255f745b1076e6..c32c1b8151b4ebd228db700254e2b8e7d345e2ab 100644
--- a/run.py
+++ b/run.py
@@ -18,6 +18,14 @@ app = create_app(config_name)
 app.config['SECRET_KEY'] = vars.key
 socketio = SocketIO(app, message_queue= vars.message_queue)
 
+
+user_data = {
+    'username' : username
+    'fullname' : fullname
+    'reason' :  reason
+    'session' : room
+}
+
 @socketio.on('connect')
 def socket_connect():
     pass
@@ -39,7 +47,7 @@ def request_account(json, methods=['GET', 'POST']):
     room = str(session['uid'])
     print("Room: {}".format(room))
     try:
-        tasks.celery_create_account.delay(json['username'], json['fullname'], json['reason'], session=room)
+        tasks.celery_create_account.delay(user_data)
     except Exception as e:
         print(time.strftime("%m-%d-%Y_%H:%M:%S") + "\tError in account creation: ", e)
         socketio.emit("Account creation failed", room)
diff --git a/tasks.py b/tasks.py
index 7deec3a983efced1851970ae9359b17d211862ae..d995d41784ab5b1e2cbe73845f53cd639b29f535 100644
--- a/tasks.py
+++ b/tasks.py
@@ -19,8 +19,11 @@ def send_msg(event, room):
 
 
 @celery.task
-def celery_create_account(username, fullname, reason, session):
-    room = session
+def celery_create_account(user_data):
+    username =  user_data.username
+    fullname = user_data.fullname
+    reason = user_data.reason
+    room = user_data.session
     print(time.strftime("%m-%d-%Y_%H:%M:%S") + '\tUser ' + username + ' added to queue')
     send_msg('creating account', room)
     print(username)