diff --git a/src/Project.Tests/DefaultControllerTests.cs b/src/Project.Tests/DefaultControllerTests.cs
index c7c23c0d14f63817b8d7b37703b661766c7a8ffc..c113a0792b90b8400484bd9fcf671836ef26345d 100644
--- a/src/Project.Tests/DefaultControllerTests.cs
+++ b/src/Project.Tests/DefaultControllerTests.cs
@@ -110,11 +110,12 @@ namespace Coscine.Api.Project.Tests
                 StartDate = DateTime.Now,
                 EndDate = DateTime.Now.AddYears(1),
                 Keywords = "Test1;Test2",
-                
+
                 GrantId = "testid",
                 PrincipleInvestigators = "TestInvestigator",
 
-                VisibilityId = Visibility.Id
+                VisibilityId = Visibility.Id,
+                Slug = Guid.NewGuid().ToString()
             };
 
             projectModel.Insert(project);
@@ -149,7 +150,8 @@ namespace Coscine.Api.Project.Tests
                 GrantId = "testid",
                 PrincipleInvestigators = "TestInvestigator",
 
-                VisibilityId = Visibility.Id
+                VisibilityId = Visibility.Id,
+                Slug = Guid.NewGuid().ToString()
             };
             projectModel.Insert(project2);
             Projects.Add(projectModel.GetById(project2.Id));
diff --git a/src/Project.Tests/Project.Tests.csproj b/src/Project.Tests/Project.Tests.csproj
index 7ac7336f3eea321333f85b8d88e74396ca9693d9..383689b10faa9fa52e821c4e9399daae2bc8afb0 100644
--- a/src/Project.Tests/Project.Tests.csproj
+++ b/src/Project.Tests/Project.Tests.csproj
@@ -56,8 +56,8 @@
     <Reference Include="Consul, Version=0.7.2.6, Culture=neutral, PublicKeyToken=20a6ad9a81df1d95, processorArchitecture=MSIL">
       <HintPath>..\packages\Consul.0.7.2.6\lib\net45\Consul.dll</HintPath>
     </Reference>
-    <Reference Include="Coscine.Action, Version=1.12.0.0, Culture=neutral, processorArchitecture=AMD64">
-      <HintPath>..\packages\Coscine.Action.1.12.0\lib\net461\Coscine.Action.dll</HintPath>
+    <Reference Include="Coscine.Action, Version=1.13.0.0, Culture=neutral, processorArchitecture=AMD64">
+      <HintPath>..\packages\Coscine.Action.1.13.0-topic-804-nicepr0002\lib\net461\Coscine.Action.dll</HintPath>
     </Reference>
     <Reference Include="Coscine.ApiCommons, Version=1.7.2.0, Culture=neutral, PublicKeyToken=af4c1345df96546b, processorArchitecture=MSIL">
       <HintPath>..\packages\Coscine.ApiCommons.1.7.2\lib\net461\Coscine.ApiCommons.dll</HintPath>
@@ -65,8 +65,8 @@
     <Reference Include="Coscine.Configuration, Version=1.5.0.0, Culture=neutral, PublicKeyToken=ce3d7a32d7dc1e5a, processorArchitecture=MSIL">
       <HintPath>..\packages\Coscine.Configuration.1.5.0\lib\net461\Coscine.Configuration.dll</HintPath>
     </Reference>
-    <Reference Include="Coscine.Database, Version=1.19.0.0, Culture=neutral, PublicKeyToken=767d77427707b70a, processorArchitecture=MSIL">
-      <HintPath>..\packages\Coscine.Database.1.19.0\lib\net461\Coscine.Database.dll</HintPath>
+    <Reference Include="Coscine.Database, Version=1.20.1.0, Culture=neutral, PublicKeyToken=767d77427707b70a, processorArchitecture=MSIL">
+      <HintPath>..\packages\Coscine.Database.1.20.1-topic-804-nicepr0005\lib\net461\Coscine.Database.dll</HintPath>
     </Reference>
     <Reference Include="Coscine.Logging, Version=1.2.0.0, Culture=neutral, PublicKeyToken=e1ed402bc3f6525e, processorArchitecture=MSIL">
       <HintPath>..\packages\Coscine.Logging.1.2.0\lib\net461\Coscine.Logging.dll</HintPath>
