diff --git a/src/Project.Tests/DefaultControllerTests.cs b/src/Project.Tests/DefaultControllerTests.cs
index 8161f62459ab1e34e8c1eb4fb6611cbebead6caa..a1dc175942074d8e8bd88235d9256768209a4f01 100644
--- a/src/Project.Tests/DefaultControllerTests.cs
+++ b/src/Project.Tests/DefaultControllerTests.cs
@@ -89,6 +89,7 @@ namespace Coscine.Api.Project.Tests
 
             var user = new User()
             {
+                Id = Guid.NewGuid(),
                 DisplayName = "TestUser",
                 EmailAddress = null,
             };
diff --git a/src/Project.Tests/ProjectControllerTests.cs b/src/Project.Tests/ProjectControllerTests.cs
index 4e87f7df91b3ce60f3815e108377c535a9dbda33..3c78d8298b76cae177e62cd4bf32df7010b19f16 100644
--- a/src/Project.Tests/ProjectControllerTests.cs
+++ b/src/Project.Tests/ProjectControllerTests.cs
@@ -114,10 +114,23 @@ namespace Coscine.Api.Project.Tests
         //[Test]
         public void TestControllerStore()
         {
-            ProjectObject newProjectObject = new ProjectObject(Guid.NewGuid(), "NewProject", "NewDisplayName", DateTime.Now, DateTime.Now.AddYears(1), "test2;test3", "abc", "investigator", "grandId",
-                                                                new List<DisciplineObject>() { new DisciplineObject(Discipline.Id, Discipline.Url, Discipline.DisplayNameDe, Discipline.DisplayNameEn) },
-                                                                new List<OrganizationObject>() { new OrganizationObject(Organization, Organization) },
-                                                                new VisibilityObject(Visibility.Id, Visibility.DisplayName), Guid.NewGuid().ToString());
+            ProjectObject newProjectObject = new ProjectObject(
+                Guid.NewGuid(),
+                "NewProject",
+                "NewDisplayName",
+                DateTime.Now,
+                DateTime.Now.AddYears(1),
+                "test2;test3",
+                "abc",
+                "investigator",
+                "grandId",
+                new List<DisciplineObject>() { new DisciplineObject(Discipline.Id, Discipline.Url, Discipline.DisplayNameDe, Discipline.DisplayNameEn) },
+                new List<OrganizationObject>() { new OrganizationObject(Organization, Organization) },
+                new VisibilityObject(Visibility.Id, Visibility.DisplayName), Guid.NewGuid().ToString(),
+                DateTime.Now,
+                Guid.NewGuid(),
+                Users[0].Id
+                );
 
             var stream = ObjectFactory<ProjectObject>.SerializeToStream(newProjectObject);
 
@@ -148,10 +161,22 @@ namespace Coscine.Api.Project.Tests
         //[Test]
         public void TestControllerDelete()
         {
-            ProjectObject newProjectObject = new ProjectObject(Guid.NewGuid(), "NewProject", "NewDisplayName", DateTime.Now, DateTime.Now.AddYears(1), "test2;test3", "abc", "investigator", "grandId",
-                                                                new List<DisciplineObject>() { new DisciplineObject(Discipline.Id, Discipline.Url, Discipline.DisplayNameDe, Discipline.DisplayNameEn) },
-                                                                new List<OrganizationObject>() { new OrganizationObject(Organization, Organization) },
-                                                                new VisibilityObject(Visibility.Id, Visibility.DisplayName), Guid.NewGuid().ToString());
+            ProjectObject newProjectObject = new ProjectObject(
+                Guid.NewGuid(), 
+                "NewProject", 
+                "NewDisplayName", 
+                DateTime.Now, 
+                DateTime.Now.AddYears(1), 
+                "test2;test3", 
+                "abc", 
+                "investigator", 
+                "grandId",
+                new List<DisciplineObject>() { new DisciplineObject(Discipline.Id, Discipline.Url, Discipline.DisplayNameDe, Discipline.DisplayNameEn) },
+                new List<OrganizationObject>() { new OrganizationObject(Organization, Organization) },
+                new VisibilityObject(Visibility.Id, Visibility.DisplayName), Guid.NewGuid().ToString(),
+                DateTime.Now,
+                creator: Users[0].Id
+                );
 
             var stream = ObjectFactory<ProjectObject>.SerializeToStream(newProjectObject);
 
@@ -186,10 +211,22 @@ namespace Coscine.Api.Project.Tests
         //[Test]
         public void TestControllerDeleteWithSubProjects()
         {
-            ProjectObject newProjectObject = new ProjectObject(Guid.NewGuid(), "NewProject", "NewDisplayName", DateTime.Now, DateTime.Now.AddYears(1), "test2;test3", "abc", "investigator", "grandId",
-                                                                new List<DisciplineObject>() { new DisciplineObject(Discipline.Id, Discipline.Url, Discipline.DisplayNameDe, Discipline.DisplayNameEn) },
-                                                                new List<OrganizationObject>() { new OrganizationObject(Organization, Organization) },
-                                                                new VisibilityObject(Visibility.Id, Visibility.DisplayName), Guid.NewGuid().ToString());
+            ProjectObject newProjectObject = new ProjectObject(
+                Guid.NewGuid(), 
+                "NewProject", 
+                "NewDisplayName", 
+                DateTime.Now, 
+                DateTime.Now.AddYears(1), 
+                "test2;test3", 
+                "abc", 
+                "investigator", 
+                "grandId",
+                new List<DisciplineObject>() { new DisciplineObject(Discipline.Id, Discipline.Url, Discipline.DisplayNameDe, Discipline.DisplayNameEn) },
+                new List<OrganizationObject>() { new OrganizationObject(Organization, Organization) },
+                new VisibilityObject(Visibility.Id, Visibility.DisplayName), Guid.NewGuid().ToString(),
+                DateTime.Now,
+                creator: Users[0].Id
+                );
 
             var stream = ObjectFactory<ProjectObject>.SerializeToStream(newProjectObject);
 
@@ -201,11 +238,23 @@ namespace Coscine.Api.Project.Tests
             ProjectObject createdProjectObject = (ProjectObject)result.Value;
             stream.Close();
 
-            newProjectObject = new ProjectObject(Guid.NewGuid(), "NewProject", "NewDisplayName", DateTime.Now, DateTime.Now.AddYears(1), "test2;test3", "abc", "investigator", "grandId",
-                                                                new List<DisciplineObject>() { new DisciplineObject(Discipline.Id, Discipline.Url, Discipline.DisplayNameDe, Discipline.DisplayNameEn) },
-                                                                new List<OrganizationObject>() { new OrganizationObject(Organization, Organization) },
-                                                                new VisibilityObject(Visibility.Id, Visibility.DisplayName), Guid.NewGuid().ToString(),
-                                                                createdProjectObject.Id);
+            newProjectObject = new ProjectObject(
+                Guid.NewGuid(), 
+                "NewProject", 
+                "NewDisplayName", 
+                DateTime.Now, 
+                DateTime.Now.AddYears(1), 
+                "test2;test3", 
+                "abc", 
+                "investigator", 
+                "grandId",
+                new List<DisciplineObject>() { new DisciplineObject(Discipline.Id, Discipline.Url, Discipline.DisplayNameDe, Discipline.DisplayNameEn) },
+                new List<OrganizationObject>() { new OrganizationObject(Organization, Organization) },
+                new VisibilityObject(Visibility.Id, Visibility.DisplayName), Guid.NewGuid().ToString(),
+                DateTime.Now,
+                createdProjectObject.Id,
+                Users[0].Id
+                );
 
             stream = ObjectFactory<ProjectObject>.SerializeToStream(newProjectObject);
 
@@ -233,10 +282,23 @@ namespace Coscine.Api.Project.Tests
         //[Test]
         public void TestControllerStoreWithSubProject()
         {
-            ProjectObject newProjectObject = new ProjectObject(Guid.NewGuid(), "NewProject", "NewDisplayName", DateTime.Now, DateTime.Now.AddYears(1), "test2;test3", "abc", "investigator", "grandId",
-                                                                    new List<DisciplineObject>() { new DisciplineObject(Discipline.Id, Discipline.Url, Discipline.DisplayNameDe, Discipline.DisplayNameEn) },
-                                                                    new List<OrganizationObject>() { new OrganizationObject(Organization, Organization) },
-                                                                    new VisibilityObject(Visibility.Id, Visibility.DisplayName), Guid.NewGuid().ToString());
+            ProjectObject newProjectObject = new ProjectObject(
+                Guid.NewGuid(),
+                "NewProject",
+                "NewDisplayName",
+                DateTime.Now,
+                DateTime.Now.AddYears(1),
+                "test2;test3",
+                "abc",
+                "investigator",
+                "grandId",
+                new List<DisciplineObject>() { new DisciplineObject(Discipline.Id, Discipline.Url, Discipline.DisplayNameDe, Discipline.DisplayNameEn) },
+                new List<OrganizationObject>() { new OrganizationObject(Organization, Organization) },
+                new VisibilityObject(Visibility.Id, Visibility.DisplayName), Guid.NewGuid().ToString(),
+                DateTime.Now,
+                Guid.NewGuid(),
+                Users[0].Id
+                );
 
             var stream = ObjectFactory<ProjectObject>.SerializeToStream(newProjectObject);
             FakeControllerContext(Users[0], stream);
@@ -245,11 +307,23 @@ namespace Coscine.Api.Project.Tests
             JsonResult result = (JsonResult)actionResult;
             ProjectObject createdProjectObject = (ProjectObject)result.Value;
 
-            ProjectObject newSubProjectObject = new ProjectObject(Guid.NewGuid(), "NewSubProject", "NewDisplayNameSub", DateTime.Now, DateTime.Now.AddYears(1), "test2;test3", "abc", "investigator", "grandId",
-                                                                        new List<DisciplineObject>() { new DisciplineObject(Discipline.Id, Discipline.Url, Discipline.DisplayNameDe, Discipline.DisplayNameEn) },
-                                                                        new List<OrganizationObject>() { new OrganizationObject(Organization, Organization) },
-                                                                        new VisibilityObject(Visibility.Id, Visibility.DisplayName), Guid.NewGuid().ToString(),
-                                                                        createdProjectObject.Id);
+            ProjectObject newSubProjectObject = new ProjectObject(
+                Guid.NewGuid(),
+                "NewProject",
+                "NewDisplayName",
+                DateTime.Now,
+                DateTime.Now.AddYears(1),
+                "test2;test3",
+                "abc",
+                "investigator",
+                "grandId",
+                new List<DisciplineObject>() { new DisciplineObject(Discipline.Id, Discipline.Url, Discipline.DisplayNameDe, Discipline.DisplayNameEn) },
+                new List<OrganizationObject>() { new OrganizationObject(Organization, Organization) },
+                new VisibilityObject(Visibility.Id, Visibility.DisplayName), Guid.NewGuid().ToString(),
+                DateTime.Now,
+                createdProjectObject.Id,
+                Users[0].Id
+                );
 
             var subStream = ObjectFactory<ProjectObject>.SerializeToStream(newSubProjectObject);
             FakeControllerContext(Users[0], subStream);