diff --git a/src/Project/Controllers/ProjectController.cs b/src/Project/Controllers/ProjectController.cs
index 507c321276db5cd32c5879c9cb4055004bb7062b..1ced64d962c424295c13e3c4c0606da48d50c12c 100644
--- a/src/Project/Controllers/ProjectController.cs
+++ b/src/Project/Controllers/ProjectController.cs
@@ -48,6 +48,14 @@ namespace Coscine.Api.Project.Controllers
             var project = _projectModel.GetById(Guid.Parse(id));
             if (_projectModel.HasAccess(user, project, UserRoles.Member, UserRoles.Owner))
             {
+                SubProjectModel subProjectModel = new SubProjectModel();
+                var subProjectRel = subProjectModel.GetAllWhere((subProject) => subProject.SubProjectId == project.Id);
+                
+                var parentProjectRelation = subProjectRel.FirstOrDefault();
+                if (parentProjectRelation != null && _projectModel.HasAccess(user, parentProjectRelation.ProjectId, UserRoles.Member, UserRoles.Owner))
+                {
+                    return Ok(_projectModel.CreateReturnObjectFromDatabaseObject(project, parentProjectRelation.ProjectId));
+                }
                 return Ok(_projectModel.CreateReturnObjectFromDatabaseObject(project));
             }
             else
diff --git a/src/Project/Models/ProjectModel.cs b/src/Project/Models/ProjectModel.cs
index 97c7431977fb9d9fb98b629134d8468fad84b670..8dff8dcbb178886e062ea9afa3cff773544dbf5e 100644
--- a/src/Project/Models/ProjectModel.cs
+++ b/src/Project/Models/ProjectModel.cs
@@ -102,6 +102,11 @@ namespace Coscine.Api.Project.Models
             return projectRole;
         }
 
+        public bool HasAccess(User user, Guid projectId, params string[] allowedAccess)
+        {
+            return HasAccess(user, GetById(projectId), allowedAccess);
+        }
+
         public bool HasAccess(User user, Database.Model.Project project, params string[] allowedAccess)
         {
             ProjectRoleModel projectRoleModel = new ProjectRoleModel();