diff --git a/src/Project.Tests/ProjectControllerTests.cs b/src/Project.Tests/ProjectControllerTests.cs
index a2c184172e9109496dc4a546b4b4e50c00c07541..315c9a9763fdfb65d0bfd5766e2e1bc4c154a82b 100644
--- a/src/Project.Tests/ProjectControllerTests.cs
+++ b/src/Project.Tests/ProjectControllerTests.cs
@@ -115,7 +115,7 @@ namespace Coscine.Api.Project.Tests
             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));
+                                                                new VisibilityObject(Visibility.Id, Visibility.DisplayName), Guid.NewGuid().ToString());
 
             var stream = ObjectFactory<ProjectObject>.SerializeToStream(newProjectObject);
 
@@ -150,7 +150,7 @@ namespace Coscine.Api.Project.Tests
             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));
+                                                                new VisibilityObject(Visibility.Id, Visibility.DisplayName), Guid.NewGuid().ToString());
 
             var stream = ObjectFactory<ProjectObject>.SerializeToStream(newProjectObject);
 
@@ -188,7 +188,7 @@ namespace Coscine.Api.Project.Tests
             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));
+                                                                new VisibilityObject(Visibility.Id, Visibility.DisplayName), Guid.NewGuid().ToString());
 
             var stream = ObjectFactory<ProjectObject>.SerializeToStream(newProjectObject);
 
@@ -203,7 +203,7 @@ namespace Coscine.Api.Project.Tests
             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),
+                                                                new VisibilityObject(Visibility.Id, Visibility.DisplayName), Guid.NewGuid().ToString(),
                                                                 createdProjectObject.Id);
 
             stream = ObjectFactory<ProjectObject>.SerializeToStream(newProjectObject);
@@ -235,7 +235,7 @@ namespace Coscine.Api.Project.Tests
             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));
+                                                                    new VisibilityObject(Visibility.Id, Visibility.DisplayName), Guid.NewGuid().ToString());
 
             var stream = ObjectFactory<ProjectObject>.SerializeToStream(newProjectObject);
             FakeControllerContext(Users[0], stream);
@@ -247,7 +247,7 @@ namespace Coscine.Api.Project.Tests
             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), 
+                                                                        new VisibilityObject(Visibility.Id, Visibility.DisplayName), Guid.NewGuid().ToString(), 
                                                                         createdProjectObject.Id);
 
             var subStream = ObjectFactory<ProjectObject>.SerializeToStream(newSubProjectObject);
diff --git a/src/Project.Tests/app.config b/src/Project.Tests/app.config
index 03ffed0117a4c675d31fa2f8bb7e85769c8c4a45..b5b206178d66ae172d8c3cb0ce57f8da4da3d16b 100644
--- a/src/Project.Tests/app.config
+++ b/src/Project.Tests/app.config
@@ -88,7 +88,7 @@
       </dependentAssembly>
       <dependentAssembly>
         <assemblyIdentity name="Coscine.Database" publicKeyToken="767d77427707b70a" culture="neutral" />
-        <bindingRedirect oldVersion="0.0.0.0-1.19.0.0" newVersion="1.19.0.0" />
+        <bindingRedirect oldVersion="0.0.0.0-1.20.1.0" newVersion="1.20.1.0" />
       </dependentAssembly>
       <dependentAssembly>
         <assemblyIdentity name="System.IdentityModel.Tokens.Jwt" publicKeyToken="31bf3856ad364e35" culture="neutral" />
diff --git a/src/Project.Tests/packages.config b/src/Project.Tests/packages.config
index b96350c2fff8f6eeffd9ef9f29ac0eaa0efe37f0..fca23e5df83530e4a140c612e0764bc264d3d395 100644
--- a/src/Project.Tests/packages.config
+++ b/src/Project.Tests/packages.config
@@ -4,10 +4,10 @@
   <package id="AutoMapper.Extensions.Microsoft.DependencyInjection" version="6.0.0" targetFramework="net472" />
   <package id="Castle.Core" version="4.4.0" targetFramework="net472" />
   <package id="Consul" version="0.7.2.6" targetFramework="net472" />
