def getDetail(project_id):
        # Load project from internal database
        project = models.Project.query.filter_by(id=project_id).first()

        # Check if project was found
        if not project:
            validation = ValidationResult(dict())
            validation.addError("Project not in internal database")

            return validation

        # Init result cloud api
        resultCloud = ResultCloud(config.RESULT_CLOUD_API)
        
        # Try to load project
        try:
            response = resultCloud.get_project(project.ext_id)
        except:
            # Prepare validation and return result
            validation = ValidationResult(models.serialize(project))
            return validation

        # Init result
        result = models.serialize(project)

        # If there was a response, get submissions
        if response:
            result["submissions"] = resultCloud.last_response['Result']['Submissions']

        # Prepare validation and return result
        validation = ValidationResult(result)
        return validation