public async Task <IHttpActionResult> DeleteRoleAssignment(int projectId, [FromBody] OperationScope scope, string search = null) { SearchFieldValidator.Validate(search); if (scope == null) { throw new BadRequestException(ErrorMessages.InvalidDeleteRoleAssignmentsParameters, ErrorCodes.BadRequest); } if (scope.IsEmpty()) { return(Ok(DeleteResult.Empty)); } await _privilegesManager.DemandAny(Session.UserId, projectId, InstanceAdminPrivileges.AccessAllProjectsAdmin, ProjectAdminPrivileges.ManageGroupsAndRoles); var result = await _instanceRepository.DeleteRoleAssignmentsAsync(projectId, scope, search); return(Ok(new DeleteResult { TotalDeleted = result })); }