-  <package id="Coscine.Action" version="1.12.0" targetFramework="net472" />
+  <package id="Coscine.Action" version="1.13.0-topic-804-nicepr0002" targetFramework="net472" />
   <package id="Coscine.ApiCommons" version="1.7.2" targetFramework="net472" />
   <package id="Coscine.Configuration" version="1.5.0" targetFramework="net472" />
-  <package id="Coscine.Database" version="1.19.0" targetFramework="net472" />
+  <package id="Coscine.Database" version="1.20.1-topic-804-nicepr0005" targetFramework="net472" />
   <package id="Coscine.Logging" version="1.2.0" targetFramework="net472" />
   <package id="Coscine.ProxyApi" version="1.2.1" targetFramework="net472" />
   <package id="EntityFramework" version="6.2.0" targetFramework="net472" />
diff --git a/src/Project/App.config b/src/Project/App.config
index 1a867cd7b80b3267ec2672ef653aeeebe28f7a87..77ca711e6433877b39f590f51f0099dafcae76d9 100644
--- a/src/Project/App.config
+++ b/src/Project/App.config
@@ -91,7 +91,7 @@
       </dependentAssembly>
       <dependentAssembly>
         <assemblyIdentity name="Coscine.Database" publicKeyToken="767d77427707b70a" culture="neutral" />
-        <bindingRedirect oldVersion="0.0.0.0-1.19.0.0" newVersion="1.19.0.0" />
+        <bindingRedirect oldVersion="0.0.0.0-1.20.1.0" newVersion="1.20.1.0" />
       </dependentAssembly>
       <dependentAssembly>
         <assemblyIdentity name="System.IdentityModel.Tokens.Jwt" publicKeyToken="31bf3856ad364e35" culture="neutral" />
diff --git a/src/Project/Controllers/ProjectController.cs b/src/Project/Controllers/ProjectController.cs
index 81817b0c41fff59e06f63139c7b992c4f2b45335..10a68ab8b36e3b3efd3cfdcd6a5dde47d0f68322 100644
--- a/src/Project/Controllers/ProjectController.cs
+++ b/src/Project/Controllers/ProjectController.cs
@@ -15,6 +15,7 @@ using Microsoft.Extensions.Logging;
 using Newtonsoft.Json.Linq;
 using Coscine.Database.DataModel;
 using System.Collections.Generic;
+using System.Text.RegularExpressions;
 
 namespace Coscine.Api.Project.Controllers
 {
diff --git a/src/Project/Controllers/SearchController.cs b/src/Project/Controllers/SearchController.cs
index ea05a6bd5bab97046c1e596e492fc693909a7d2b..c2f1d5f7c7bd8c0ca8fe9e23f4312d714e9326c3 100644
--- a/src/Project/Controllers/SearchController.cs
+++ b/src/Project/Controllers/SearchController.cs
@@ -171,7 +171,7 @@ namespace Coscine.Api.Project.Controllers
                          jd.DisplayNameDe.Contains(searchQuery) ||
                          jd.DisplayNameEn.Contains(searchQuery))
 
-                     select new { p.Id, p.DisplayName }).OrderBy(element => element.DisplayName).Distinct();
+                     select new { p.Id, p.DisplayName, p.Slug }).OrderBy(element => element.DisplayName).Distinct();
                 return JToken.Parse(JsonConvert.SerializeObject(results));
             });
         }
@@ -215,7 +215,7 @@ namespace Coscine.Api.Project.Controllers
                                    jd.DisplayNameDe.Contains(searchQuery) ||
                                    jd.DisplayNameEn.Contains(searchQuery))
 
-                               select new { r.Id, r.DisplayName, jpr.ProjectId }).OrderBy(element => element.DisplayName).Distinct();
+                               select new { r.Id, r.DisplayName, jpr.ProjectId, jp.Slug }).OrderBy(element => element.DisplayName).Distinct();
 
                 return JToken.Parse(JsonConvert.SerializeObject(results));
 
