public async Task <OperationResultResponse <bool> > ExecuteAsync(Guid workspaceId, JsonPatchDocument <EditWorkspaceRequest> request)
        {
            DbWorkspace dbWorkspace = await _repository.GetAsync(workspaceId);

            Guid editorId = _httpContextAccessor.HttpContext.GetUserId();

            if (dbWorkspace.CreatedBy != editorId &&
                (await _userRepository.GetAdminsAsync(workspaceId)).FirstOrDefault(wa => wa.UserId == editorId) == null &&
                !await _accessValidator.IsAdminAsync())
            {
                return(_responseCreator.CreateFailureResponse <bool>(HttpStatusCode.Forbidden));
            }

            if (!_validator.ValidateCustom(request, out List <string> errors))
            {
                return(_responseCreator.CreateFailureResponse <bool>(HttpStatusCode.BadRequest, errors));
            }

            OperationResultResponse <bool> response = new();

            response.Body = await _repository.EditAsync(dbWorkspace, await _mapper.MapAsync(request));

            response.Status = OperationResultStatusType.FullSuccess;

            if (!response.Body)
            {
                response = _responseCreator.CreateFailureResponse <bool>(HttpStatusCode.BadRequest);
            }

            return(response);
        }