diff --git a/src/Project/Project.csproj b/src/Project/Project.csproj
index 694184b000d3df97cec072f9c31eca5e6b60f05b..4b1b84f9683e6a7c9c7157b31023a2223627b80b 100644
--- a/src/Project/Project.csproj
+++ b/src/Project/Project.csproj
@@ -49,8 +49,8 @@
     <Reference Include="Consul, Version=0.7.2.6, Culture=neutral, PublicKeyToken=20a6ad9a81df1d95, processorArchitecture=MSIL">
       <HintPath>..\packages\Consul.0.7.2.6\lib\net45\Consul.dll</HintPath>
     </Reference>
-    <Reference Include="Coscine.Action, Version=1.12.0.0, Culture=neutral, processorArchitecture=AMD64">
-      <HintPath>..\packages\Coscine.Action.1.12.0\lib\net461\Coscine.Action.dll</HintPath>
+    <Reference Include="Coscine.Action, Version=1.13.0.0, Culture=neutral, processorArchitecture=AMD64">
+      <HintPath>..\packages\Coscine.Action.1.13.0-topic-804-nicepr0002\lib\net461\Coscine.Action.dll</HintPath>
     </Reference>
     <Reference Include="Coscine.ApiCommons, Version=1.7.2.0, Culture=neutral, PublicKeyToken=af4c1345df96546b, processorArchitecture=MSIL">
       <HintPath>..\packages\Coscine.ApiCommons.1.7.2\lib\net461\Coscine.ApiCommons.dll</HintPath>
@@ -58,8 +58,8 @@
     <Reference Include="Coscine.Configuration, Version=1.5.0.0, Culture=neutral, PublicKeyToken=ce3d7a32d7dc1e5a, processorArchitecture=MSIL">
       <HintPath>..\packages\Coscine.Configuration.1.5.0\lib\net461\Coscine.Configuration.dll</HintPath>
     </Reference>
-    <Reference Include="Coscine.Database, Version=1.19.0.0, Culture=neutral, PublicKeyToken=767d77427707b70a, processorArchitecture=MSIL">
-      <HintPath>..\packages\Coscine.Database.1.19.0\lib\net461\Coscine.Database.dll</HintPath>
+    <Reference Include="Coscine.Database, Version=1.20.1.0, Culture=neutral, PublicKeyToken=767d77427707b70a, processorArchitecture=MSIL">
+      <HintPath>..\packages\Coscine.Database.1.20.1-topic-804-nicepr0005\lib\net461\Coscine.Database.dll</HintPath>
     </Reference>
     <Reference Include="Coscine.Logging, Version=1.2.0.0, Culture=neutral, PublicKeyToken=e1ed402bc3f6525e, processorArchitecture=MSIL">
       <HintPath>..\packages\Coscine.Logging.1.2.0\lib\net461\Coscine.Logging.dll</HintPath>
diff --git a/src/Project/packages.config b/src/Project/packages.config
index dda4466a7db5781e40f914421aa5d8700ed9c1f8..06df34d837546e2c0966be24a0f88c0edf4d670f 100644
--- a/src/Project/packages.config
+++ b/src/Project/packages.config
@@ -4,10 +4,10 @@
   <package id="AutoMapper.Extensions.Microsoft.DependencyInjection" version="6.0.0" targetFramework="net472" />
   <package id="Castle.Core" version="4.4.0" targetFramework="net472" />
   <package id="Consul" version="0.7.2.6" targetFramework="net472" />
-  <package id="Coscine.Action" version="1.12.0" targetFramework="net472" />
+  <package id="Coscine.Action" version="1.13.0-topic-804-nicepr0002" targetFramework="net472" />
   <package id="Coscine.ApiCommons" version="1.7.2" targetFramework="net472" />
   <package id="Coscine.Configuration" version="1.5.0" targetFramework="net472" />
-  <package id="Coscine.Database" version="1.19.0" targetFramework="net472" />
+  <package id="Coscine.Database" version="1.20.1-topic-804-nicepr0005" targetFramework="net472" />
   <package id="Coscine.Logging" version="1.2.0" targetFramework="net472" />
   <package id="Coscine.ProxyApi" version="1.2.1" targetFramework="net472" />
   <package id="EntityFramework" version="6.2.0" targetFramework="net472" />